Я разместил этот же вопрос на аскубунту. Но люди отказались отвечать и попросили меня задать свой вопрос здесь.
Я использую Ubuntu 16.04 и написал две части кода. Один в C ++, а другой в Python. Ниже вы найдете все, что связано с моим C ++ кодом.
Я хотел бы знать, как я могу упаковать каждый код в .deb, чтобы у другого человека не было проблем, связанных с динамическим связыванием, и ему не приходилось устанавливать openCV на его компьютере.
До сих пор я пытался просто создать папку, которая имеет следующую структуру:
~/Desktop/myTestDEB$ tree
.
├── DEBIAN
│ └── control
└── usr
└── bin
├── main
└── part1.png
3 directories, 3 files
Где main — исполняемый файл, который я уже скомпилировал и впоследствии скопировал в эту папку.
Который я тогда упаковал эту папку в пакет .deb, используя: sudo dpkg-deb --build myTestDEB/
Но когда другой человек устанавливает мой .deb на свой ноутбук, он получает эту ошибку:
main: error while loading shared libraries: libopencv_highgui.so.3.3: cannot open shared object file: No such file or directory
Что является ошибкой динамического связывания. Я бы подумал, что упаковка всего в файл .deb решит все, что связано с динамическими ссылками.
Что я должен сделать, чтобы решить эту проблему? Что если я хочу сделать то же самое для кода Python?
Задача ещё не решена.
Других решений пока нет …