ฉันรู้แพคเกจบางอย่างที่รองรับ "ถอนการติดตั้ง" แต่อีกมากมายที่รองรับทำการติดตั้ง DESTDIR = xxx "สำหรับการติดตั้งตามขั้นตอน
คุณสามารถใช้สิ่งนี้เพื่อสร้างแพ็คเกจที่คุณติดตั้งแทนการติดตั้งโดยตรงจากแหล่งที่มา ฉันไม่มีโชคกับ checkinstall แต่fpmทำงานได้ดีมาก
นอกจากนี้ยังสามารถช่วยให้คุณเอาแพคเกจก่อนหน้านี้ติดตั้งโดยใช้ให้ติดตั้ง คุณเพียงแค่บังคับให้ติดตั้งแพคเกจที่สร้างขึ้นของคุณเหนือการติดตั้งแพคเกจแล้วถอนการติดตั้ง
ตัวอย่างเช่นฉันใช้สิ่งนี้เมื่อเร็ว ๆ นี้เพื่อจัดการกับ protobuf-3.3.0 ใน RHEL7:
make install DESTDIR=dest
cd dest
fpm -f -s dir -t rpm -n protobuf -v 3.3.0 \
--vendor "You Not RedHat" \
--license "Google?" \
--description "protocol buffers" \
--rpm-dist el7 \
-m you@youraddress.com \
--url "http:/somewhere/where/you/get/the/package/oritssource" \
--rpm-autoreqprov \
usr
sudo rpm -i -f protobuf-3.3.0-1.el7.x86_64.rpm
sudo rpm -e protobuf-3.3.0
ต้องการ yum ถึง rpm ถ้าทำได้
บน Debian9:
make install DESTDIR=dest
cd dest
fpm -f -s dir -t deb -n protobuf -v 3.3.0 \
-C `pwd` \
--prefix / \
--vendor "You Not Debian" \
--license "$(grep Copyright ../../LICENSE)" \
--description "$(cat README.adoc)" \
--deb-upstream-changelog ../../CHANGES.txt \
--url "http:/somewhere/where/you/get/the/package/oritssource" \
usr/local/bin \
usr/local/lib \
usr/local/include
sudo apt install -f *.deb
sudo apt-get remove protobuf
ชอบฉลาดถึง dkg ที่คุณสามารถทำได้
ฉันโพสต์คำตอบนี้ไว้ในstackoverflow ด้วย