免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2456 | 回复: 0
打印 上一主题 下一主题

用crosstool-ng建立Linux交叉编译环境(armv4t) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-21 08:41 |只看该作者 |倒序浏览
用crosstool-ng建立Linux交叉编译环境(armv4t)

1.下载crosstool-ng
http://crosstool-ng.org/

2.安装必要文件
sudo apt-get install libncurses5-dev bison flex texinfo automake libtool patch gcj cvs cvsd gawk
cd /usr/bin
sudo mv mawk mawkbak
sudo ln -s gawk mawk

3.crosstool-ng的安装
cd ~/work
mkdir crosstool-ng
tar xvjf crosstool-ng-1.11.0.tar.bz2
cd crosstool-ng-1.11.0/
./configure --prefix=/home/thinker/work/crosstool-ng
cp ct-ng.comp ~/ #这句不能用(可能要重启?),改用下一句
echo "PATH=$PATH:/home/thinker/work/crosstool-ng/bin" >> ~/.bashrc
source ~/.bashrc
ct-ng -h
#执行上一条之后出现一大堆帮助信息表明crosstool-ng安装成功

4.交叉工具链的配置
cd ~/work/crosstool-ng
mkdir ~/src
mkdir build_toolchain
#先修补crosstool-ng的一个bug(注1)
#编辑crosstool-ng安装目录下的lib/ct-ng-1.11.0/scripts/build/internals.sh
#将       gcc_version=$( cat "${CT_SRC_DIR}/gcc-${CT_GCC_VERSION}/gcc/BASE-VER" )
#改为     gcc_version=$( cat "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/BASE-VER" )

ct-ng arm-unknown-linux-gnueabi #使用arm-unknown-linux-gnueabi

#出现提示:/bin/bash: /home/thinker/work/crosstool-ng/lib/ct-ng-1.11.0/samples/arm-unknown-linux-gnueabi/reported.by: 没有那个文件或目录
#这个不用管,因为的确不存在

