areaDetector / ADPylon

An EPICS areaDetector driver for cameras from Basler using their Pylon SDK.
https://areadetector.github.io/areaDetector/ADPylon/ADPylon.html
1 stars 3 forks source link

compile problem #3

Closed davidwx closed 9 months ago

davidwx commented 9 months ago

/usr/bin/ld: warning: libGenApi_gcc_v3_1_Basler_pylon.so, needed by //opt/pylon/lib/libpylonbase.so.7.4, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libLog_gcc_v3_1_Basler_pylon.so, needed by //opt/pylon/lib/libpylonbase.so.7.4, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libGCBase_gcc_v3_1_Basler_pylon.so, needed by //opt/pylon/lib/libpylonbase.so.7.4, not found (try using -rpath or -rpath-link) //opt/pylon/lib/libpylonbase.so.7.4:对‘GenApi_3_1_Basler_pylon::CNodeMapFactory::CreateNodeMap(GenICam_3_1_Basler_pylon::gcstring const&, bool)’未定义的引用 //opt/pylon/lib/libpylonbase.so.7.4:对‘GenICam_3_1_Basler_pylon::operator+(GenICam_3_1_Basler_pylon::gcstring const&, GenICam_3_1_Basler_pylon::gcstring const&)’未定义的引用 //opt/pylon/lib/libpylonutility.so.7.4:对‘GenICam_3_1_Basler_pylon::gcstring_vector::begin() const’未定义的引用 //opt/pylon/lib/libpylonbase.so.7.4:对‘GenICam_3_1_Basler_pylon::gcstring_vector::const_iterator::operator*() const’未定义的引用

Why became to "//opt/pylon/lib"? I've installed the SDK in /opt/pylon/lib

davidwx commented 9 months ago

After I add a line "USR_CXXFLAGS_Linux += -std=c++11" into pylonApp/src/Makefile and a line "USR_LDFLAGS_Linux += -L $(PYLON_LIB) -Wl,-rpath,$(PYLON_LIB)" into ADPylon/iocs/pylonIOC/pylonApp/src/Makefile, the "//opt/pylon/lib" problem has been solved. But then many errors occured as below. I think it maybe the gcc problem. I'm using RH7.6(gcc 4.8.5,glibc2.17) /opt/pylon/lib/libpylonbase.so.7.4:对‘std::basic_ostream<char, std::char_traits >& std::operator<< <char, std::char_traits, std::allocator >(std::basic_ostream<char, std::char_traits >&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)@GLIBCXX_3.4.21’未定义的引用 /opt/pylon/lib/libpylonbase.so.7.4:对‘std::__cxx11::messages::close(int) const@GLIBCXX_3.4.21’未定义的引用 /opt/pylon/lib/libpylonbase.so.7.4:对‘std::cxx11::messages::get(int, int, int, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const@GLIBCXX_3.4.21’未定义的引用 /opt/pylon/lib/libpylonbase.so.7.4:对‘std::length_error::length_error(char const*)@GLIBCXX_3.4.21’未定义的引用 /opt/pylon/lib/libpylonbase.so.7.4:对‘VTT for std::cxx11::basic_stringstream<char, std::char_traits, std::allocator >@GLIBCXX_3.4.21’未定义的引用

xiaoqiangwang commented 9 months ago

Pylon SDK has minimum requirements of libc >=2.27 and libstdc++ >= 6.0.25, see /opt/pylon/share/pylon/README. RHEL7 has libc 2.17 and libstdc++ 6.0.19 however. RHEL8 meets this requirement.