主题 : 求助:arm-linux-gcc-4.4.3工具链制作 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 128474
精华: 0
发帖: 2
金钱: 10 两
威望: 2 点
贡献值: 0 点
综合积分: 4 分
注册时间: 2016-10-11
最后登录: 2016-10-16
楼主  发表于: 2016-10-11 22:33

 求助:arm-linux-gcc-4.4.3工具链制作

我想在我的电脑上制作一个mini2440的交叉编译工具链,因为在虚拟机里面编译内核实在太慢了。我根据友善之臂光盘里给的工具链中找到了配置文件,使用crosstool-ng-1.6.1来制作工具链。
在编译到ppl-0.10.2时,出现大量语法错误,编译终止。大家有谁之前做过arm-linux-gcc-4.4.3这个版本的工具链?能不能给点建议。
我的电脑环境为:Ubuntu15.10 gcc-4.9.2

错误信息如下:
[INFO ]  =================================================================
[INFO ]  Installing PPL
[EXTRA]    Configuring PPL
[EXTRA]    Building PPL
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:30:54: error: invalid use of incomplete type 'class Parma_Polyhedra_Library::Interval<Boundary, Info>'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.types.hh:18:7: error: declaration of 'class Parma_Polyhedra_Library::Interval<Boundary, Info>'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:37:51: error: invalid use of incomplete type 'class Parma_Polyhedra_Library::Interval<Boundary, Info>'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.types.hh:18:7: error: declaration of 'class Parma_Polyhedra_Library::Interval<Boundary, Info>'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:43:59: error: invalid use of incomplete type 'class Parma_Polyhedra_Library::Interval<Boundary, Info>'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.types.hh:18:7: error: declaration of 'class Parma_Polyhedra_Library::Interval<Boundary, Info>'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:97:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:97:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:97:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:97:49: error: invalid type in declaration before ',' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:97:49: error: 'Parma_Polyhedra_Library::Interval_NS::value' declared as an 'inline' variable
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:97:49: error: template declaration of 'int Parma_Polyhedra_Library::Interval_NS::value'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:102:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:102:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:102:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:102:49: error: invalid type in declaration before ',' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:102:49: error: 'Parma_Polyhedra_Library::Interval_NS::value' declared as an 'inline' variable
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:102:49: error: template declaration of 'int Parma_Polyhedra_Library::Interval_NS::value'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:107:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:107:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:107:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:107:49: error: invalid type in declaration before ',' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:107:49: error: 'Parma_Polyhedra_Library::Interval_NS::value' declared as an 'inline' variable
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:107:49: error: template declaration of 'int Parma_Polyhedra_Library::Interval_NS::value'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:112:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:112:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:112:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:112:49: error: invalid type in declaration before ',' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:112:49: error: 'Parma_Polyhedra_Library::Interval_NS::value' declared as an 'inline' variable
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:112:49: error: template declaration of 'int Parma_Polyhedra_Library::Interval_NS::value'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:118:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:118:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:118:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:118:49: error: invalid type in declaration before ',' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:118:49: error: 'Parma_Polyhedra_Library::Interval_NS::value' declared as an 'inline' variable
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:118:49: error: template declaration of 'int Parma_Polyhedra_Library::Interval_NS::value'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:124:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:124:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:124:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:124:49: error: invalid type in declaration before ',' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:124:49: error: 'Parma_Polyhedra_Library::Interval_NS::value' declared as an 'inline' variable
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:124:49: error: template declaration of 'int Parma_Polyhedra_Library::Interval_NS::value'
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:130:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:130:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:130:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:130:50: error: expected initializer before '||' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:141:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:141:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:141:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:141:50: error: expected initializer before '||' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:147:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:147:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:147:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:147:50: error: expected initializer before '||' token
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:158:8: error: 'I_Result' does not name a type
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:167:29: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:167:45: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:167:56: error: 'Is_Interval' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:167:71: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:190:36: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:167:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:196:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:196:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:196:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:196:17: error: too many template-parameter-lists
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:214:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:214:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:214:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:214:17: error: too many template-parameter-lists
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:237:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:237:41: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:237:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:237:17: error: too many template-parameter-lists
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:253:8: error: 'I_Result' does not name a type
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:267:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:267:44: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:267:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:267:17: error: too many template-parameter-lists
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:289:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:289:44: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:289:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:289:17: error: too many template-parameter-lists
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:311:29: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:311:48: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:312:32: error: 'Is_Interval' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:312:50: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:344:67: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:311:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:366:27: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:366:44: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:366:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:366:17: error: too many template-parameter-lists
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:385:29: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:385:48: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:386:32: error: 'Is_Interval' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:386:50: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:416:64: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:385:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:445:29: error: 'Is_Singleton' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:445:48: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:446:32: error: 'Is_Interval' was not declared in this scope
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:446:50: error: '::value' has not been declared
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Box.cc:76:1: error: template argument 1 is invalid
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:445:17: error: expected nested-name-specifier
[ERROR]    /home/shift/mini2440/tools/arm-linux-toolchain/work/src/ppl-0.10.2/src/Interval.inlines.hh:445:17: error: expected '}' at end of input
[ERROR]    make[4]: *** [Box.lo] Error 1
[ERROR]    make[3]: *** [all] Error 2
[ERROR]    make[2]: *** [all-recursive] Error 1
[ERROR]    make[1]: *** [all] Error 2
[ERROR]    Build failed in step 'Installing PPL'
[ERROR]    Error happened in '/usr/local/lib/ct-ng-1.6.1/scripts/functions' in function 'CT_DoExecLog' (line unknown, sorry)
[ERROR]          called from '/usr/local/lib/ct-ng-1.6.1/scripts/build/companion_libs/ppl.sh' at line # 55 in function 'do_ppl'
[ERROR]          called from '/usr/local/lib/ct-ng-1.6.1/scripts/crosstool-NG.sh' at line # 562 in function 'main'
[ERROR]    Look at '/home/shift/mini2440/tools/arm-linux-toolchain/x-tools/4.4.3/build.log' for more info on this error.
[ERROR]  (elapsed: 295:13.02)
[00:22] / make[1]: *** [build] Error 2
make: *** [ppl+] Error 2
级别: 新手上路
UID: 42509
精华: 0
发帖: 34
金钱: 170 两
威望: 34 点
贡献值: 0 点
综合积分: 68 分
注册时间: 2011-04-08
最后登录: 2017-05-26
1楼  发表于: 2017-05-26 17:39
光盘里的工具链是在redhat平台下用crosstool-ng-1.6.1编译的,可能是Ubuntu15.10下的gcc版本比较高对ppl旧版本的一些代码识别错误造成的,我用CentOS6平台编译,大概过了1个小时左右就可以完成,并没有出现其他什么问题。