ct-ng menuconfig #配置
#下面是我的配置结果(删除了一些带#的关于构架或者版本的行)
[DEBUG]  =================================================================
[DEBUG]  Dumping user-supplied crosstool-NG configuration
[DEBUG]    ==> Executing: 'grep' '-E' '^(# |)CT_' '.config' 
[DEBUG]    # CT_BACKEND is not set
[DEBUG]    CT_MODULES=y
[DEBUG]    # CT_OBSOLETE is not set
[DEBUG]    # CT_EXPERIMENTAL is not set
[DEBUG]    # CT_DEBUG_CT is not set
[DEBUG]    CT_LOCAL_TARBALLS_DIR="${HOME}/src"
[DEBUG]    CT_SAVE_TARBALLS=y
[DEBUG]    CT_WORK_DIR="${CT_TOP_DIR}/build_toolchain/"
[DEBUG]    CT_PREFIX_DIR="/home/thinker/work/gcc-4.4.5-glibc-2.9/"
[DEBUG]    CT_INSTALL_DIR="${CT_PREFIX_DIR}"
[DEBUG]    CT_RM_RF_PREFIX_DIR=y
[DEBUG]    # CT_REMOVE_DOCS is not set
[DEBUG]    CT_INSTALL_DIR_RO=y
[DEBUG]    CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES=y
[DEBUG]    # CT_FORBID_DOWNLOAD is not set
[DEBUG]    # CT_FORCE_DOWNLOAD is not set
[DEBUG]    CT_USE_MIRROR=y
[DEBUG]    # CT_PREFER_MIRROR is not set
[DEBUG]    CT_MIRROR_BASE_URL="http://ymorin.is-a-geek.org/mirrors/"
[DEBUG]    CT_CONNECT_TIMEOUT=10
[DEBUG]    # CT_ONLY_DOWNLOAD is not set
[DEBUG]    # CT_FORCE_EXTRACT is not set
[DEBUG]    CT_OVERIDE_CONFIG_GUESS_SUB=y
[DEBUG]    # CT_ONLY_EXTRACT is not set
[DEBUG]    CT_PATCH_BUNDLED=y
[DEBUG]    # CT_PATCH_LOCAL is not set
[DEBUG]    # CT_PATCH_BUNDLED_LOCAL is not set
[DEBUG]    # CT_PATCH_LOCAL_BUNDLED is not set
[DEBUG]    # CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set
[DEBUG]    # CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set
[DEBUG]    # CT_PATCH_NONE is not set
[DEBUG]    CT_PATCH_ORDER="bundled"
[DEBUG]    # CT_PATCH_SINGLE is not set
[DEBUG]    # CT_PATCH_USE_LOCAL is not set
[DEBUG]    CT_PARALLEL_JOBS=4
[DEBUG]    CT_LOAD=0
[DEBUG]    CT_USE_PIPES=y
[DEBUG]    # CT_CONFIG_SHELL_SH is not set
[DEBUG]    # CT_CONFIG_SHELL_ASH is not set
[DEBUG]    CT_CONFIG_SHELL_BASH=y
[DEBUG]    # CT_CONFIG_SHELL_CUSTOM is not set
[DEBUG]    CT_CONFIG_SHELL="bash"
[DEBUG]    # CT_LOG_ERROR is not set
[DEBUG]    # CT_LOG_WARN is not set
[DEBUG]    # CT_LOG_INFO is not set
[DEBUG]    CT_LOG_EXTRA=y
[DEBUG]    # CT_LOG_ALL is not set
[DEBUG]    # CT_LOG_DEBUG is not set
[DEBUG]    CT_LOG_LEVEL_MAX="EXTRA"
[DEBUG]    # CT_LOG_SEE_TOOLS_WARN is not set
[DEBUG]    CT_LOG_PROGRESS_BAR=y
[DEBUG]    CT_LOG_TO_FILE=y
[DEBUG]    CT_LOG_FILE_COMPRESS=y
[DEBUG]    CT_ARCH="arm"
[DEBUG]    CT_ARCH_SUPPORTS_BOTH_MMU=y
[DEBUG]    CT_ARCH_SUPPORTS_BOTH_ENDIAN=y
[DEBUG]    CT_ARCH_SUPPORTS_32=y
[DEBUG]    # CT_ARCH_SUPPORTS_64 is not set
[DEBUG]    CT_ARCH_SUPPORT_ARCH=y
[DEBUG]    # CT_ARCH_SUPPORT_ABI is not set
[DEBUG]    CT_ARCH_SUPPORT_CPU=y
[DEBUG]    CT_ARCH_SUPPORT_TUNE=y
[DEBUG]    CT_ARCH_SUPPORT_FPU=y
[DEBUG]    CT_ARCH_DEFAULT_HAS_MMU=y
[DEBUG]    # CT_ARCH_DEFAULT_BE is not set
[DEBUG]    CT_ARCH_DEFAULT_LE=y
[DEBUG]    CT_ARCH_DEFAULT_32=y
[DEBUG]    # CT_ARCH_DEFAULT_64 is not set
[DEBUG]    CT_ARCH_ARCH="armv4t"
[DEBUG]    CT_ARCH_CPU="arm9tdmi"
[DEBUG]    CT_ARCH_TUNE="arm920t"
[DEBUG]    CT_ARCH_FPU=""
[DEBUG]    # CT_ARCH_BE is not set
[DEBUG]    CT_ARCH_LE=y
[DEBUG]    CT_ARCH_32=y
[DEBUG]    # CT_ARCH_64 is not set
[DEBUG]    CT_ARCH_BITNESS=32
[DEBUG]    # CT_ARCH_FLOAT_HW is not set
[DEBUG]    CT_ARCH_FLOAT_SW=y
[DEBUG]    CT_TARGET_CFLAGS=""
[DEBUG]    CT_TARGET_LDFLAGS=""
[DEBUG]    # CT_ARCH_alpha is not set
[DEBUG]    CT_ARCH_arm=y

