我回到了c ++,但我正在使用macosx maverick进行项目我必须使用外部库,这是 https://github.com/augcampos/asterisk-cpp
所以,我已经编译了库并得到了我的.dylib
然后我编译了这样一个主要的测试:
g++ -Wall Test.cpp -o teste -L/usr/local/lib/ -I/usr/local/include -lasteriskcpp -lpthread -lboost_system -std=c++0x
但是当我运行二进制文件
时出现了这个错误dyld: Symbol not found: __ZTVN11asteriskcpp10ParkActionE
Referenced from: /usr/local/lib/libasteriskcpp.0.dylib
Expected in: flat namespace
in /usr/local/lib/libasteriskcpp.0.dylib
Trace/BPT trap: 5
我在谷歌搜索3天他们说它可能是代码中的问题(我怀疑它)或者它在编译期间主要是错误链接。 我不知道它是如何无法正确链接的,因为它在lib的编译时间和我的小主要测试中是正常的:/
感谢您的帮助。 祝你有愉快的一天
答案 0 :(得分:0)
您是否使用相同的标志编译asterisk
库?例如。你用std=c++0x
编译吗?