Closed aminagojak closed 5 months ago
Building the project (on a linux machine) with
cmake -S . -B build && cmake --build build
results in the following output
[ 3%] Building CXX object AdsLib/CMakeFiles/ads.dir/AdsDef.cpp.o [ 7%] Building CXX object AdsLib/CMakeFiles/ads.dir/AdsDevice.cpp.o [ 11%] Building CXX object AdsLib/CMakeFiles/ads.dir/AdsFile.cpp.o [ 15%] Building CXX object AdsLib/CMakeFiles/ads.dir/AdsLib.cpp.o [ 19%] Building CXX object AdsLib/CMakeFiles/ads.dir/Frame.cpp.o [ 23%] Building CXX object AdsLib/CMakeFiles/ads.dir/LicenseAccess.cpp.o [ 26%] Building CXX object AdsLib/CMakeFiles/ads.dir/Log.cpp.o [ 30%] Building CXX object AdsLib/CMakeFiles/ads.dir/RouterAccess.cpp.o [ 34%] Building CXX object AdsLib/CMakeFiles/ads.dir/RTimeAccess.cpp.o [ 38%] Building CXX object AdsLib/CMakeFiles/ads.dir/Sockets.cpp.o [ 42%] Building CXX object AdsLib/CMakeFiles/ads.dir/RegistryAccess.cpp.o [ 46%] Building CXX object AdsLib/CMakeFiles/ads.dir/SymbolAccess.cpp.o [ 50%] Building CXX object AdsLib/CMakeFiles/ads.dir/bhf/ParameterList.cpp.o [ 53%] Building CXX object AdsLib/CMakeFiles/ads.dir/standalone/AdsLib.cpp.o [ 57%] Building CXX object AdsLib/CMakeFiles/ads.dir/standalone/AmsConnection.cpp.o [ 61%] Building CXX object AdsLib/CMakeFiles/ads.dir/standalone/AmsNetId.cpp.o [ 65%] Building CXX object AdsLib/CMakeFiles/ads.dir/standalone/AmsPort.cpp.o [ 69%] Building CXX object AdsLib/CMakeFiles/ads.dir/standalone/AmsRouter.cpp.o [ 73%] Building CXX object AdsLib/CMakeFiles/ads.dir/standalone/NotificationDispatcher.cpp.o [ 76%] Linking CXX shared library libads.so [ 76%] Built target ads [ 80%] Building CXX object AdsTool/CMakeFiles/AdsTool.dir/main.cpp.o [ 84%] Linking CXX executable AdsTool /usr/bin/ld: CMakeFiles/AdsTool.dir/main.cpp.o: in function `RunECat(AmsNetId, unsigned short, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bhf::Commandline&)': main.cpp:(.text+0xd43): undefined reference to `bhf::ads::ECatAccess::ECatAccess(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, AmsNetId, unsigned short)' /usr/bin/ld: main.cpp:(.text+0xd78): undefined reference to `bhf::ads::ECatAccess::ListECatMasters(std::ostream&) const' collect2: error: ld returned 1 exit status make[2]: *** [AdsTool/CMakeFiles/AdsTool.dir/build.make:98: AdsTool/AdsTool] Error 1 make[1]: *** [CMakeFiles/Makefile2:178: AdsTool/CMakeFiles/AdsTool.dir/all] Error 2 make: *** [Makefile:136: all] Error 2
Seems like ECatAccess.cpp was not added in the AdsLib CMakeLists.txt source list.
ECatAccess.cpp
AdsLib
CMakeLists.txt
Same problem
should be fixed by https://github.com/Beckhoff/ADS/commit/4346931dcfa26687cd8be4fb2b52206b82632444
Building the project (on a linux machine) with
results in the following output
Seems like
ECatAccess.cpp
was not added in theAdsLib
CMakeLists.txt
source list.