Score:1

ติดตั้งแพ็คเกจเฉพาะรุ่นผ่านเมตาแพ็คเกจ

ธง in

ฉันมีแพ็คเกจเมตาสำหรับ เทนเซอร์ ซึ่งเป็นเพียงรายการของการขึ้นต่อกันของไลบรารีเวอร์ชันเฉพาะ ที่นี่คือ ควบคุม ไฟล์ของมัน:

แพคเกจ: tensorrt
ที่มา: tensorrt (7.1.3-1+cuda10.2)
เวอร์ชัน: 7.1.3.4-1+cuda10.2
สถาปัตยกรรม: amd64
ผู้ดูแล: cudatools <[email protected]>
ขนาดติดตั้ง: 11
ขึ้นอยู่กับ: libnvinfer7 (= 7.1.3-1+cuda10.2), libnvinfer-plugin7 (= 7.1.3-1+cuda10.2), libnvparsers7 (= 7.1.3-1+cuda10.2), libnvonnxparsers7 (= 7.1 .3-1+cuda10.2), libnvinfer-bin (= 7.1.3-1+cud
a10.2), libnvinfer-dev (= 7.1.3-1+cuda10.2), libnvinfer-plugin-dev (= 7.1.3-1+cuda10.2), libnvparsers-dev (= 7.1.3-1+ cuda10.2), libnvonnxparsers-dev (= 7.1.3-1+cuda10.2), ตัวอย่าง libnvinfer
 (= 7.1.3-1+cuda10.2), libnvinfer-doc (= 7.1.3-1+cuda10.2)
ส่วน: ลิขสิทธิ์/devel
ลำดับความสำคัญ: ไม่บังคับ
คำอธิบาย: แพ็คเกจ Meta ของ TensorRT
 แพ็คเกจเมตาของ TensorRT

ตอนนี้เมื่อฉันต้องการติดตั้ง เทนเซอร์ มันบอกว่า:

แพ็คเกจต่อไปนี้มีการพึ่งพาที่ไม่ตรงกัน:
 tensorrt : ขึ้นอยู่กับ: libnvinfer-dev (= 7.1.3-1+cuda10.2) แต่จะต้องติดตั้ง 8.0.3-1+cuda11.3
            ขึ้นอยู่กับ: libnvinfer-plugin-dev (= 7.1.3-1+cuda10.2) แต่จะต้องติดตั้ง 8.0.3-1+cuda11.3
            ขึ้นอยู่กับ: libnvparsers-dev (= 7.1.3-1+cuda10.2) แต่จะต้องติดตั้ง 8.0.3-1+cuda11.3
            ขึ้นอยู่กับ: libnvonnxparsers-dev (= 7.1.3-1+cuda10.2) แต่จะต้องติดตั้ง 8.0.3-1+cuda11.3
            ขึ้นอยู่กับ: libnvinfer-samples (= 7.1.3-1+cuda10.2) แต่จะไม่ถูกติดตั้ง
E: ไม่สามารถแก้ไขปัญหาได้ คุณมีพัสดุที่เสียหาย

ถ้าเราใช้ lib เฉพาะ ตัวอย่างเช่น libnvinfer-dev, ตาม นโยบาย apt-cacheฉันมีหลายเวอร์ชันให้เลือก:

(ubuntu-xenial-amd64)svc_moma_usr@PL1LXD-529389:/$ นโยบาย apt-cache libnvinfer-dev
libnvinfer-dev:
  ติดตั้งแล้ว: 7.1.3-1+cuda10.2
  ผู้สมัคร: 8.0.3-1+cuda11.3
  ตารางเวอร์ชัน:
     8.0.3-1+คูดา11.3 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
     8.0.3-1+คูดา10.2 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
     8.0.1-1+คูดา11.3 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
     8.0.1-1+คูดา10.2 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
     8.0.0-1+คูดา11.3 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
     8.0.0-1+cuda11.0 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
     8.0.0-1+คูดา10.2 500
        500 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 แพ็คเกจ
 *** 7.1.3-1+cuda10.2 500
        500 https://repository.ttgroup.com/repository/rozbad-xenial xenial/main amd64 แพ็คเกจ
        100 /var/lib/dpkg/สถานะ
     7.0.0-1+cuda10.2 500
        500 ไฟล์:/var/nv-tensorrt-repo-cuda10.2-trt7.0.0.11-ga-20191216 แพ็คเกจ
        500 https://repository.ttgroup.com/repository/rozbad-xenial xenial/main amd64 แพ็คเกจ

