cmakelist 库依赖库_将第三方库添加到CMakeList

本文档描述了在Ubuntu 14.04上使用CMakeLists.txt构建Arduino串行连接项目时遇到的库依赖问题。在尝试构建示例程序时,遇到undefined reference错误,提示未找到'serial::list_ports()'。作者尝试了手动链接解决方案,但寻求无需使用Code::Blocks的CMake方法来正确链接和解决依赖。
摘要由CSDN通过智能技术生成

我正在尝试在arduino和运行ubuntu 14.04的计算机之间 Build 串行连接 .

有几个依赖项,我希望避免,因为我对此非常新,并希望尽可能保持基本 . 显然我不是唯一一个,项目业主已经回复了这个https://github.com/wjwwood/serial/issues/52

我在serial / examples / serial_example.cc中提供的示例中使用了CMakeLists.txt(由于限制而无法发布直接链接,但它是github)

这些是我采取的步骤

将CMakeList.txt从上面放入/ serial / library,替换原来的

将serial_example.cc放入/ serial / src /目录并将其重命名为"my_program.cpp"

打开gnome-terminal并导航到/ serial /文件夹

在终端执行"mkdir build"并输入该目录

在终端执行"cmake ../"

在终端执行“make”

[66%]内置目标串口链接CXX可执行文件my_program CMakeFiles / my_program.dir / src / my_program.cpp.o:函数 enumerate_ports()': my_program.cpp:(.text+0x32): undefined reference to serial :: list_ports()'collect2:错误:ld返回1退出状态make [2]: *** [my_program] Error 1 make1: *** [CMakeFiles / my_program.dir / all]错误2 make:*** [all]错误2

我试过用sudo运行make,但没有成功

这是“cmake ../”之后构建目录的内容

total 188

-rw-rw-r-- 1 dundua dundua 12080 maj 24 13:49 CMakeCache.txt

drwxrwxr-x 7 dundua dundua 4096 maj 24 13:51 CMakeFiles

-rw-rw-r-- 1 dundua dundua 1630 maj 24 13:49 cmake_install.cmake

-rw-rw-r-- 1 dundua dundua 162888 maj 24 13:49 libserial.a

-rw-rw-r-- 1 dundua dundua 6837 maj 24 13:49 Makefile

经过一些搜索,似乎我遇到了github, as issue #78,中描述的类似问题,并使用Code :: Blocks手动链接到另一个目录中的已编译的libserial.so似乎有效,但我想知道如何完成这没有Code :: Blocks,因为我需要将我的代码与另一个cmake项目合并

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值