![](https://wildfiregames.com/forum/uploads/set_resources_1/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
skaiware
Community Members-
Posts
7 -
Joined
-
Last visited
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
skaiware's Achievements
![Rank: Tiro (1/14) Tiro](https://wildfiregames.com/forum/uploads/monthly_2021_07/1.png)
Tiro (1/14)
1
Reputation
-
> You might have a point. I'm not familiar enough with other software projects to know how they handle this in their respective build systems. Well I guess the majority of projects today uses cmake and ExternalProject_Add() : https://cmake.org/cmake/help/latest/module/ExternalProject.html I ve seen CMake capable to download/clone/pull the dep, unarchive, build, install and automatically setup linking for the main project to link with the sub external projects. > I m afraid real life commitments (eg. work) are going to take my focus for the next couple of days, so good luck. It looks like 0ad build system has accumulated too much technical debt. I prefer to wait for you to be back. Perhaps to be continued.
-
Ok still failing to link because make/ld still trying to use the OS boost libs instead of usr local libs. I dont see any external_libraries5.lua : $ find . -iname "extern*" ./libraries/source/spidermonkey/mozjs-38.0.0/media/webrtc/trunk/tools/gyp/test/rules/src/external ./libraries/source/spidermonkey/mozjs-38.0.0/media/webrtc/trunk/tools/gyp/test/rules/src/external/external.gyp ./libraries/source/spidermonkey/mozjs-38.0.0/media/webrtc/trunk/tools/gyp/test/external-cross-compile ./libraries/source/spidermonkey/mozjs-38.0.0/js/src/build-debug/config/external ./libraries/source/spidermonkey/mozjs-38.0.0/js/src/build-release/config/external ./libraries/source/spidermonkey/mozjs-38.0.0/config/external ./build/premake/extern_libs5.lua ./build/premake/extern_libs4.lua ./source/lib/external_libraries More globally, people anyway probably also have to build/install libcurl and probably libssh, and even some other third parties. The same kind of issue should then happen. Any needed third parties should be installed in /usr/local/lib, not in the OS system. Looks like the 0ad build system is missing an option to prefer the libs in /usr/local/lib, not the OS ones. Would nt such an option (for instance "--prefer-usr-local-libs", adding -L/usr/local/lib to linking commands) resolves this and upcoming linking issues ?
-
Ok tks. So 1st if 0ad expects/needs mt boost, then lets build the mt libs : sudo ./b2 threading=multi --layout=tagged --with-thread install $ ll /usr/local/lib/libboost_* -rw-r--r--. 1 root root 245756 Dec 12 20:54 /usr/local/lib/libboost_filesystem.a lrwxrwxrwx. 1 root root 29 Dec 12 20:53 /usr/local/lib/libboost_filesystem.so -> libboost_filesystem.so.1.68.0 -rwxr-xr-x. 1 root root 127208 Dec 12 20:53 /usr/local/lib/libboost_filesystem.so.1.68.0 -rw-r--r--. 1 root root 65844 Dec 12 20:54 /usr/local/lib/libboost_system.a -rw-r--r--. 1 root root 65844 Dec 16 16:36 /usr/local/lib/libboost_system-mt.a lrwxrwxrwx. 1 root root 28 Dec 16 16:36 /usr/local/lib/libboost_system-mt.so -> libboost_system-mt.so.1.68.0 -rwxr-xr-x. 1 root root 24800 Dec 16 16:36 /usr/local/lib/libboost_system-mt.so.1.68.0 lrwxrwxrwx. 1 root root 25 Dec 12 20:53 /usr/local/lib/libboost_system.so -> libboost_system.so.1.68.0 -rwxr-xr-x. 1 root root 24800 Dec 12 20:53 /usr/local/lib/libboost_system.so.1.68.0 -rw-r--r--. 1 root root 292928 Dec 16 16:37 /usr/local/lib/libboost_thread-mt.a lrwxrwxrwx. 1 root root 28 Dec 16 16:36 /usr/local/lib/libboost_thread-mt.so -> libboost_thread-mt.so.1.68.0 -rwxr-xr-x. 1 root root 187512 Dec 16 16:36 /usr/local/lib/libboost_thread-mt.so.1.68.0 Now just retrying to build 0ad without touching premake script yet but in theory it still should nt link correctly...
-
Yep : $ ll /usr/lib64/libboost_sy* lrwxrwxrwx. 1 root root 28 Sep 20 2017 /usr/lib64/libboost_system-mt.so -> libboost_system-mt.so.1.53.0 -rwxr-xr-x. 1 root root 15608 Aug 2 2017 /usr/lib64/libboost_system-mt.so.1.53.0 lrwxrwxrwx. 1 root root 25 Sep 20 2017 /usr/lib64/libboost_system.so -> libboost_system.so.1.53.0 -rwxr-xr-x. 1 root root 15592 Aug 2 2017 /usr/lib64/libboost_system.so.1.53.0 but I cannot uninstall it because needed it for some other softwares. Should nt update-workspaces.sh add -L/usr/local/lib to the linking commands ?
-
Hello @s0600204 1 $ ld --verbose | grep SEARCH_DIR SEARCH_DIR("=/usr/x86_64-redhat-linux/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/x86_64-redhat-linux/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); 2 pyrogenesis.make attached : it s trying to link with -lboost_filesystem-mt -lboost_system-mt but the default build of boost seems to st : $ ll /usr/local/lib/libboost_* -rw-r--r--. 1 root root 245756 Dec 12 20:54 /usr/local/lib/libboost_filesystem.a lrwxrwxrwx. 1 root root 29 Dec 12 20:53 /usr/local/lib/libboost_filesystem.so -> libboost_filesystem.so.1.68.0 -rwxr-xr-x. 1 root root 127208 Dec 12 20:53 /usr/local/lib/libboost_filesystem.so.1.68.0 -rw-r--r--. 1 root root 65844 Dec 12 20:54 /usr/local/lib/libboost_system.a lrwxrwxrwx. 1 root root 25 Dec 12 20:53 /usr/local/lib/libboost_system.so -> libboost_system.so.1.68.0 -rwxr-xr-x. 1 root root 24800 Dec 12 20:53 /usr/local/lib/libboost_system.so.1.68.0 3 I m on current svn head: $ svn log ------------------------------------------------------------------------ r21942 | Itms | 2018-12-03 03:07:00 -0800 (Mon, 03 Dec 2018) | 6 lines Target 10.9 as minimal OSX version in all scripts, in order to match the libraries build script. pyrogenesis.make
-
I ve tried : ./update-workspaces.sh --without-lobby --without-tests --without-pch cd gcc make clean make but still the same linking issues with boost. @stanislas69 are you speaking about the change to the pch file : $ more ../../../source/lib/pch/pch_boost.h | grep -C 5 filesystem // v2 is deprecated since 1.46 and removed entirely in 1.50 # define BOOST_FILESYSTEM_VERSION 3 #else # define BOOST_FILESYSTEM_VERSION 2 #endif #include <boost/filesystem.hpp> namespace fs = boost::filesystem; #endif // #ifndef INCLUDED_PCH_BOOST Is nt --without-pch get rid of that ?
-
Hello everybody, I have followed the instructions over there : https://trac.wildfiregames.com/wiki/BuildInstructions but got similar issues than gw1500 @gw1500se : ==== Building pyrogenesis (release) ==== main.cpp Linking pyrogenesis obj/pyrogenesis_Release/main.o: In function `generic_category': /usr/local/include/boost/system/error_code.hpp:498: undefined reference to `boost::system::detail::generic_category_ncx()' /usr/local/include/boost/system/error_code.hpp:498: undefined reference to `boost::system::detail::generic_category_ncx()' /usr/local/include/boost/system/error_code.hpp:498: undefined reference to `boost::system::detail::generic_category_ncx()' /usr/local/include/boost/system/error_code.hpp:498: undefined reference to `boost::system::detail::generic_category_ncx()' /usr/local/include/boost/system/error_code.hpp:498: undefined reference to `boost::system::detail::generic_category_ncx()' ../../../binaries/system/liblowlevel.a(file_system.o): In function `copy_file': /usr/local/include/boost/filesystem/operations.hpp:539: undefined reference to `boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::detail::copy_option, boost::system::error_code*)' /usr/local/include/boost/filesystem/operations.hpp:544: undefined reference to `boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::detail::copy_option, boost::system::error_code*)' collect2: error: ld returned 1 exit status I have installed the expected boost as documented : wget https://dl.bintray.com/boostorg/release/1.68.0/source/boost_1_68_0.tar.gz tar -xf boost_1_68_0.tar.gz cd boost_1_68_0/ ./bootstrap.sh --with-libraries=filesystem,system sudo ./b2 install $ ll /usr/local/lib/libboost_* -rw-r--r--. 1 root root 245756 Dec 12 20:54 /usr/local/lib/libboost_filesystem.a lrwxrwxrwx. 1 root root 29 Dec 12 20:53 /usr/local/lib/libboost_filesystem.so -> libboost_filesystem.so.1.68.0 -rwxr-xr-x. 1 root root 127208 Dec 12 20:53 /usr/local/lib/libboost_filesystem.so.1.68.0 -rw-r--r--. 1 root root 65844 Dec 12 20:54 /usr/local/lib/libboost_system.a lrwxrwxrwx. 1 root root 25 Dec 12 20:53 /usr/local/lib/libboost_system.so -> libboost_system.so.1.68.0 -rwxr-xr-x. 1 root root 24800 Dec 12 20:53 /usr/local/lib/libboost_system.so.1.68.0