2011-03-27 51 views
7

从我意识到,我需要按照这个步骤来制作共享库准备:C:编译一些没有main()的对象(对于共享库)失败?

gcc -fPIC libfoo.c -o libfoo.o 

然后我联系起来。我曾尝试制作一个makefile来帮助完成这些步骤,但现在似乎出现了错误。

当我运行make文件会出现这种情况:

[email protected]:~/Projects/so$ gcc -fPIC ./libfoo.c -o libfoo.o 
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/crt1.o: In function `_start': 
(.text+0x18): undefined reference to `main' 
collect2: ld returned 1 exit status 

我怎么编译库文件无主的功能,因为它不是一个计划,旨在为图书馆吗?

如果它帮助我的程序基本上是这样(解释)

(stdio and openssl headers here) 

(debugging macro definitions here) 

(two functions, gettime() and opensslrandom() defined here) 

我似乎理解关于宏的问题为好,因为他们将在年底的共享库,他们是没用的共享库?我将它们包含在libfoo.h中,但我还没有看到这些宏是否工作。

回答