[DEBUG]    CT_ARCH_alpha_AVAILABLE=y
[DEBUG]    CT_ARCH_arm_AVAILABLE=y
[DEBUG]    CT_ARCH_avr32_AVAILABLE=y
[DEBUG]    CT_ARCH_blackfin_AVAILABLE=y
[DEBUG]    CT_ARCH_m68k_AVAILABLE=y
[DEBUG]    CT_ARCH_mips_AVAILABLE=y
[DEBUG]    CT_ARCH_powerpc_AVAILABLE=y
[DEBUG]    CT_ARCH_s390_AVAILABLE=y
[DEBUG]    CT_ARCH_sh_AVAILABLE=y
[DEBUG]    CT_ARCH_sparc_AVAILABLE=y
[DEBUG]    CT_ARCH_x86_AVAILABLE=y
[DEBUG]    CT_ARCH_USE_MMU=y
[DEBUG]    CT_ARCH_ARM_MODE="arm"
[DEBUG]    CT_ARCH_ARM_MODE_ARM=y
[DEBUG]    # CT_ARCH_ARM_MODE_THUMB is not set
[DEBUG]    CT_ARCH_ARM_EABI=y
[DEBUG]    CT_FORCE_SYSROOT=y
[DEBUG]    CT_USE_SYSROOT=y
[DEBUG]    CT_SYSROOT_NAME="sysroot"
[DEBUG]    CT_SYSROOT_DIR_PREFIX=""
[DEBUG]    CT_TARGET_VENDOR="unknown"
[DEBUG]    CT_TARGET_ALIAS_SED_EXPR=""
[DEBUG]    CT_TARGET_ALIAS=""
[DEBUG]    # CT_NATIVE is not set
[DEBUG]    CT_CROSS=y
[DEBUG]    # CT_CROSS_NATIVE is not set
[DEBUG]    # CT_CANADIAN is not set
[DEBUG]    CT_TOOLCHAIN_TYPE="cross"
[DEBUG]    CT_BUILD=""
[DEBUG]    CT_BUILD_PREFIX=""
[DEBUG]    CT_BUILD_SUFFIX=""
[DEBUG]    # CT_BARE_METAL is not set
[DEBUG]    # CT_MINGW32 is not set
[DEBUG]    CT_KERNEL_SUPPORTS_SHARED_LIBS=y
[DEBUG]    CT_KERNEL="linux"
[DEBUG]    CT_KERNEL_VERSION="2.6.32.39"
[DEBUG]    # CT_KERNEL_bare_metal is not set
[DEBUG]    CT_KERNEL_linux=y
[DEBUG]    # CT_KERNEL_mingw32 is not set
[DEBUG]    CT_KERNEL_bare_metal_AVAILABLE=y
[DEBUG]    CT_KERNEL_linux_AVAILABLE=y
[DEBUG]    CT_KERNEL_mingw32_AVAILABLE=y
[DEBUG]    CT_SHARED_LIBS=y
[DEBUG]    CT_KERNEL_LINUX_INSTALL=y

[DEBUG]    CT_KERNEL_V_2_6_32_39=y

[DEBUG]    CT_KERNEL_LINUX_VERBOSITY_0=y
[DEBUG]    # CT_KERNEL_LINUX_VERBOSITY_1 is not set
[DEBUG]    # CT_KERNEL_LINUX_VERBOSITY_2 is not set
[DEBUG]    CT_KERNEL_LINUX_VERBOSE_LEVEL=0
[DEBUG]    CT_KERNEL_LINUX_INSTALL_CHECK=y
[DEBUG]    CT_ARCH_BINFMT_ELF=y
[DEBUG]    # CT_ARCH_BINFMT_FLAT is not set
[DEBUG]    # CT_ARCH_BINFMT_FDPIC is not set

[DEBUG]    CT_BINUTILS_V_2_20=y

[DEBUG]    CT_BINUTILS_VERSION="2.20"
[DEBUG]    CT_BINUTILS_GOLD_SUPPORTS_ARCH=y
[DEBUG]    CT_BINUTILS_FORCE_LD_BFD=y
[DEBUG]    CT_BINUTILS_LINKER_LD=y
[DEBUG]    # CT_BINUTILS_LINKER_GOLD is not set
[DEBUG]    # CT_BINUTILS_LINKER_LD_GOLD is not set
[DEBUG]    # CT_BINUTILS_LINKER_GOLD_LD is not set
[DEBUG]    CT_BINUTILS_LINKERS_LIST="ld"
[DEBUG]    CT_BINUTILS_LINKER_DEFAULT="bfd"
[DEBUG]    CT_BINUTILS_EXTRA_CONFIG=""
[DEBUG]    CT_BINUTILS_FOR_TARGET=y
[DEBUG]    CT_BINUTILS_FOR_TARGET_IBERTY=y
[DEBUG]    CT_BINUTILS_FOR_TARGET_BFD=y
[DEBUG]    CT_CC="gcc"
[DEBUG]    CT_CC_VERSION="4.4.5"
[DEBUG]    CT_CC_gcc=y

[DEBUG]    CT_CC_V_4_4_5=y

