[英]arm-none-eabi-ld: cannot find -lc
I'm trying to code for XMC1100 based development board. 我正在尝试为基于XMC1100的开发板编写代码。 I'm trying this tutorial : http://eleceng.dit.ie/frank/arm/BareMetalXMC2Go/index.html 我正在尝试本教程: http : //eleceng.dit.ie/frank/arm/BareMetalXMC2Go/index.html
I have downloaded the blinky.tar.gz file and unzipped. 我已经下载了blinky.tar.gz文件并解压缩。 When I try "make" I'm getting this error : arm-none-eabi-ld: cannot find -lc 当我尝试“ make”时,出现此错误:arm-none-eabi-ld:找不到-lc
Here is the output of "make" 这是“ make”的输出
arm-none-eabi-gcc -c -mcpu=cortex-m0 -mthumb -g init.c -o init.o
arm-none-eabi-gcc -c -mcpu=cortex-m0 -mthumb -g main.c -o main.o
arm-none-eabi-ld init.o main.o -L /usr/lib/gcc/arm-none-eabi/4.8.2/armv6-m -T linker_script.ld -lc --cref -Map main.map -nostartfiles -o main.elf
arm-none-eabi-ld: cannot find -lc
make: *** [main.elf] Error 1
I'm using Linux Mint 17 Qiana 我正在使用Linux Mint 17 Qiana
What I am missing? 我缺少什么?
Here is my makefile : 这是我的makefile文件:
LIBSPEC=-L /usr/lib/gcc/arm-none-eabi/4.8.2/armv6-m
# Specify the compiler to use
CC=arm-none-eabi-gcc
# Specify the assembler to use
AS=arm-none-eabi-as
# Specity the linker to use
LD=arm-none-eabi-ld
CCFLAGS=-mcpu=cortex-m0 -mthumb -g
# List the object files involved in this project
OBJS= init.o \
main.o
# The default 'target' (output) is main.elf and it depends on the object files being there.
# These object files are linked together to create main.elf
main.elf : $(OBJS)
$(LD) $(OBJS) $(LIBSPEC) -T linker_script.ld -lc --cref -Map main.map -nostartfiles -o main.elf
arm-none-eabi-objcopy -O binary main.elf main.bin
objcopy -O ihex main.elf main.hex
@echo "done"
# The object file main.o depends on main.c. main.c is compiled to make main.o
main.o: main.c
$(CC) -c $(CCFLAGS) main.c -o main.o
init.o: init.c
$(CC) -c $(CCFLAGS) init.c -o init.o
# if someone types in 'make clean' then remove all object files and executables
# associated wit this project
clean:
rm $(OBJS)
rm main.elf
rm main.bin
我遇到了同样的问题, sudo apt-get install libnewlib-arm-none-eabi
帮助了我。
I was getting the following when trying to run a build: 尝试运行构建时出现以下错误:
/usr/lib/gcc/arm-none-eabi/4.9.3/../../../arm-none-eabi/bin/ld: cannot find -lstdc++
I had installed the packages on Ubuntu using sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi make dfu-util
but it seems there is one more that is required (at least for my system). 我已经使用sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi make dfu-util
在Ubuntu上安装了软件包,但似乎还需要一个sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi make dfu-util
(至少对于我的系统而言)。 After installing libstdc++-arm-none-eabi-newlib
it was able to find the correct file. 安装libstdc++-arm-none-eabi-newlib
它能够找到正确的文件。
Here are the files included in that package on my system: 以下是系统上该软件包中包含的文件:
$ apt-file show libstdc++-arm-none-eabi-newlib | grep -e "stdc++.a$"
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv6-m/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7-ar/thumb/fpu/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7-ar/thumb/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7-ar/thumb/softfp/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7-m/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7e-m/fpu/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7e-m/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/armv7e-m/softfp/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/fpu/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/mthumb/march=armv7/mfloat-abi=hard/mfpu=vfpv3-d16/mbig-endian/libstdc++.a
libstdc++-arm-none-eabi-newlib: /usr/lib/arm-none-eabi/newlib/thumb/libstdc++.a
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.