在嘗試u-boot-1.1.6向mini2440移植的過程中,遇到下面的編譯問題:
opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-ld: cannot find -lc
打開u-boot-1.1.6根目錄下的Makefile,發現:第218行
PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc -lc -L/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/lib
這一行是有問題的
檢查一下arm-linux-gcc的目錄,發現arm-none-linux-gnueabi目錄下並沒有libc這樣的目錄,因此推斷問題是arm-linux-gcc帶來的,將arm-linux-gcc換成4.3.2版本,檢查libc目錄存在,庫文件完整後,重新調整環境變量,問題解決。