[DEBUG]    # CT_CC_GCC_4_2 is not set
[DEBUG]    CT_CC_GCC_4_2_or_later=y
[DEBUG]    # CT_CC_GCC_4_3 is not set
[DEBUG]    CT_CC_GCC_4_3_or_later=y
[DEBUG]    CT_CC_GCC_4_4=y
[DEBUG]    CT_CC_GCC_4_4_or_later=y

[DEBUG]    CT_CC_GCC_HAS_GRAPHITE=y
[DEBUG]    # CT_CC_GCC_HAS_LTO is not set
[DEBUG]    CT_CC_GCC_USE_GMP_MPFR=y
[DEBUG]    CT_CC_GCC_USE_PPL_CLOOG=y
[DEBUG]    # CT_CC_GCC_USE_MPC is not set
[DEBUG]    # CT_CC_GCC_USE_LIBELF is not set
[DEBUG]    CT_CC_LANG_JAVA_USE_ECJ=y
[DEBUG]    CT_CC_SUPPORT_CXX=y
[DEBUG]    CT_CC_SUPPORT_FORTRAN=y
[DEBUG]    CT_CC_SUPPORT_JAVA=y
[DEBUG]    CT_CC_SUPPORT_ADA=y
[DEBUG]    CT_CC_SUPPORT_OBJC=y
[DEBUG]    CT_CC_SUPPORT_OBJCXX=y
[DEBUG]    CT_CC_LANG_CXX=y
[DEBUG]    CT_CC_LANG_FORTRAN=y
[DEBUG]    CT_CC_LANG_JAVA=y
[DEBUG]    CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}"
[DEBUG]    CT_CC_BUGURL=""
[DEBUG]    CT_CC_ENABLE_CXX_FLAGS=""
[DEBUG]    CT_CC_CORE_EXTRA_CONFIG=""
[DEBUG]    CT_CC_EXTRA_CONFIG=""
[DEBUG]    CT_CC_STATIC_LIBSTDCXX=y
[DEBUG]    CT_CC_GCC_USE_GRAPHITE=y
[DEBUG]    CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
[DEBUG]    # CT_CC_GCC_LIBMUDFLAP is not set
[DEBUG]    CT_CC_GCC_LIBGOMP=y
[DEBUG]    # CT_CC_GCC_LIBSSP is not set
[DEBUG]    CT_CC_CXA_ATEXIT=y
[DEBUG]    # CT_CC_GCC_DISABLE_PCH is not set
[DEBUG]    CT_CC_GCC_SJLJ_EXCEPTIONS=m
[DEBUG]    CT_CC_GCC_LDBL_128=m
[DEBUG]    CT_LIBC="glibc"
[DEBUG]    CT_LIBC_VERSION="2.9"
[DEBUG]    # CT_LIBC_eglibc is not set
[DEBUG]    CT_LIBC_glibc=y
[DEBUG]    # CT_LIBC_mingw is not set
[DEBUG]    # CT_LIBC_newlib is not set
[DEBUG]    # CT_LIBC_none is not set
[DEBUG]    # CT_LIBC_uClibc is not set
[DEBUG]    CT_LIBC_eglibc_AVAILABLE=y
[DEBUG]    CT_LIBC_glibc_AVAILABLE=y
[DEBUG]    CT_LIBC_GLIBC_TARBALL=y

[DEBUG]    # CT_LIBC_GLIBC_V_2_10_1 is not set
[DEBUG]    CT_LIBC_GLIBC_V_2_9=y

