2014-10-21 3 views
0

У меня есть пример библиотеки и две символические ссылки:CMake - target_link_libraries и настоящая библиотека имени

libname.so -> libname.so.3 
libname.so.3 -> libname.so.3.0 

Когда я использую эту команду:

target_link_libraries(app /home/theuser/libs/mylib/libname.so) 

программа работает, но когда я использую следующую команду : target_link_libraries(app /home/theuser/libs/mylib/libname.so.3.0)

Получаю информацию: error while loading shared libraries: libname.so.3: cannot open shared object file: No such file or directory во время выполнения программы (после cmake и make steps). Почему cmake не может получить lib напрямую (без символических ссылок)? Это возможно?

ответ

0

Мы используем этот синтаксис ежедневно без символических ссылок, и это определенно работает. Возможно ли, что ему нужно «обычное lib-like» имя файла в target_link_library? Я бы попытался включить файлы .so только в свою цепочку ссылок, чтобы увидеть, работает ли это в первую очередь.

Смежные вопросы