อย่างที่คุณเห็น ฉันจัดการเพื่อติดตั้งเวอร์ชันที่ฉันต้องการอย่างชัดเจน ฉลาดติดตั้ง libnvinfer-dev=7.1.3-1+cuda-10.2แม้ว่าเวอร์ชันจะเก่ากว่า แต่ไม่สามารถติดตั้งเวอร์ชันนี้ได้ เทนเซอร์ meta-package แม้ว่าเวอร์ชันเก่าจะระบุไว้อย่างชัดเจนเช่นกัน ฉันจะทำให้ APT ติดตั้งแพ็คเกจนี้ได้อย่างไร

ฉันรู้ว่ามันเป็นไปได้ที่จะเปลี่ยนลำดับความสำคัญใน /etc/apt/preferences.dแต่สิ่งนี้ทำในระดับระบบในขณะที่ฉันต้องการบอก APT ให้ติดตั้งแพ็คเกจเหล่านี้ผ่าน ควบคุม ไฟล์.

muru avatar
us flag
คุณทำไม่ได้ ไม่ใช่แค่ใช้การตั้งค่าการพึ่งพาของแพ็คเกจเมตาของคุณ
Piotr G avatar
in flag
แล้ววิธีแก้ปัญหาล่ะ? ตัวอย่างเช่น ฉันรู้ว่าฉันสามารถติดตั้งการพึ่งพาได้ด้วยตนเองด้วยเวอร์ชันเฉพาะ เมื่ออยู่ในไฟล์แพ็คเกจเดเบียน (การควบคุม กฎ ฯลฯ ) ฉันสามารถเพิ่มคำสั่ง bash ที่ฉันติดตั้งแพ็คเกจได้ ไม่ใช่ด้วยกลไกการแก้ปัญหาการพึ่งพา
muru avatar
us flag
วิธีนี้ใช้ไม่ได้เช่นกัน เนื่องจากระบบการจัดการแพ็คเกจถูกล็อคในขณะที่การติดตั้งกำลังดำเนินอยู่ ดังนั้นคำสั่งการติดตั้งในสคริปต์ผู้ดูแลจะล้มเหลว คุณสามารถจัดเตรียมสคริปต์เพื่อติดตั้งแพ็คเกจของคุณซึ่งสามารถทำสิ่งต่าง ๆ เช่น `apt-get install meta-pkg=x.y dep1=a.b dep2=c.d` ฯลฯ หรือใส่การอ้างอิงทั้งหมดใน repo ของคุณและเพิ่ม repo นั้นด้วยค่าสูง ลำดับความสำคัญของพิน
Piotr G avatar
in flag
ขอบคุณ. แต่ฉันสามารถเรียกใช้คำสั่งทุบตีที่มี `apt-get ...` ก่อนการติดตั้ง ฉันไม่ได้พูดถึงเรื่องนี้ในตอนแรก แต่ฉันต้องติดตั้ง `tensorrt` เพื่อสร้างแพ็คเกจอื่นโดยใช้ `sbuild` และการติดตั้ง `tensorrt` ถูกเรียกใช้จาก `debian/control` บางทีฉันสามารถรันคำสั่ง `apt-get` เหล่านี้ก่อนที่การติดตั้ง tensorrt จะถูกทริกเกอร์ แต่ฉันค่อนข้างไม่แน่ใจเกี่ยวกับลำดับขั้นตอนของ `sbuild` ที่ถูกเรียกใช้ ความคิดของฉันคือการแทนที่ sth ใน `เดเบียน/กฎ'

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา