gcc编译问题,困扰我很久了,哪个高手出来解决一下阿?

发布于 2022-09-28 16:13:14 字数 1267 浏览 15 评论 0

我自己写了个daemon.cpp的程序,通过#include "/opt/auth_sys/db/cdbc.cpp"(因程序中使用了cdbc.cpp中定义的函数),#include "/opt/auth_sys/db/SybaseDriver.h"方式引用了这两个头文件,用g++ daemon.cpp -o daemon语句编译是出现下面的错误,在我的程序daemon.cpp中没有使用SybaseDriver.cpp中定义的函数,但在cdbc.cpp中使用了SybaseDriver.cpp中定义的函数,这个问题困扰我很久了怎么解决阿?

/tmp/cceOCbTp.o(.text+0x8b0): In function `CConnManager::CreatePool(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, int)':
: undefined reference to `CSybaseDriver::CSybaseDriver()'
/tmp/cceOCbTp.o(.text+0xf91): In function `CConnManager::CreateConnection(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
: undefined reference to `CSybaseDriver::CSybaseDriver()'
collect2: ld returned 1 exit status
注:CConnManager::CreatePool在cdbc.cpp中定义,CConnManager::CreateConnection在SybaseDriver.cpp中定义。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

奶气 2022-10-05 16:13:14

建议楼主还是多看看g++还有Makefile方面的资料先。
其实在你的daemon.cpp中用不着饮用cdbc.cpp源码,只要其头文件就可以,
编译时使用:
g++ -o daemon daemon.cpp cdbc.cpp SybaseDriver.cpp

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文