编译条件“-lpthread”应该加在makefile的哪里阿?

Jason_QQ 2002-07-16 11:28:11
请问我用glade做好了一个界面,build后,生成了makefile文件,我要在这个程序中使用多线程,编译的时候应该在这个makefile的哪里加编译条件“-lpthread”呢?
...全文
1852 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
savage96 2002-07-19
  • 打赏
  • 举报
回复
sorry,俺写错了!!!
在makefile文件里,找 -L . $PATH 类似的行,在他的后面加上 -lpthread
如:
LIBDIRS=-L . ../lib -lmylib
加上-lpthread后:
LIBDIRS=-L . ../lib -lmylib -lpthread
就可以了。
savage96 2002-07-19
  • 打赏
  • 举报
回复
在makefile文件里,找 -L . $PATH 类似的行,在他的后面加上 -lpthread
如:
LIBDIRS=-L . ../zhm/myproject/lib -lmylib
加上后:
LIBDIRS=-L . ../lib -lmylib -lpthread
就可以了。

ajiefudan 2002-07-17
  • 打赏
  • 举报
回复
你总该知道你要生成的可执行文件名(假设是myapp)吧。
一般情况下,在makefile中会用变量表示,比如:
TARGET=myapp

然后你再查找TARGET,你会发现有这么一句:
$(TARGET): $(OBJ)
gcc -o $@ $(LFLAGS)(gcc也可以是$(CC)或者别的变量)
如果有如lflags的变量,那么可以把lpthread加到变量中,否则你就直接加在gcc语句后面。

如再不清楚,把makefile贴上来
kernel1 2002-07-17
  • 打赏
  • 举报
回复
gcc -lpthread -o $@ 依赖文件

Jason_QQ 2002-07-16
  • 打赏
  • 举报
回复
这个问题困扰我多事,请大家帮个忙,谢谢
Jason_QQ 2002-07-16
  • 打赏
  • 举报
回复
试过,不行阿!
seashoreboy 2002-07-16
  • 打赏
  • 举报
回复
是不是可以在敲入make命令后直接加上?我猜的。
Jason_QQ 2002-07-16
  • 打赏
  • 举报
回复
To ajiefudan:
首先谢谢你的回答,不过我现在只是一个初学者,我的问题关键就出在还看不懂这个MAKEFILE,现在这个程序如果直接打Make编译的话,就会出现“undefined reference to 'pthread_create'”等与线程有关的错误,所以我断定是要在MAKEFILE里某个位子加编译条件“-lpthread”,可琢磨来琢磨去,就是看不懂!所以希望各位前辈给出个简单的MAKEFILE例子,说明在哪里表示编译,哪里表示连接,谢谢!
ajiefudan 2002-07-16
  • 打赏
  • 举报
回复
在你生成可执行文件的时候,就是连接的时候加,一般是最后一步。
在编译的时候不需要。

19,619

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