Чтобы связать исполняемый файл с библиотекой, которая находится в стандартном месте, можно сделать следующее в файле CmakeLists.txt:
create_executable(generate_mesh generate_mesh.cpp)
target_link_libraries(generate_mesh OpenMeshCore)
Это сработало бы, если бы библиотека, с которой связаны ссылки, была помещена в
/usr/local/lib/libOpenMeshCore.dylib
Однако в этом случае библиотека находится под
/usr/local/lib/OpenMesh/libOpenMeshCore.dylib
Как я могу указать, что target_link_libraries действительно должен ссылаться на библиотеку, размещенную в sibdirectory? Интересно, что для target_link_libraries есть несколько полезных опций, которые указывают, что библиотека находится в подкаталоге в стандартном месте, например
target_link_libraries(generate_mesh OpenMesh/OpenMeshCore)
Если это невозможно, есть ли способ использовать find_library для рекурсивного поиска /usr/local/lib
, включая его подкаталоги, для указанного файла библиотеки?