[DEBUG]    CT_LIBC_mingw_AVAILABLE=y
[DEBUG]    CT_LIBC_newlib_AVAILABLE=y
[DEBUG]    CT_LIBC_none_AVAILABLE=y
[DEBUG]    CT_LIBC_uClibc_AVAILABLE=y
[DEBUG]    CT_LIBC_glibc_familly=y
[DEBUG]    CT_LIBC_GLIBC_EXTRA_CONFIG=""
[DEBUG]    CT_LIBC_GLIBC_CONFIGPARMS=""
[DEBUG]    CT_LIBC_GLIBC_EXTRA_CFLAGS=""
[DEBUG]    CT_LIBC_EXTRA_CC_ARGS=""
[DEBUG]    # CT_LIBC_DISABLE_VERSIONING is not set
[DEBUG]    CT_LIBC_OLDEST_ABI=""
[DEBUG]    # CT_LIBC_GLIBC_FORCE_UNWIND is not set
[DEBUG]    CT_LIBC_GLIBC_USE_PORTS=y
[DEBUG]    CT_LIBC_ADDONS_LIST=""
[DEBUG]    # CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set
[DEBUG]    CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y
[DEBUG]    # CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set
[DEBUG]    CT_LIBC_GLIBC_MIN_KERNEL="2.6.32.39"
[DEBUG]    CT_LIBC_SUPPORT_THREADS_ANY=y
[DEBUG]    CT_LIBC_SUPPORT_NPTL=y
[DEBUG]    # CT_LIBC_SUPPORT_LINUXTHREADS is not set
[DEBUG]    # CT_LIBC_SUPPORT_WIN32THREADS is not set
[DEBUG]    # CT_LIBC_SUPPORT_THREADS_NONE is not set
[DEBUG]    CT_THREADS="nptl"
[DEBUG]    CT_THREADS_NPTL=y
[DEBUG]    # CT_THREADS_LINUXTHREADS is not set
[DEBUG]    # CT_THREADS_WIN32THREADS is not set
[DEBUG]    # CT_THREADS_NONE is not set
[DEBUG]    CT_LIBC_XLDD=y
[DEBUG]    CT_DEBUG_dmalloc=y
[DEBUG]    CT_DMALLOC_V_5_5_2=y
[DEBUG]    CT_DMALLOC_VERSION="5.5.2"
[DEBUG]    CT_DEBUG_duma=y
[DEBUG]    CT_DUMA_A=y
[DEBUG]    CT_DUMA_SO=y
[DEBUG]    CT_DUMA_V_2_5_15=y
[DEBUG]    # CT_DUMA_V_2_5_14 is not set

[DEBUG]    CT_DUMA_VERSION="2_5_15"
[DEBUG]    CT_DEBUG_gdb=y
[DEBUG]    CT_GDB_CROSS=y
[DEBUG]    # CT_GDB_CROSS_STATIC is not set
[DEBUG]    CT_GDB_NATIVE=y
[DEBUG]    # CT_GDB_NATIVE_NO_STATIC is not set
[DEBUG]    # CT_GDB_NATIVE_STATIC is not set
[DEBUG]    CT_GDB_GDBSERVER=y
[DEBUG]    CT_GDB_GDBSERVER_STATIC=y
[DEBUG]    # CT_GDB_V_linaro_7_2_2011_04_0 is not set

[DEBUG]    CT_GDB_V_6_8=y
[DEBUG]    CT_GDB_VERSION="6.8"
[DEBUG]    CT_DEBUG_ltrace=y
[DEBUG]    CT_LTRACE_V_0_5_3=y
[DEBUG]    # CT_LTRACE_V_0_5_2 is not set

[DEBUG]    CT_LTRACE_VERSION="0.5.3"
[DEBUG]    CT_LTRACE_0_5_3_or_later=y
[DEBUG]    CT_DEBUG_strace=y
[DEBUG]    # CT_STRACE_V_4_5_20 is not set
[DEBUG]    CT_STRACE_V_4_5_19=y

[DEBUG]    CT_STRACE_VERSION="4.5.19"
[DEBUG]    CT_COMPLIBS_NEEDED=y
[DEBUG]    CT_GMP_NEEDED=y
[DEBUG]    CT_MPFR_NEEDED=y
[DEBUG]    CT_PPL_NEEDED=y
[DEBUG]    CT_CLOOG_NEEDED=y
[DEBUG]    # CT_MPC_NEEDED is not set
[DEBUG]    # CT_LIBELF_NEEDED is not set
[DEBUG]    CT_COMPLIBS=y
[DEBUG]    CT_GMP=y
[DEBUG]    CT_MPFR=y
[DEBUG]    CT_PPL=y
[DEBUG]    CT_CLOOG=y
[DEBUG]    CT_LIBELF_TARGET=y
[DEBUG]    # CT_GMP_V_5_0_1 is not set
[DEBUG]    CT_GMP_V_4_3_2=y

[DEBUG]    CT_GMP_VERSION="4.3.2"
[DEBUG]    # CT_MPFR_V_3_0_0 is not set
[DEBUG]    CT_MPFR_V_2_4_2=y

[DEBUG]    CT_MPFR_VERSION="2.4.2"

[DEBUG]    # CT_PPL_V_0_11 is not set
[DEBUG]    CT_PPL_V_0_10_2=y
[DEBUG]    CT_PPL_VERSION="0.10.2"

[DEBUG]    CT_CLOOG_V_0_15_10=y
[DEBUG]    # CT_CLOOG_V_0_15_9 is not set

