LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 709|回复: 0

多线程能不能用静态连接?

[复制链接]
发表于 2006-8-14 12:33:24 | 显示全部楼层 |阅读模式
我在arm上编了一个多线程程序,在动态连接的时候编译运行均成功,但静态编译的时候连接失败,编译选项如下:
/usr/local/arm/2.95.3/bin/arm-linux-gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -static  -I /usr/local/arm/2.95.3/arm-linux/include -L /usr/local/arm/2.95.3/arm-linux/lib -lpthread -lc -o testthread testthread.c

错误信息如下:
[root@localhost testthread]# make
/usr/local/arm/2.95.3/bin/arm-linux-gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -static  -I /usr/local/arm/2.95.3/arm-linux/include -L /usr/local/arm/2.95.3/arm-linux/lib -lpthread -lc -o testthread1 testthread1.c
/tmp/ccVNTGTB.o: In function `main':
/tmp/ccVNTGTB.o(.text+0x44): undefined reference to `pthread_create'
/tmp/ccVNTGTB.o(.text+0x58): undefined reference to `pthread_join'
collect2: ld returned 1 exit status
make: *** [testthread1] Error 1

请各位不吝赐教
--
ps:由于开发的系统上面的linux上没有多线程的动态库,所以想在交叉编译时编译成静态的。
动态的编译没有问题,就是加了-static后,线程的建立等就undefine了。

想问问大家能静态连接吗?
或者在嵌入式系统的linux上加多线程的连接库,怎么加?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表