免费注册 查看新帖 |

Chinaunix

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

急问,powerpc-.....-g++交叉编译的时候不支持c++标准库,该怎么办?? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-03-10 16:25 |只看该作者 |倒序浏览
如题,谢谢!!!!

论坛徽章:
5
摩羯座
日期:2014-07-22 09:03:552015元宵节徽章
日期:2015-03-06 15:50:392015亚冠之大阪钢巴
日期:2015-06-12 16:01:352015年中国系统架构师大会
日期:2015-06-29 16:11:2815-16赛季CBA联赛之四川
日期:2018-12-17 14:10:21
2 [报告]
发表于 2008-03-10 17:08 |只看该作者
你指的C++标准库是什么意思?

论坛徽章:
0
3 [报告]
发表于 2008-03-10 17:21 |只看该作者

回复 #2 T-bagwell 的帖子

比如说cout函数,vector库函数什么的,谢谢,是不是g++版本太低的原因啊

论坛徽章:
5
摩羯座
日期:2014-07-22 09:03:552015元宵节徽章
日期:2015-03-06 15:50:392015亚冠之大阪钢巴
日期:2015-06-12 16:01:352015年中国系统架构师大会
日期:2015-06-29 16:11:2815-16赛季CBA联赛之四川
日期:2018-12-17 14:10:21
4 [报告]
发表于 2008-03-11 12:15 |只看该作者
能说说你怎么编译的c++的库的吗?
板子上有c++的库没?

提示的错误是什么样的呢?

论坛徽章:
0
5 [报告]
发表于 2008-03-11 14:45 |只看该作者

回复 #4 T-bagwell 的帖子

我写了一个c++的函数,其中包含cout和vector,编译通不过,说是找不到这两个函数,所以我觉得是不是因为板子上的g++编译器版本太低,所以没有把c++标准库包含进去,如果是这样的话,请问你知不知道在那里下载高版本的g++编译器啊,非常感谢!!!


另外,我的power pc还不支持浮点运算,在编译内核时加入什么才能叫它支持呢????

论坛徽章:
5
摩羯座
日期:2014-07-22 09:03:552015元宵节徽章
日期:2015-03-06 15:50:392015亚冠之大阪钢巴
日期:2015-06-12 16:01:352015年中国系统架构师大会
日期:2015-06-29 16:11:2815-16赛季CBA联赛之四川
日期:2018-12-17 14:10:21
6 [报告]
发表于 2008-03-11 22:16 |只看该作者
跟编译器没关系吧?
你这样吧

uname -a
arm-linux-gcc -v
arm-linux-g++ -v
编译你的程序的例子,包括参数
cat /etc/ld.so.conf

都贴出来

论坛徽章:
0
7 [报告]
发表于 2008-03-12 14:59 |只看该作者

回复 #6 T-bagwell 的帖子

非常感谢!!!

程序cc.cpp:
#include <iostream>
using namespace std;
int main()
{
  cout<<"hello world\n"<<endl;
return 0;
}

# uname -a
Linux (none) 2.4.19pre1 #298 Wed Feb 11 13:34:31 CST 2004 ppc unknown

