0

可能重复:
链接器顺序 - GCC
GCC C++ 链接器错误:未定义对“xxx 的 vtable”的引用,未定义对“ClassName::ClassName()”的引用

我正在使用 GCC 来构建应用程序。主程序调用myfunc()驻留在静态库(例如)中的函数(例如libmylib.a)。此函数调用数学库中的cosf()andsinf()函数。

现在,在 gcc 命令行中,我给出了-lmylib -lm选项,构建顺利。但是,当库的顺序发生更改时,构建会失败并出现以下错误:

libmylib.a(mylib.o): In function `myfunc':
mylib.c:22: undefined reference to `cosf'
mylib.c:23: undefined reference to `sinf'

为什么 gcc 不使用按某种顺序给出的库完成构建?

4

0 回答 0