darrellchengyu 发表于 2012-10-19 16:10

Linux 链接自己生成的动态库 失败

如题:请问
libdbmanager.so 是新生成的动态库,libmysqlpp.so.3.0.9是原有的动态库。

问题:
make时;错误如下:
/tmp/ccCgXDUP.o: In function `main':
/home/test/dbcommontest/test.cpp:13: undefined reference to `CDBConnectionManager::setConfig(char const*, char const*, char const*, char const*)'
/home/test/dbcommontest/test.cpp:14: undefined reference to `Db_showlog::Db_showlog()'
/home/test/dbcommontest/test.cpp:24: undefined reference to `mysqlpp::operator<<(std::basic_ostream<char, std::char_traits<char> >&, mysqlpp::DateTime const&)'
/home/test/dbcommontest/test.cpp:24: undefined reference to `mysqlpp::operator<<(std::basic_ostream<char, std::char_traits<char> >&, mysqlpp::DateTime const&)'
/home/test/dbcommontest/test.cpp:42: undefined reference to `Db_showlog::~Db_showlog()'
/home/test/dbcommontest/test.cpp:42: undefined reference to `Db_showlog::~Db_showlog()'
/tmp/ccCgXDUP.o: In function `DateTime':
/home/test/dbcommontest/../include/mysql++/datetime.h:103: undefined reference to `vtable for mysqlpp::DateTime'
/home/test/dbcommontest/../include/mysql++/datetime.h:103: undefined reference to `mysqlpp::DateTime::convert(char const*)'
/tmp/ccCgXDUP.o: In function `~DateTime':
/home/test/dbcommontest/../include/mysql++/datetime.h:49: undefined reference to `vtable for mysqlpp::DateTime'


各种指定路径都无效。

直接G++
g++ -g -o test test.cpp -I ../include/ -L ../libs/libmysqlpp.so.3.0.9 -L ../libs/libdbmanager.so
还是同样的错误。
就是新生成的动态库链接不上。

求助。
页: [1]
查看完整版本: Linux 链接自己生成的动态库 失败