我是新的gcc编译器。文件格式无法识别;视为链接器脚本
我的朋友为我写了这个脚本(图形过滤器),但我不能使用它,因为我收到一些错误。
我有2个目录和C文件:
-dir- include --> basics.h common.h freeimage.h hqx.h imageIO.h pcxIO.h
-dir- lib --> libfreeimage-3.13.1.so libfreeimage.a libfreeimage.so.3 libhqx.a libhqx.so libhqx.so.1 libhqx.so.1.0.0
scaling.c
我尝试使用下面的命令来编译:
gcc scaling.c -I./include -L./lib -lm -lfreeimage -lhqx -lstdc++ -o filter
但我收到此错误:
/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../../i486-slackware-linux/bin/ld:./lib/libhqx.so: file format not recognized; treating as linker script
/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../../i486-slackware-linux/bin/ld:./lib/libhqx.so:1: syntax error
collect2: ld returned 1 exit status
谢谢提前和抱歉我的英语。
感谢您的回答理查德。 是的,Libhqx.so建立在我朋友的系统上。 我很新手,我遵循我的朋友的指示。 – MarcoD 2011-04-05 14:20:42
可以使用以下命令来共享库: 'echo“/ dir/lib”>> /etc/ld.so.conf/sbin/ldconfig' – MarcoD 2011-04-05 14:34:51
这会在.so文件运行时出错不能被动态链接器找到,但不会解决你的问题。在遇到运行时错误之前,您必须链接程序。 ;-) – 2011-04-05 14:47:56