哦不,不是另一个未定义的参考问题!

时间:2010-05-12 14:09:22

标签: c gcc linker compilation 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位

2 个答案:

答案 0 :(得分:3)

变化:

$ 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

没关系,但尾随/是多余的

答案 1 :(得分:0)

图书馆是如何创建的? libtool的?

向我们展示当前目录的ls -l,并查看gcc -v <rest of your command>所说的内容(详细说明了gcc正在做什么)。