我正在使用code :: blocks创建一个C ++静态库,调用SDL library的函数。图书馆编译好了。我创建了另一个项目,它将使用我创建的库,所有构建选项都可以,我设置链接器使用SDL和其他所有,但是,当我尝试编译项目时,我得到了未定义的参考SDL功能。我通过在main函数的末尾调用SDL_Delay(1)
函数来解决这个问题。
当我在我正在编译的项目中至少调用其中一个时,链接器似乎只找到了SDL函数。是否存在更正确的解决方法?
例如:
#include "HW_Engine" // My static link library
void main(int argc, char *argv[]){
HWE_Core *Engine_Core = new HWE_Core(); // this constructor calls some SDL functions
...
SDL_Delay(1); // If I omit this, I have an Undefined reference for all the
// SDL functions called in the HW_Engine library
}
感谢您的帮助!