我在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)
我的问题是:
我正在使用带有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.
可能的原因:
尝试搜索:
$ find . -type f -name "*djiosdk-core*"
查找包名称:
$ apt-cache search djiosdk
然后列出所有软件包的文件:
$ dpkg-query -L [package_name]
如果没有此开发人员库,则从源代码安装此SDK(请参见其Wiki)
错误:
/usr/bin/ld: cannot find -ldjiosdk-core
是链接器错误,这表明链接器确实知道在何处可以找到djiosdk-core
库。如果此库在典型的系统路径中是not,则链接程序将不知道如何找到它。因此,您必须在target_link_libraries()
CMake命令中提供库的full路径:
target_link_libraries()