CPU 명령어에 최적화된 deb 패키지를 빌드하려면 CPU 명령어를 deb 패키지의 종속성으로 사용하는 방법은 무엇입니까? 패키지는 대량 배포에 적합하지 않지만, 사람들이 내 빌드에 비해 CPU가 너무 오래되었기 때문에 충돌로 인해 혼란스러워지는 것을 원하지 않습니다.
답변1
dpkg
형식 자체가 원하는 대로 작동하는지 잘 모르겠습니다 .
하지만 당신은할 수 있는사용사전 설치된스크립트. 여기에서 CPU 수준이 올바른지 테스트하고 CPU 수준이 충분하지 않으면 중단할 수 있습니다. 이렇게 하면 패키지가 설치되지 않습니다.
이 스크립트는 preinst
pkg 섹션의 일부 입니다 control
.https://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html
이들은 때때로 불린다.사전 설치된 온전성 스크립트. 0이 아닌 종료 코드로 끝나면 패키지 설치가 실패합니다.
스크립트 preinst
는 다음과 같이 간단할 수 있습니다.
#!/bin/sh
set -e
flags=`grep ^flags /proc/cpuinfo | head -1`
if [ -z "`echo $flags | grep sse4`" ]
then
echo Can only run on machines with SSE4 instructions. Install failed
exit 1
fi
exit 0