Cmake 如何修复:/usr/bin/ld:找不到-ldjiosdk core
我在Raspberry Pi上下载并安装了DJI-OSDK,并能够在DJI Assistant模拟上运行这些示例。然而,当我尝试制作和构建自己的项目(使用CMake)时,我遇到了以下问题:Cmake 如何修复:/usr/bin/ld:找不到-ldjiosdk core,cmake,linker-errors,raspbian,dji-sdk,Cmake,Linker Errors,Raspbian,Dji Sdk,我在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)
/usr/bin/ld: cannot find -ldjiosdk-core
CMake文件包含以下行:
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} djiosdk-core)
我的问题是:
$dpkg-L djiosdk core
,输出:
dpkg-query: package 'djiosdk-core' is not installed
Use dpkg --contents (= dpkg-deb --contents) to list archive files contents.
可能的原因:
$find-类型f-名称“*djiosdk core*”
查找包名称:
$apt缓存搜索djiosdk
然后列出所有包的文件:
$dpkg查询-L[包裹名称]
如果您没有此开发人员库,请从源代码安装此SDK(请参见其wiki)错误:
/usr/bin/ld: cannot find -ldjiosdk-core
是一个链接器错误,表示链接器确实知道在哪里可以找到djiosdk核心
库。如果此库不在典型的系统路径中,则链接器将不知道如何找到它。因此,必须在CMake命令中提供库的完整路径:
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} PUBLIC /your/path/to/libs/libdjiosdk-core.so)