编译命令:/LinuxPPC/CDK/bin/powerpc-linux-g++ cc.cpp -o ccc
出错:
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(iostream.o): In function `_IO_ostream_withassign type_info function':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._8iostream+0x6: undefined reference to `__builtin_vec_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._8iostream+0x6: relocation truncated to fit: R_PPC_REL24 __builtin_vec_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._8iostream+0x7: undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._8iostream+0x7: relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7ostream+0x4: undefined reference to `__builtin_vec_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7ostream+0x4: relocation truncated to fit: R_PPC_REL24 __builtin_vec_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7ostream+0x5: undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7ostream+0x5: relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf7ostream+0x40): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf7ostream+0x40): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7istream+0x4: undefined reference to `__builtin_vec_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7istream+0x4: relocation truncated to fit: R_PPC_REL24 __builtin_vec_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7istream+0x58): undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._7istream+0x58): relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf7istream+0x40): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf7istream+0x40): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf8iostream+0x58): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf8iostream+0x58): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf8iostream+0x8c): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf8iostream+0x8c): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf8iostream+0xa8): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf8iostream+0xa8): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_istream_withassign+0x58): undefined reference to `__builtin_vec_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_istream_withassign+0x58): relocation truncated to fit: R_PPC_REL24 __builtin_vec_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_istream_withassign+0x68): undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_istream_withassign+0x68): relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_istream_withassign+0x58): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_istream_withassign+0x58): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_istream_withassign+0x74): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_istream_withassign+0x74): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_ostream_withassign+0x58): undefined reference to `__builtin_vec_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_ostream_withassign+0x58): relocation truncated to fit: R_PPC_REL24 __builtin_vec_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_ostream_withassign+0x68): undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t._._22_IO_ostream_withassign+0x68): relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_ostream_withassign+0x58): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_ostream_withassign+0x58): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_ostream_withassign+0x74): undefined reference to `__rtti_class'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/iostream.cc(.gnu.linkonce.t.__tf22_IO_ostream_withassign+0x74): relocation truncated to fit: R_PPC_REL24 __rtti_class
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(isgetline.o): In function `_sb_readline(streambuf *, long &, char)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/isgetline.cc:119: undefined reference to `__builtin_vec_new'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/isgetline.cc:119: relocation truncated to fit: R_PPC_REL24 __builtin_vec_new
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streambuf::streambuf(int)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:211: undefined reference to `__builtin_new'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:211: relocation truncated to fit: R_PPC_REL24 __builtin_new
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streambuf::~streambuf(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:224: undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:224: relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:224: undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:224: relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streammarker::~streammarker(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:322: undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:322: relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `ios::~ios(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.h:487: undefined reference to `__builtin_vec_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.h:487: relocation truncated to fit: R_PPC_REL24 __builtin_vec_delete
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.h:487: undefined reference to `__builtin_delete'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.h:487: relocation truncated to fit: R_PPC_REL24 __builtin_delete
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streambuf::_link_in(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: undefined reference to `__rtti_si'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: relocation truncated to fit: R_PPC_REL24 __rtti_si
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: undefined reference to `__rtti_si'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: relocation truncated to fit: R_PPC_REL24 __rtti_si
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streambuf::switch_to_get_mode(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:44: undefined reference to `__rtti_si'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:44: relocation truncated to fit: R_PPC_REL24 __rtti_si
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streambuf::free_backup_area(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:47: undefined reference to `__rtti_si'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:47: relocation truncated to fit: R_PPC_REL24 __rtti_si
/LinuxPPC/CDK/lib/gcc-lib/powerpc-linux/2.95.2/libstdc++.a(streambuf.o): In function `streambuf::_link_in(void)':
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: undefined reference to `__rtti_user'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: relocation truncated to fit: R_PPC_REL24 __rtti_user
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: undefined reference to `__rtti_user'
/LinuxPPC/usr/src/CDK/src/gcc-2.95.2/libio/streambuf.cc:41: relocation truncated to fit: R_PPC_REL24 __rtti_user
collect2: ld returned 1 exit status

论坛徽章:
0
8 [报告]
发表于 2008-03-12 15:01 |只看该作者

回复 #6 T-bagwell 的帖子

很着急,但是不知道该怎么办,谢谢帮忙。

论坛徽章:
5
摩羯座
日期:2014-07-22 09:03:552015元宵节徽章
日期:2015-03-06 15:50:392015亚冠之大阪钢巴
日期:2015-06-12 16:01:352015年中国系统架构师大会
日期:2015-06-29 16:11:2815-16赛季CBA联赛之四川
日期:2018-12-17 14:10:21
9 [报告]
发表于 2008-03-12 15:09 |只看该作者
字面上看是lib的问题
实际上就不知道了
我用的都是好好的,呵呵

论坛徽章:
5
摩羯座
日期:2014-07-22 09:03:552015元宵节徽章
日期:2015-03-06 15:50:392015亚冠之大阪钢巴
日期:2015-06-12 16:01:352015年中国系统架构师大会
日期:2015-06-29 16:11:2815-16赛季CBA联赛之四川
日期:2018-12-17 14:10:21
10 [报告]
发表于 2008-03-12 15:22 |只看该作者
  1. [root@localhost root]# vi cc.cpp
  2. [root@localhost root]# export PATH=/usr/local/arm/2.95.3/bin:$PATH
  3. [root@localhost root]# arm-linux-g++ -v
  4. Reading specs from /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/specs
  5. gcc version 2.95.3 20010315 (release)
  6. [root@localhost root]# arm-linux-g++ cc.cpp -o cc
  7. [root@localhost root]# arm-linux-g++ -v cc.cpp -o cc
  8. Reading specs from /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/specs
  9. gcc version 2.95.3 20010315 (release)
  10. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/cpp0 -lang-c++ -v -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -Dunix -D__arm__ -Dlinux -D__ELF__ -D__unix__ -D__arm__ -D__linux__ -D__ELF__ -D__unix -D__linux -Asystem(unix) -Asystem(posix) -Acpu(arm) -Amachine(arm) -D__EXCEPTIONS -D__CHAR_UNSIGNED__ -D__ARM_ARCH_3__ -D__APCS_32__ cc.cpp /tmp/cc3632Kk.ii
  11. GNU CPP version 2.95.3 20010315 (release) (ARM GNU/Linux with ELF)
  12. #include "..." search starts here:
  13. #include <...> search starts here:
  14. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/../../../../include/g++-3
  15. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/include
  16. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include
  17. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include
  18. End of search list.
  19. The following default directories have been omitted from the search path:
  20. End of omitted list.
  21. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/cc1plus /tmp/cc3632Kk.ii -quiet -dumpbase cc.cc -version -o /tmp/ccBKihSl.s
  22. GNU C++ version 2.95.3 20010315 (release) (arm-linux) compiled by GNU C version 2.95.2 20000220 (Debian GNU/Linux).
  23. /usr/local/arm/2.95.3/arm-linux/bin/as -o /tmp/cczRf4zL.o /tmp/ccBKihSl.s
  24. /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/collect2 -dynamic-linker /lib/ld-linux.so.2 -X -m armelf_linux -p -o cc /usr/local/arm/2.95.3/arm-linux/lib/crt1.o /usr/local/arm/2.95.3/arm-linux/lib/crti.o /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/crtbegin.o -L/usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3 -L/usr/local/arm/2.95.3/arm-linux/lib /tmp/cczRf4zL.o -lstdc++ -lm -lgcc -lc -lgcc /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/crtend.o /usr/local/arm/2.95.3/arm-linux/lib/crtn.o
  25. [root@localhost root]# uname -a
  26. Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 i686 i386 GNU/Linux
  27. [root@localhost root]# cat cc.cpp
  28. #include <iostream>
  29. using namespace std;
  30. int main()
  31. {
  32.           cout<<"hello world\n"<<endl;
  33.           return 0;
  34. }
  35. [root@localhost root]#
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP