使用-nostdlib后得到未解析的符号?

时间:2014-09-03 05:39:22

标签: c++builder ghc

添加此标志 -nostdlib 后,在编译代码期间,我收到错误,以粗体突出显示

来自Analogs.o的

_d_itod

来自Analogs.o的

_d_mul

来自Analogs.o的

_d_sub

来自Analogs.o的

_d_dtof

来自Analogs.o的

_f_ftod

来自Analogs.o的

_d_div

我无法弄清楚为什么会出现这些错误,如果我删除了这个库,我的软件代码正在构建而不会出现任何错误。

可以帮助我解决这个问题。

1 个答案:

答案 0 :(得分:3)

-nostdlib不是库,它表明编译器/链接器不应该在您的可执行文件中包含标准库。

如果您需要标准库中的内容,则不应使用此标记。

如果你认为不应该使用它们,你需要找出使用它们的方法,然后停止它。

根据错误,Analogs.o可能来自Analogs.cpp)正在请求这些功能。如果您可以控制该代码,您可以找到另一种方法来实现其目的,没有这些功能。

或者,无论您是否控制它,您都可以自己提供这些功能,而不是依赖于标准库。