gpt4 book ai didi

c++ - 如何在 linux 上编译 libserial?

转载 作者:太空宇宙 更新时间:2023-11-04 10:49:56 30 4
gpt4 key购买 nike

<分区>

我的程序需要与串行设备通信。我正在 Ubuntu 14.04 LTS 上开发它。我找到了 libserial,并尝试使用它,但它无法编译。我下载编译安装了v0.6.0rc2。是的,它是一个 rc,但它在 sourceforge 上更受欢迎,而且稳定版本非常旧。如果你知道更好的库,请在评论中告诉我。

根据文档给出的以下代码无法编译:

#include <SerialStream.h>
//
using namespace LibSerial ;
main()
{
SerialStream my_serial_stream ;
//
// Open the serial port for communication.
//
my_serial_stream.Open( "/dev/ttyS0" ) ;

}

这是我得到的错误:

dalton@dalton-SVF14212SNW:~$ g++ test.cpp
/tmp/ccyWIbXN.o: In function `main':
test.cpp:(.text+0x17): undefined reference to `LibSerial::SerialStream::SerialStream()'
test.cpp:(.text+0x6d): undefined reference to `LibSerial::SerialStream::Open(std::string, std::_Ios_Openmode)'
test.cpp:(.text+0x9a): undefined reference to `LibSerial::SerialStream::~SerialStream()'
test.cpp:(.text+0xd6): undefined reference to `LibSerial::SerialStream::~SerialStream()'
collect2: error: ld returned 1 exit status

我已将相关行更改为 my_serial_stream.Open( "/dev/ttyS0", ios::out ) ; 并添加了命名空间 std。现在我得到这个错误:

dalton@dalton-SVF14212SNW:~$ g++ test.cpp
/tmp/ccUhSQVA.o: In function `main':
test.cpp:(.text+0x17): undefined reference to `LibSerial::SerialStream::SerialStream()'
test.cpp:(.text+0x5f): undefined reference to `LibSerial::SerialStream::Open(std::string, std::_Ios_Openmode)'
test.cpp:(.text+0x8c): undefined reference to `LibSerial::SerialStream::~SerialStream()'
test.cpp:(.text+0xc8): undefined reference to `LibSerial::SerialStream::~SerialStream()'
collect2: error: ld returned 1 exit status

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com