c - 哦不,不是另一个 undefined reference 问题!

标签 c gcc linker compilation undefined-reference

很遗憾,是的。

我编译了我的共享库,链接器没有提示找不到它,但我仍然遇到 undefined reference 错误。考虑到我可能做错了什么,我做了一些研究并发现了这个简单的演练:

http://www.adp-gmbh.ch/cpp/gcc/create_lib.html

我已经严格遵守了,但我仍然得到:

$ gcc -Wall main.c -o dynamically_linked  -L.\ -lmean
/tmp/ccZjkkkl.o: In function `main':
main.c:(.text+0x42): undefined reference to `mean'
collect2: ld returned 1 exit status

这是非常简单的事情,怎么了?!我的设置中是否有可能需要检查/调整的内容?

GCC 4.3.2 Fedora 10 64 位

最佳答案

改变:

$ gcc -Wall main.c -o dynamically_linked  -L.\ -lmean

到:

$ gcc -Wall main.c -o dynamically_linked  -L. -lmean



您可能打算这样做:

$ gcc -Wall main.c -o dynamically_linked  -L./ -lmean

没问题,但尾随 / 是多余的

关于c - 哦不,不是另一个 undefined reference 问题!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2819545/

相关文章:

c - 将 __attribute__((used)) 设置为 C 变量/常量无效

gcc - Solaris ld : fatal: unrecognized option '--'

c++ - 使用 cmake 在 macOS 上共享库的链接器问题

c - 箭头运算符放置 C

cppcheck 检测到资源泄漏 - 漏报?

c - 为什么 RAND_MAX 在 linux 和 windows 的同一台机器上不同?

gcc - gcc 命令中 -fsyntax-only 选项的用途是什么?

c++ - Linux gcc 和 Windows Visual Studio 处理静态常量的区别?

'\0'结尾的C字符串

c - 警告 C4047 : '=' : 'int' differs in levels of indirection from 'char *'