我是新的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