add_executable错误总结

很久没有写blog了,最近在kdevelop上开发程序的时候,需要在主函数的文件中引用别的文件的函数,添加了对该函数所在的头文件之后仍然出现该函数没有定义的错误。经历了一番波折之后,才发现是忘记了在cmakelist的add_executable中添加源文件。在kdevelop上开发代码已经有一段时间了,竟然还会忘记这么基本的内容!!

所以这里总结一下:

add_executable(可执行文件,src1,src2,src3...);

这里一定要把构成可执行文件的所有源文件都添加进去,否则就会犯错!!!

千里之行,始于足下!

在CMakeLists.txt文件中,出现了错误信息"Cannot specify link libraries for target 'FilterSamesetBasic' which is not built by this project"。根据引用提供的信息,这个错误通常是因为在目标"FilterSamesetBasic"不存在于该项目中,所以不能指定链接库。 如果您想链接自己路径下的OpenCV库,可以参考引用中提供的方法。在CMakeLists.txt中,可以使用add_library命令将源文件生成一个库,并使用target_link_libraries命令将该库链接到目标上。例如,可以使用以下命令将名为"libsugan"的库链接到目标上: ``` add_library(libsugan ${SRC_LISTS}) target_link_libraries(libsugan ${OpenCV_LIBS} ${PROJECT_SOURCE_DIR}/lib/libCommonUtilities.so ${PROJECT_SOURCE_DIR}/lib/libInuStreams.so) ``` 这样就将libsugan库链接到目标上,并且链接了OpenCV库、libCommonUtilities.so和libInuStreams.so等其他库。更多关于CMake的使用可以参考引用中的文章。 总结:在CMakeLists.txt中,可以使用target_link_libraries命令将库链接到目标上,并使用add_library命令生成库。引用提供了解决链接库错误的问题,而引用和引用提供了使用CMake链接自己路径下的库的方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [cmake 解决错误:Cannot specify link libraries for target](https://blog.csdn.net/WAN_EXE/article/details/70307692)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [【cmake】CMakeList添加库|添加头文件|添加路径|add_executableadd_library、target_link_libraries的...](https://blog.csdn.net/weixin_42319496/article/details/125424628)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值