Я пытаюсь создать приложение, использующее библиотеку LibUSB.CMake не может найти внешнюю библиотеку
В предыдущем вопросе я спросил here Мне сказали использовать find_path
и find_library
, чтобы сделать поиск в тексте CMake для заголовков и двоичных файлов. Однако даже после того, как вручную отрываясь места установки библиотечные с dnf
и указанием их PATHS
или HINTS
я всегда еще получаю ошибку:
/usr/bin/ld: cannot find -lUSB
collect2: error: ld returned 1 exit status
Ниже Релевент CMakeLists.txt, мой импорт линия в main.cpp является #include <libusb-1.0/libusb.h>
add_executable(project main.cpp)
find_path(LIBUSB_INCLUDE_DIR
NAMES libusb.h
PATHS "/usr/include/"
PATH_SUFFIXES "include" "libusb")
find_library(LIBUSB_LIBRARY
NAMES USB
HINTS "/usr/lib/" "/usr/lib64/" "/usr/include/"
PATH_SUFFIXES "lib" "lib32" "lib64")
target_include_directories(project PRIVATE "/usr/lib/" "/usr/lib64/")
target_link_libraries(project USB)
Очевидно, что я делаю что-то неправильно в этом ляп хаков, но может кто-нибудь сказать мне что?
Разве вы не используете * '$ {LIBUSB_LIBRARY}' где-нибудь? – Biffen
Если вы не поняли моего ответа, пожалуйста, помогите улучшить его комментариями к ответу. – usr1234567
@ usr1234567 Я понял ваш ответ, но подумал, что теперь задаю другой вопрос. –