LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2249|回复: 2

从北大天网下载的搜索引挚编译出错,下面是详细信息

[复制链接]
发表于 2006-8-9 09:40:51 | 显示全部楼层 |阅读模式
下载地址
http://net.pku.edu.cn/~webg/src/TSE/
开发人员的回复是让我换一个GCC,但GCC不好换啊,而且我是在服务器上装的,更不能随便动


  1. [www@localhost index]$ make
  2. g++ -o DocSegment DocSegment.o Md5.o Url.o Document.o StrFun.o Query.o DisplayRs                                                                              t.o ChSeg/HzSeg.o ChSeg/Dict.o
  3. /usr/bin/ld: Warning: size of symbol `std::basic_string<char, std::char_traits<c                                                                              har>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::a                                                                              llocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<                                                                              char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<c                                                                              har> > const&)' changed from 136 in DisplayRst.o to 95 in ChSeg/HzSeg.o
  4. /usr/bin/ld: Warning: size of symbol `std::_Rb_tree<std::basic_string<char, std:                                                                              :char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, st                                                                              d::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::p                                                                              air<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const                                                                              , int> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocat                                                                              or<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<                                                                              char>, std::allocator<char> > const, int> > >::_M_erase(std::_Rb_tree_node<std::                                                                              pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > cons                                                                              t, int> >*)' changed from 133 in Query.o to 89 in ChSeg/Dict.o
  5. /usr/bin/ld: Warning: size of symbol `std::_Rb_tree<std::basic_string<char, std:                                                                              :char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, st                                                                              d::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::p                                                                              air<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const                                                                              , int> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocat                                                                              or<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<                                                                              char>, std::allocator<char> > const, int> > >::insert_unique(std::pair<std::basi                                                                              c_string<char, std::char_traits<char>, std::allocator<char> > const, int> const&                                                                              )' changed from 370 in Query.o to 352 in ChSeg/Dict.o
  6. /usr/bin/ld: Warning: size of symbol `std::_Rb_tree<std::basic_string<char, std:                                                                              :char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, st                                                                              d::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::p                                                                              air<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const                                                                              , int> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocat                                                                              or<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<                                                                              char>, std::allocator<char> > const, int> > >::_M_insert(std::_Rb_tree_node_base                                                                              *, std::_Rb_tree_node_base*, std::pair<std::basic_string<char, std::char_traits<                                                                              char>, std::allocator<char> > const, int> const&)' changed from 300 in Query.o t                                                                              o 364 in ChSeg/Dict.o
  7. /usr/bin/ld: warning: i386 architecture of input file `ChSeg/HzSeg.o' is incompa                                                                              tible with i386:x86-64 output
  8. /usr/bin/ld: warning: i386 architecture of input file `ChSeg/Dict.o' is incompat                                                                              ible with i386:x86-64 output
  9. ChSeg/HzSeg.o(.text+0x62): In function `CHzSeg::SegmentHzStrMM(CDict&, std::basi                                                                              c_string<char, std::char_traits<char>, std::allocator<char> >) const':
  10. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  11. ChSeg/HzSeg.o(.text+0x89): In function `CHzSeg::SegmentHzStrMM(CDict&, std::basi                                                                              c_string<char, std::char_traits<char>, std::allocator<char> >) const':
  12. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  13. ChSeg/HzSeg.o(.text+0x11e): In function `CHzSeg::SegmentHzStrMM(CDict&, std::bas                                                                              ic_string<char, std::char_traits<char>, std::allocator<char> >) const':
  14. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  15. ChSeg/HzSeg.o(.text+0x329): In function `CHzSeg::SegmentSentenceMM(CDict&, std::                                                                              basic_string<char, std::char_traits<char>, std::allocator<char> >) const':
  16. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  17. ChSeg/HzSeg.o(.text+0x394): In function `CHzSeg::SegmentSentenceMM(CDict&, std::                                                                              basic_string<char, std::char_traits<char>, std::allocator<char> >) const':
  18. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  19. ChSeg/HzSeg.o(.text+0x55e): more undefined references to `std::basic_string<char                                                                              , std::char_traits<char>, std::allocator<char> >::basic_string(std::basic_string                                                                              <char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsi                                                                              gned int)' follow
  20. ChSeg/HzSeg.o(.text+0xc4f): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  21. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::find(char const*, unsigned int, unsigned int) const'
  22. ChSeg/HzSeg.o(.text+0xc79): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  23. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::find(char const*, unsigned int, unsigned int) const'
  24. ChSeg/HzSeg.o(.text+0xca1): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  25. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  26. ChSeg/HzSeg.o(.text+0xced): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  27. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::find(char const*, unsigned int, unsigned int) const'
  28. ChSeg/HzSeg.o(.text+0xe00): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  29. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::rfind(char const*, unsigned int, unsigned int) const'
  30. ChSeg/HzSeg.o(.text+0xe38): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  31. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::replace(unsigned int, unsigned int, char const*, unsigned int)                                                                              '
  32. ChSeg/HzSeg.o(.text+0xe66): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  33. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::append(char const*, unsigned int)'
  34. ChSeg/HzSeg.o(.text+0xe74): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  35. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_S_empty_rep_storage'
  36. ChSeg/HzSeg.o(.text+0xe83): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  37. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_S_empty_rep_storage'
  38. ChSeg/HzSeg.o(.text+0xe95): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  39. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::find(char const*, unsigned int, unsigned int) const'
  40. ChSeg/HzSeg.o(.text+0xecb): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  41. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, s                                                                              td::allocator<char> > const&, unsigned int, unsigned int)'
  42. ChSeg/HzSeg.o(.text+0xf8b): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  43. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::replace(unsigned int, unsigned int, char const*, unsigned int)                                                                              '
  44. ChSeg/HzSeg.o(.text+0xfa4): In function `CHzSeg::SegmentURL(CDict&, std::basic_s                                                                              tring<char, std::char_traits<char>, std::allocator<char> >) const':
  45. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::replace(unsigned int, unsigned int, char const*, unsigned int)                                                                              '
  46. ChSeg/HzSeg.o(.gnu.linkonce.t._ZNSs15_M_replace_safeIPKcEERSsN9__gnu_cxx17__norm                                                                              al_iteratorIPcSsEES6_T_S7_+0x29): In function `std::basic_string<char, std::char                                                                              _traits<char>, std::allocator<char> >& std::basic_string<char, std::char_traits<                                                                              char>, std::allocator<char> >::_M_replace_safe<char const*>(__gnu_cxx::__normal_                                                                              iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<c                                                                              har> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_                                                                              traits<char>, std::allocator<char> > >, char const*, char const*)':
  47. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_M_mutate(unsigned int, unsigned int, unsigned int)'
  48. ChSeg/HzSeg.o(.gnu.linkonce.t._ZNSs15_M_replace_safeIN9__gnu_cxx17__normal_itera                                                                              torIPcSsEEEERSsS3_S3_T_S5_+0x29): In function `std::basic_string<char, std::char                                                                              _traits<char>, std::allocator<char> >& std::basic_string<char, std::char_traits<                                                                              char>, std::allocator<char> >::_M_replace_safe<__gnu_cxx::__normal_iterator<char                                                                              *, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(__                                                                              gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>                                                                              , std::allocator<char> > >, __gnu_cxx::__normal_iterator<char*, std::basic_strin                                                                              g<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_it                                                                              erator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<cha                                                                              r> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_tr                                                                              aits<char>, std::allocator<char> > >)':
  49. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_M_mutate(unsigned int, unsigned int, unsigned int)'
  50. ChSeg/HzSeg.o(.gnu.linkonce.t._ZNSs12_S_constructIPKcEEPcT_S3_RKSaIcESt20forward                                                                              _iterator_tag+0x25): In function `char* std::basic_string<char, std::char_traits                                                                              <char>, std::allocator<char> >::_S_construct<char const*>(char const*, char cons                                                                              t*, std::allocator<char> const&, std::forward_iterator_tag)':
  51. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_Rep::_S_create(unsigned int, std::allocator<char> const&)'
  52. ChSeg/HzSeg.o(.gnu.linkonce.t._ZNSs12_S_constructIPKcEEPcT_S3_RKSaIcESt20forward                                                                              _iterator_tag+0x55): In function `char* std::basic_string<char, std::char_traits                                                                              <char>, std::allocator<char> >::_S_construct<char const*>(char const*, char cons                                                                              t*, std::allocator<char> const&, std::forward_iterator_tag)':
  53. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_S_empty_rep_storage'
  54. ChSeg/HzSeg.o(.gnu.linkonce.t._ZNSs12_S_constructIPKcEEPcT_S3_RKSaIcESt20forward                                                                              _iterator_tag+0x62): In function `char* std::basic_string<char, std::char_traits                                                                              <char>, std::allocator<char> >::_S_construct<char const*>(char const*, char cons                                                                              t*, std::allocator<char> const&, std::forward_iterator_tag)':
  55. : undefined reference to `std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> >::_S_empty_rep_storage'
  56. ChSeg/Dict.o(.text+0x14): In function `CDict::CDict()':
  57. : undefined reference to `std::__default_alloc_template<true, 0>::allocate(unsig                                                                              ned int)'
  58. ChSeg/Dict.o(.text+0xb0): In function `CDict::CDict()':
  59. : undefined reference to `std::__default_alloc_template<true, 0>::allocate(unsig                                                                              ned int)'
  60. ChSeg/Dict.o(.gnu.linkonce.t._ZNSt14__simple_allocISt13_Rb_tree_nodeISt4pairIKSs                                                                              iEESt24__default_alloc_templateILb1ELi0EEE10deallocateEPS4_j+0x17): In function                                                                               `std::__simple_alloc<std::_Rb_tree_node<std::pair<std::basic_string<char, std::c                                                                              har_traits<char>, std::allocator<char> > const, int> >, std::__default_alloc_tem                                                                              plate<true, 0> >::deallocate(std::_Rb_tree_node<std::pair<std::basic_string<char                                                                              , std::char_traits<char>, std::allocator<char> > const, int> >*, unsigned int)':
  61. : undefined reference to `std::__default_alloc_template<true, 0>::deallocate(voi                                                                              d*, unsigned int)'
  62. ChSeg/Dict.o(.gnu.linkonce.t._ZNSt8_Rb_treeISsSt4pairIKSsiESt10_Select1stIS2_ESt                                                                              4lessISsESaIS2_EE14_M_create_nodeERKS2_+0xf): In function `std::_Rb_tree<std::ba                                                                              sic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::                                                                              basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, s                                                                              td::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::al                                                                              locator<char> > const, int> >, std::less<std::basic_string<char, std::char_trait                                                                              s<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<ch                                                                              ar, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_create_no                                                                              de(std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char                                                                              > > const, int> const&)':
  63. : undefined reference to `std::__default_alloc_template<true, 0>::allocate(unsig                                                                              ned int)'
  64. ChSeg/Dict.o(.gnu.linkonce.t._ZNSt8_Rb_treeISsSt4pairIKSsiESt10_Select1stIS2_ESt                                                                              4lessISsESaIS2_EE14_M_create_nodeERKS2_+0x4b): In function `std::_Rb_tree<std::b                                                                              asic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std:                                                                              :basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>,                                                                               std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::a                                                                              llocator<char> > const, int> >, std::less<std::basic_string<char, std::char_trai                                                                              ts<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<c                                                                              har, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_create_n                                                                              ode(std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<cha                                                                              r> > const, int> const&)':
  65. : undefined reference to `std::__default_alloc_template<true, 0>::deallocate(voi                                                                              d*, unsigned int)'
  66. collect2: ld returned 1 exit status
  67. make: *** [DocSegment] Error 1






  68. 开发人员的回复

  69. 1.index文件编译出错
  70. 可能是gcc版本不一样,你的应该是高版本吧,你下载一个同我的类似的版本试一下.
  71. 我的是gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-20)
  72. 下面是我make时候输出的信息.

  73. =====================================
  74. [yhf@bigpc index]$ make
  75. g++ -c -O2 -I   -c -o DocIndex.o DocIndex.cpp
  76. g++ -c -O2 -I   -c -o Md5.o Md5.cpp
  77. g++ -c -O2 -I   -c -o Url.o Url.cpp
  78. g++ -c -O2 -I   -c -o Document.o Document.cpp
  79. g++ -c -O2 -I   -c -o StrFun.o StrFun.cpp
  80. g++ -c -O2 -I   -c -o Query.o Query.cpp
  81. g++ -c -O2 -I   -c -o DisplayRst.o DisplayRst.cpp
  82. g++ -o DocIndex DocIndex.o Md5.o Url.o Document.o StrFun.o Query.o DisplayRst.o
  83. g++ -c -O2 -I   -c -o DocSegment.o DocSegment.cpp
  84. g++ -o DocSegment DocSegment.o Md5.o Url.o Document.o StrFun.o Query.o DisplayRst.o ChSeg/HzSeg.o ChSeg/Dict.o
  85. g++ -c -O2 -I   -c -o TSESearch.o TSESearch.cpp
  86. g++ -o TSESearch TSESearch.o Md5.o Url.o Document.o StrFun.o Query.o DisplayRst.o ChSeg/HzSeg.o ChSeg/Dict.o
  87. g++ -c -O2 -I   -c -o Snapshot.o Snapshot.cpp
  88. g++ -o Snapshot Snapshot.o Md5.o Url.o Document.o StrFun.o Query.o DisplayRst.o
  89. g++ -c -O2 -I   -c -o CrtForwardIdx.o CrtForwardIdx.cpp
  90. g++ -o CrtForwardIdx CrtForwardIdx.o
  91. g++ -c -O2 -I   -c -o CrtInvertedIdx.o CrtInvertedIdx.cpp
  92. g++ -o CrtInvertedIdx CrtInvertedIdx.o
复制代码
发表于 2006-8-9 11:10:30 | 显示全部楼层
check if you have multiple versions of gcc installed. if you do, add the following options when "./configure"

CC=gcc32 CXX=g++32 CPPFLAGS=-I/usr/include/c++/3.2.3     LDFLAGS=-L/usr/lib/gcc-lib/i386-redhat-linux/3.2.3
回复 支持 反对

使用道具 举报

发表于 2006-8-9 14:57:51 | 显示全部楼层
/usr/bin/ld: warning: i386 architecture of input file `ChSeg/HzSeg.o' is incompa     
从这句来看,是否下载的源码里包含有不开源的obj?而且这些obj是编译为i386指令的,而楼主的服务器不是i386架构,或者所用的编译器/连接器不是输出 i386指令的。

2楼的兄弟说的也有道理,不过给的解决方案假定人家是用rh,好像比较武断
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表