一直沒有注意這個問題,直到剛才發(fā)現(xiàn),寫Makefile時需要這樣寫:
$(CC) $(SRC) $(CFLAGS) $(LDFLAGS) -o $(TARGET)才會有效。
否則總是提醒類似下面的內(nèi)容:
[zhang@zwfedora23 testmpp]$ make /tmp/ccaYVZpD.o: In function `mpi_test':main.c:(.text+0x28): undefined reference to `AI_ipe for target 'test' failedmake: *** [test] Error 1[zhang@zwfedora23 testmpp]$而我又重點(diǎn)查看了所使用的靜態(tài)庫,確實包含了AI_xxx這幾個接口。 同時也檢查了CC和AR的值,也都是 arm-linux- 的前綴。
當(dāng)時就感覺TMD見了鬼了。到底是哪里的問題。。。。。
然后就嘗試使用手工輸入arm-linux-gcc 。。。。那一長串的命令編譯,沒有想到的是竟然通過了,而且生成的二進(jìn)制文件也可以執(zhí)行。接下來就是對比這兩者的區(qū)別,這才發(fā)現(xiàn)$(SRC)的位置的秘密。多半天的時間啥都沒干啊。
新聞熱點(diǎn)
疑難解答