【发布时间】:2010-09-21 17:46:39
【问题描述】:
我正在尝试编写一个使用 dlysm 的 C 程序,但我不断收到对 dlysm 的未定义引用。我想我需要设置我的-ldl 标志,但我不知道该怎么做。
我对 linux 和设置变量非常陌生。如果这是我需要做的,有人可以帮我完成命令吗?
【问题讨论】:
标签: c unix dynamic-linking
我正在尝试编写一个使用 dlysm 的 C 程序,但我不断收到对 dlysm 的未定义引用。我想我需要设置我的-ldl 标志,但我不知道该怎么做。
我对 linux 和设置变量非常陌生。如果这是我需要做的,有人可以帮我完成命令吗?
【问题讨论】:
标签: c unix dynamic-linking
将-ldl 作为参数传递给编译器。
例子:
gcc myprog.c -o app -ldl
【讨论】:
-l 库选项在链接时使用。
如果您只编译一个源文件 (gcc -o program program.c),那么您可以同时编译和链接。只需添加-ldl。
如果您编译多个对象 (*.o) 文件,然后将它们链接在一起,请为链接器 (ld) 指定 -ldl 选项。
另请参阅man ld 和 man cc
【讨论】:
_start': (.text+0x18): undefined reference to main'collect2:ld返回1个退出状态