[DEBUG]    CT_CLOOG_VERSION="0.15.10"
[DEBUG]    CT_LIBELF_V_0_8_13=y
[DEBUG]    # CT_LIBELF_V_0_8_12 is not set
[DEBUG]    CT_LIBELF_VERSION="0.8.13"
[DEBUG]    # CT_COMPLIBS_CHECK is not set
[DEBUG]  Dumping user-supplied crosstool-NG configuration: done in 0.11s (at 00:01)

5.编译工具链
./bin/ct-ng build

#在build的过程中会在~/src目录下存放下载的源码(可以事先手动下载对应版本的源码)
#下面是我的源码
binutils-2.20.tar.bz2     gcc-4.4.5.tar.bz2        linux-2.6.32.39.tar.bz2
cloog-ppl-0.15.10.tar.gz  gdb-6.8.tar.bz2          ltrace_0.5.3.orig.tar.gz
dmalloc-5.5.2.tgz         glibc-2.9.tar.bz2        mpfr-2.4.2.tar.bz2
duma_2_5_15.tar.gz        glibc-ports-2.9.tar.bz2  ncurses-5.7.tar.gz
ecj-latest.jar            gmp-4.3.2.tar.bz2        ppl-0.10.2.tar.bz2
expat-2.0.1.tar.gz        libelf-0.8.13.tar.gz     strace-4.5.19.tar.bz2
#下载的过程用了53分钟
#编译的时间用了90分钟(不带上下载时间,因为前两次编译出错了)

cd ~/work/gcc-4.4.5-glibc-2.9/bin
./arm-unknown-linux-gnueabi-gcc -v
#出现一大堆信息说明工具链制作成功,备份一下这个工具链,防止下次使用相同配置制作工具链会把这个给删除


##参考链接:
http://blog.chinaunix.net/space.php?uid=20543672&do=blog&id=94369
http://hi.baidu.com/caicry/blog/item/f306db639c4281680c33fa1b.html
#其实crosstool-ng里面的说明文档有详尽的介绍,会一点英语的最好看看

##注1:
#没有修改这个bug的话,会出现以下这样的内容:
[INFO ]  =================================================================
[INFO ]  Cleaning-up the toolchain's directory
[INFO ]    Stripping all toolchain executables
[221:05] / cat: /home/thinker/work/crosstool-ng/.build/src/gcc-/gcc/BASE-VER: No such file or directory
[ERROR]    
[ERROR]    >>  Build failed in step 'Cleaning-up the toolchain's directory'
[ERROR]    >>
[ERROR]    >>  Error happened in: do_finish[scripts/build/internals.sh]
[ERROR]    >>        called from: main[scripts/crosstool-NG.sh@582]
[ERROR]    >>
[ERROR]    >>  For more info on this error, look at the file: 'build.log'
[ERROR]    >>  There is a list of known issues, some with workarounds, in:
[ERROR]    >>      'share/doc/ct-ng-1.11.0/B - Known issues.txt'
[ERROR]    
[ERROR]    Build failed in step 'Cleaning-up the toolchain's directory'
[ERROR]    
[ERROR]    (elapsed: 221:04.99)
[221:05] / make: *** [build] 错误 1
#解决办法原址:http://permalink.gmane.org/gmane.comp.gcc.cross-compiling/13652
#原址内容:
[PATCH] fix toolchain stripping
Stripping is broken in 1.11.0
[12:41] / cat: /home/max/work/gen-toolchain/trunk/targets/src/gcc-/gcc/BASE-VER: No such file or directory
Small typo (I think) introduced by 055e505f28be

--- ./scripts/build/internals.sh.old 2011-05-02 17:11:53.728977899 +0200
+++ ./scripts/build/internals.sh 2011-05-02 17:11:11.468204063 +0200
@@ -22,7 +22,7 @@
         esac
         CT_DoLog INFO "Stripping all toolchain executables"
         CT_Pushd "${CT_PREFIX_DIR}"
-        gcc_version=$( cat "${CT_SRC_DIR}/gcc-${CT_GCC_VERSION}/gcc/BASE-VER" )
+        gcc_version=$( cat "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/BASE-VER" )
         for _t in "bin/${CT_TARGET}-"*                                      \
                   "${CT_TARGET}/bin/"*                                      \
                   "libexec/gcc/${CT_TARGET}/${gcc_version}/"*               \

--

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP