Когда я делаю фазу связи в компиляции C++ для создания исполняемого файла, мне часто нужно использовать флаг -l для связывания нескольких библиотек. Например,Как узнать зарегистрированное имя библиотеки в компиляции C++
-lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_videoio -lsigc-2.0 -lglibmm-2.4 -lglib-2.0 -lstdc++ -lncurses -lflycapture
Вопрос: Как узнать имена этих библиотек в первую очередь? Например, если я хочу использовать библиотеку opencv/highgui.h
, откуда я узнаю, что это имя opencv_highgui
вместо opencv-highgui
? Есть ли какие-либо команды, которые я могу использовать, чтобы выяснить, какие библиотеки были зарегистрированы в системе Linux? Благодаря!
Не зарегистрированы в любом случае. Они просто находятся в каталогах, определенных вашим пути к библиотеке. Вы можете просто перечислить файлы в этих местах. И вы знаете имена, потому что вы используете библиотеки, и документация говорит, какие из них вы используете. –
Вы спрашиваете, как узнать, какие библиотеки должны быть связаны? – DyZ
Отредактировал вопрос. Прошу прощения за путаницу. –