1

我正在尝试将 lua 静态链接到 FreePascal 应用程序中。我已经修复了链接过程中的所有错误,除了这个。未定义符号:__strtod

我可以通过 MinGW 编译器中的 libkernel32.a、libuser32.a 和 libmsvcr.a 链接所有其他未定义符号,我用来编译我正在链接的 liblualib.a 以代替使用 dll。

我想要这个静态链接而不是动态链接。那么,有人会碰巧知道在哪个 .a lib 文件 ___strtod 中定义或知道如何搜索并找到它。

据我所知,它是一个 C99 函数,MinGW、GCC 支持它。因此,我认为它将位于随附的 lib (.a) 文件之一中。

谢谢,

4

3 回答 3

1

事实证明,当我开始工作时,我再也没有回来回答我的问题。

我在网上搜索了 C 中的函数,然后使用 MinGW 将其编译为静态库。使用我创建的 libstrtod.a 文件,我能够将它静态链接到由 FreePascal 编译的程序中。

自从签约以来,我不得不放弃这个项目的来源,我会尽量记住做一个例子来分享。

感谢所有的回复和建议。

待续...

于 2013-04-09T16:54:31.663 回答
0

它是 C 库 libc 的一部分。但是我不知道你可以静态链接到它。(是否还有提供静态版本 libc 的系统?)

Libc 应该默认链接在 C 程序中。

于 2011-12-06T17:37:42.477 回答
0

只需创建一个使用库的静态版本的 make 文件。静态库通常比动态库大得多。您可以下载 newlib 并直接使用 lua 运行时编译源代码,我猜 newlib 可以与 MinGW 一起使用。

我希望这有帮助。

于 2011-12-06T19:17:53.983 回答