【发布时间】:2011-02-09 12:14:54
【问题描述】:
我有一个普通的抽象类,它有几个纯虚方法。类本身是共享库的一部分。共享库本身的编译是可以的。但是,当该库链接到另一个程序时,该程序具有从共享库中的抽象类派生的另一个类并定义纯虚拟方法,我收到以下链接器错误。
我是这样编译的..:
g++ -I../path/to/the/library main.cpp derived.cpp -L../path/to/the/library -lsomename -o shared
链接器错误是:
libsomename.so:对 `AbstractClass::method()' 的未定义引用
就像抽象类不能访问它的纯虚方法,但我不会尝试在库中的任何地方创建抽象类的任何实例。
可能是什么问题?
【问题讨论】:
标签: c++ shared-libraries abstract-class linker-errors pure-virtual