当前位置: 技术问答>linux和unix
makefile问题(在线等待)
来源: 互联网 发布时间:2015-07-30
本文导语: 各位: 我参照cc编译器(Solaris)的Makefile编写一个gcc编译器(Slackware linux)的Makefile。其中有一段不知道怎么写。如下: 1>在cc的Makefile 中: LIB= -lnotes -lC -lthread -lc 在gcc中应该怎么写呢?-lthread应该是-lpthread -lnotes是...
各位:
我参照cc编译器(Solaris)的Makefile编写一个gcc编译器(Slackware linux)的Makefile。其中有一段不知道怎么写。如下:
1>在cc的Makefile 中:
LIB= -lnotes -lC -lthread -lc
在gcc中应该怎么写呢?-lthread应该是-lpthread -lnotes是notes自己的库,可能不需要变化,但是其他
两个怎么写呢?
2>cc中的-G 是不是对应于gcc中的-share ?
3>我在gcc的Makefile中加入了一个-L$(LIBDIR) 结果其中的so除了libxxx.so其他都可以找到,除了一个
libxxx.so我用了-lxxx结果链接出错,找不到,逼得我必须export LD_LIBRARY_PATH 能不能告诉我可能的
原因或者解决方法呢?
|
1. -lc 和 -lC 可以不用写的。 g++编译的时候默认是连接libc和libstdc++的库的。
2. -G还是-shared其实是传给ld的参数,linux下是-shared,solaris下是-G
3. 编译时只需要-L就可以了。运行时才会需要LD_LIBRARY_PATH。你是说运行时找不到?
2. -G还是-shared其实是传给ld的参数,linux下是-shared,solaris下是-G
3. 编译时只需要-L就可以了。运行时才会需要LD_LIBRARY_PATH。你是说运行时找不到?