arm elf 编译问题
我试图自己调试一个arm-elf-的编译器,但编译完成之后试着编译C语言程序的时候总是提示说:ld:crti.o没有这个文件。
原因我想不透,请指教。
编译脚本如下:
pwd=/root/src
prefix=/opt/arm-elf-0.1
COMMON_FLAG="--target=arm-elf --prefix=$prefix --enable-interwork --enable-multilib --with-float=soft"
binutils="binutils-2.19"
gcc="gcc-4.3.2"
newlib="newlib-1.16.0"
check_success()
{
if [ $? -ne 0 ]
then
echo error-----------------------------------
exit 66
fi
}
build_tar()
{
tar jxvf $binutils.tar.bz2
check_success
tar jxvf $gcc.tar.bz2
check_success
tar zxvf $newlib.tar.gz
check_success
tar jxvf $gdb.tar.bz2
check_success
}
build_binutils()
{
echo build binutils -----------------------------------------------
cd $pwd
cd $binutils
./configure $COMMON_FLAG
check_success
make all install
check_success
export PATH="$PATHprefix/bin"
check_success
}
build_gcc1()
{
echo build gcc1 -----------------------------------------------
cd $pwd
cd $gcc
./configure $COMMON_FLAG --enable-languages="c,c++" --with-newlib --with-headers=../$newlib/newlib/libc/include
check_success
make all-gcc install-gcc
check_success
}
build_newlib()
{
echo build newlib -----------------------------------------------
cd $pwd
cd $newlib
./configure $COMMON_FLAG
check_success
make all install
check_success
}
build_gcc2()
{
echo build gcc2 -----------------------------------------------
cd $pwd
cd $gcc
make all install
check_success
}
build_tar
build_binutils
build_gcc1
build_newlib
#build_gcc2
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
make install_root=${fsbuild_install}/${fsbuild_target}/libc/./ install-bootstrap-headers=yes install-
在安装glibc-header的时候,除了运行"make install-headers ...",还要拷贝crt1.o crti.o crtn.o到libc/usr/lib目录下,还要编译生成libc.so,参考如下命令:
make csu/subdir_lib
cp csu/crt1.o csu/crti.o csu/crtn.o ${install}/${target}/libc/./usr/lib/./
popd
${install}/bin/${target}-gcc -o ${install}/${target}/libc/./usr/lib/.//libc.so -nostdlib -nostartfiles -shared -x c /dev/null
check_exit "# task [063/201]" # /${fsbuild_host}/toolchain/glibc_headers/glibc_1/copy