Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

protobuf与glog一些引用找不到 #1175

Closed
gucasbrg opened this issue Jan 17, 2017 · 9 comments
Closed

protobuf与glog一些引用找不到 #1175

gucasbrg opened this issue Jan 17, 2017 · 9 comments
Assignees

Comments

@gucasbrg
Copy link

gucasbrg commented Jan 17, 2017

https://github.com/PaddlePaddle/Paddle/blob/develop/doc/getstarted/build_and_install/build_from_source_en.md 安装,出现以下错误:

Done processing test_FPException.cpp
Total errors found: 0
../../gserver/libpaddle_gserver.a(WarpCTCLayer.cpp.o): In function std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<unsigned long, unsigned long>(unsigned long const&, unsigned long const&, char const*)': /software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to_ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev'
../../gserver/libpaddle_gserver.a(ValidationLayer.cpp.o): In function SetNoArena': /software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210: undefined reference to_ZN6google8protobuf8internal26fixed_address_empty_stringB5cxx11E'
/software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210: undefined reference to _ZN6google8protobuf8internal26fixed_address_empty_stringB5cxx11E' ../../gserver/libpaddle_gserver.a(TransLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<int, int>(int const&, int const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(SumToOneNormLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<unsigned long, unsigned int>(unsigned long const&, unsigned int const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(SumToOneNormLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<float, double>(float const&, double const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(SubSequenceLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<bool, bool>(bool const&, bool const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(SubSequenceLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<unsigned int, unsigned long>(unsigned int const&, unsigned long const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(SubSequenceLayer.cpp.o):/software/Paddle/third_party/install/glog/include/glog/logging.h:689: more undefined references to_ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' follow
../../gserver/libpaddle_gserver.a(SpatialPyramidPoolLayer.cpp.o): In function SetNoArena': /software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210: undefined reference to_ZN6google8protobuf8internal26fixed_address_empty_stringB5cxx11E'
/software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210: undefined reference to _ZN6google8protobuf8internal26fixed_address_empty_stringB5cxx11E' ../../gserver/libpaddle_gserver.a(LinearChainCRF.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<float, int>(float const&, int const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(Layer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, char [8]>(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, char const (&) [8], char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(GetOutputLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, char [1]>(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, char const (&) [1], char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(ExpandLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<bool, unsigned long>(bool const&, unsigned long const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(ExpandLayer.cpp.o): In functionstd::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<long, long>(long const&, long const&, char const*)':
/software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' ../../gserver/libpaddle_gserver.a(ConvOperator.cpp.o):/software/Paddle/third_party/install/glog/include/glog/logging.h:689: more undefined references to_ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev' follow
../../gserver/libpaddle_gserver.a(RecurrentGradientMachine.cpp.o): In function SetNoArena': /software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210: undefined reference to_ZN6google8protobuf8internal26fixed_address_empty_stringB5cxx11E'
../../gserver/libpaddle_gserver.a(RecurrentGradientMachine.cpp.o): In function std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<long, int>(long const&, int const&, char const*)': /software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to_ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev'
../../gserver/libpaddle_gserver.a(MultiNetwork.cpp.o): In function std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<char [5], std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(char const (&) [5], std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, char const*)': /software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to_ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev'
../../gserver/libpaddle_gserver.a(MultiGradientMachine.cpp.o): In function std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<paddle::enumeration_wrapper::ParameterType, paddle::enumeration_wrapper::ParameterType>(paddle::enumeration_wrapper::ParameterType const&, paddle::enumeration_wrapper::ParameterType const&, char const*)': /software/Paddle/third_party/install/glog/include/glog/logging.h:689: undefined reference to_ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev'
../../gserver/libpaddle_gserver.a(GradientMachine.cpp.o): In function paddle::GradientMachine::create(std::istream&, paddle::TrainerConfig*)': /software/Paddle/paddle/gserver/gradientmachines/GradientMachine.cpp:95: undefined reference togoogle::protobuf::MessageLite::ParseFromString(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)'
../../gserver/libpaddle_gserver.a(PyDataProvider.cpp.o): In function `std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<char*, char const*>(char* const&, char const* const&, char const*)':

另外CMakeFiles/openblas.dir/build.make 中
/usr/bin/gmake FC=/usr/bin/gfortran CC=/usr/local/bin/gcc HOSTCC=/usr/local/bin/gcc NO_SHARED=1 BINARY=64 U
SE_THREADS=1 NUM_THREADS=8 TARGET=SANDYBRIDGE libs netlib
如果不加另外的参数,openBLAS貌似也编译不过去

@gangliao
Copy link
Contributor

@gucasbrg 请问你用的什么系统, 什么版本

@gangliao gangliao self-assigned this Jan 17, 2017
@gucasbrg
Copy link
Author

gucasbrg commented Jan 18, 2017

CentOS 6.8
gcc5.2
Python 2.7.10
无GPU编译
cmake .. -DWITH_GPU=OFF

@gangliao
Copy link
Contributor

gangliao commented Jan 18, 2017

@gucasbrg
能否帮我确认一下/software/Paddle/third_party/install/glog和/software/Paddle/third_party/install/protobuf的静态库是lib还是lib64目录 @gucasbrg

看样子是没有链接到

@gucasbrg
Copy link
Author

gucasbrg commented Jan 18, 2017

@gangliao
in this path:/software/Paddle/third_party/install/
gflags\glog\gtest\openblas\warpctc\zlib:lib
protobuf:lib64

@gangliao
Copy link
Contributor

@gucasbrg 谢谢 我找一个docker centos 6.8试一下

@reyoung
Copy link
Collaborator

reyoung commented Jan 18, 2017

BTW, CentOS 6 为什么是gcc 5.2呢?@gucasbrg 纯粹好奇。。应该还用了repl之类的源吧?

@gucasbrg
Copy link
Author

@reyoung 因为跑别的框架的缘故,自己重新装的高版本的gcc

@gucasbrg
Copy link
Author

gucasbrg commented Jan 18, 2017

用scl enable devtoolset-4 -- make DYNAMIC_ARCH=1验证
貌似是GCC5中cxx11的问题
CMakeFiles/test_ThreadBarrier.dir/test_ThreadBarrier.cpp.o:在函数‘std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<unsigned long, unsigned long>(unsigned long const&, unsigned long const&, char const*)’中:
/software/Paddle/third_party/install/glog/include/glog/logging.h:689:对‘google::base::CheckOpMessageBuilder::NewStringabi:cxx11’未定义的引用
../../gserver/libpaddle_gserver.a(ValidationLayer.cpp.o):在函数‘google::protobuf::internal::ArenaStringPtr::SetNoArena(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)’中:
/software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210:对‘google::protobuf::internal::fixed_address_empty_string[abi:cxx11]’未定义的引用
/software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210:对‘google::protobuf::internal::fixed_address_empty_string[abi:cxx11]’未定义的引用
../../gserver/libpaddle_gserver.a(TransLayer.cpp.o):在函数‘std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<int, int>(int const&, int const&, char const*)’中:
/software/Paddle/third_party/install/glog/include/glog/logging.h:689:对‘google::base::CheckOpMessageBuilder::NewStringabi:cxx11’未定义的引用
../../gserver/libpaddle_gserver.a(SumToOneNormLayer.cpp.o):在函数‘std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<unsigned long, unsigned int>(unsigned long const&, unsigned int const&, char const*)’中:
/software/Paddle/third_party/install/glog/include/glog/logging.h:689:对‘google::base::CheckOpMessageBuilder::NewStringabi:cxx11’未定义的引用
../../gserver/libpaddle_gserver.a(SumToOneNormLayer.cpp.o):在函数‘std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<float, double>(float const&, double const&, char const*)’中:
/software/Paddle/third_party/install/glog/include/glog/logging.h:689:对‘google::base::CheckOpMessageBuilder::NewStringabi:cxx11’未定义的引用
../../gserver/libpaddle_gserver.a(SubSequenceLayer.cpp.o):在函数‘std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<bool, bool>(bool const&, bool const&, char const*)’中:
/software/Paddle/third_party/install/glog/include/glog/logging.h:689:对‘google::base::CheckOpMessageBuilder::NewStringabi:cxx11’未定义的引用
../../gserver/libpaddle_gserver.a(SubSequenceLayer.cpp.o):在函数‘std::__cxx11::basic_string<char, std::char_traits, std::allocator >* google::MakeCheckOpString<unsigned int, unsigned long>(unsigned int const&, unsigned long const&, char const*)’中:
/software/Paddle/third_party/install/glog/include/glog/logging.h:689:对‘google::base::CheckOpMessageBuilder::NewStringabi:cxx11’未定义的引用
../../gserver/libpaddle_gserver.a(SubSequenceLayer.cpp.o):/software/Paddle/third_party/install/glog/include/glog/logging.h:689: more undefined references to `google::base::CheckOpMessageBuilder::NewStringabi:cxx11' follow
../../gserver/libpaddle_gserver.a(SpatialPyramidPoolLayer.cpp.o):在函数‘google::protobuf::internal::ArenaStringPtr::SetNoArena(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)’中:
/software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210:对‘google::protobuf::internal::fixed_address_empty_string[abi:cxx11]’未定义的引用
/software/Paddle/third_party/install/protobuf/include/google/protobuf/arenastring.h:210:对‘google::protobuf::internal::fixed_address_empty_string[abi:cxx11]’未定义的引用

@gangliao
Copy link
Contributor

zhhsplendid pushed a commit to zhhsplendid/Paddle that referenced this issue Sep 25, 2019
* improve seq_pool api cn doc test=document_preview

* refine sequence last and first pool doc test=document_preview

* refine sequence_pool dataType test=document_preview

* fix input dtype

* add dataType

* fix datatype
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants