cmake - 如何修复:/usr/bin/ld: 找不到 -ldjiosdk-core
问题描述
我在我的 Raspberry Pi 上下载并安装了 DJI-OSDK,并能够在 DJI Assistant 模拟上运行示例。但是,当我尝试制作和构建自己的项目(使用 CMake)时,我遇到了问题:
/usr/bin/ld: cannot find -ldjiosdk-core
CMake 文件包含以下行:
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} djiosdk-core)
我的问题是:
- 如何链接 djiosdk-core 库?
- 如何在 OSDK 中创建自己的项目以便正确构建?
我正在使用带有 RPi 的 N3。
我也跑过:$ dpkg -L djiosdk-core
输出:
dpkg-query: package 'djiosdk-core' is not installed
Use dpkg --contents (= dpkg-deb --contents) to list archive files contents.
解决方案
错误:
/usr/bin/ld: cannot find -ldjiosdk-core
是一个链接器错误,它表明链接器确实知道在哪里可以找到djiosdk-core
库。如果此库不在您的典型系统路径中,则链接器将不知道如何找到它。因此,您必须在CMake 命令中提供库的完整路径:target_link_libraries()
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} PUBLIC /your/path/to/libs/libdjiosdk-core.so)
推荐阅读
- html - 如何更改 React App 移动版的元素位置?
- python - 如何使用python在谷歌表格中的行尾追加
- twilio - Twilio > Google Ads 转化跟踪
- python - 在python中从数组中设置值
- reactjs - Reactstrap 轮播不显示图像。,找不到模块
- django - Django sentry 仅记录到哨兵,而不是控制台
- python-3.x - Django 查询和三元运算符的代码清理
- typescript - 在 vscode 扩展中获取语法范围/标记
- sql - 如果之前在组中没有看到值,则聚合值 - SQL / ORACLE
- c# - 使用库 UWP 表单打印