[solved]- Trying to build older release 1.10.7 on Debian 10.x
Moderator: Forum Moderators
[solved]- Trying to build older release 1.10.7 on Debian 10.x
I am trying to build it on Debian 10.x, but it fails. I tried with 1.12.6 and it got built on the same machine. Below are the snippets for 1.10.7.
I generated the build files:
After that the make stage fails:
I tried using scons and it fails with a different error:
I generated the build files:
Code: Select all
$ cmake . -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/user/usr -DENABLE_NLS=OFF
Code: Select all
$ make
CMake Deprecation Warning at CMakeLists.txt:15 (cmake_policy):
The OLD behavior for policy CMP0005 will be removed from a future version
of CMake.
The cmake-policies(7) manual explains that the OLD behaviors of all
policies are deprecated and that a policy should be set to OLD only under
specific short-term circumstances. Projects should be ported to the NEW
behavior and not rely on setting a policy to OLD.
-- Boost version: 1.67.0
-- Found the following Boost libraries:
-- iostreams
-- program_options
-- regex
-- system
-- Could NOT find Gettext (missing: GETTEXT_MSGMERGE_EXECUTABLE GETTEXT_MSGFMT_EXECUTABLE)
-- Using FriBiDi: /usr/lib/x86_64-linux-gnu/libfribidi.so
-- Checking for module 'dbus-1'
-- No package 'dbus-1' found
Could not find dbus-1, Disabling notification support.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/Downloads/personal/wesnoth/wesnoth-1.10.7
[ 0%] Building CXX object src/CMakeFiles/wesnoth-game.dir/arrow.cpp.o
[ 1%] Building CXX object src/CMakeFiles/wesnoth-game.dir/builder.cpp.o
[ 1%] Building CXX object src/CMakeFiles/wesnoth-game.dir/cavegen.cpp.o
[ 1%] Building CXX object src/CMakeFiles/wesnoth-game.dir/clipboard.cpp.o
[ 1%] Building CXX object src/CMakeFiles/wesnoth-game.dir/construct_dialog.cpp.o
[ 2%] Building CXX object src/CMakeFiles/wesnoth-game.dir/cursor.cpp.o
[ 2%] Building CXX object src/CMakeFiles/wesnoth-game.dir/display.cpp.o
[ 2%] Building CXX object src/CMakeFiles/wesnoth-game.dir/events.cpp.o
[ 2%] Building CXX object src/CMakeFiles/wesnoth-game.dir/font.cpp.o
/home/user/Downloads/personal/wesnoth/wesnoth-1.10.7/src/font.cpp: In function ‘bool add_font_to_fontlist(config&, std::vector<font::subset_descriptor>&, const string&)’:
/home/user/Downloads/personal/wesnoth/wesnoth-1.10.7/src/font.cpp:1215:2: error: this ‘if’ clause does not guard... [-Werror=misleading-indentation]
if (!font)
^~
/home/user/Downloads/personal/wesnoth/wesnoth-1.10.7/src/font.cpp:1218:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
fontlist.push_back(font::subset_descriptor());
^~~~~~~~
/home/user/Downloads/personal/wesnoth/wesnoth-1.10.7/src/font.cpp: In member function ‘void font::{anonymous}::text_surface::bidi_cvt()’:
/home/user/Downloads/personal/wesnoth/wesnoth-1.10.7/src/font.cpp:508:17: error: ignoring return value of ‘FriBidiLevel fribidi_log2vis(const FriBidiChar*, FriBidiStrIndex, FriBidiParType*, FriBidiChar*, FriBidiStrIndex*, FriBidiStrIndex*, FriBidiLevel*)’, declared with attribute warn_unused_result [-Werror=unused-result]
fribidi_log2vis(bidi_logical, n, &base_dir, bidi_visual, NULL, NULL, NULL);
~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [src/CMakeFiles/wesnoth-game.dir/build.make:167: src/CMakeFiles/wesnoth-game.dir/font.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:346: src/CMakeFiles/wesnoth-game.dir/all] Error 2
make: *** [Makefile:152: all] Error
Code: Select all
$ scons
scons: Reading SConscript files ...
Saved options: default_targets = 'wesnoth,wesnothd'
Building Wesnoth version 1.10.7
AttributeError: 'module' object has no attribute 'config_checks':
File "/home/user/Downloads/personal/wesnoth/wesnoth-1.10.7/SConstruct", line 269:
configure_args = dict(custom_tests = init_metasconf(env, ["cplusplus", "python_devel", "sdl", "boost", "pango", "pkgconfig", "gettext", "lua"]), config_h = "config.h",
File "./scons/metasconf.py", line 8:
config_checks.update(module.config_checks)
Last edited by mzs_47 on October 10th, 2020, 8:00 pm, edited 1 time in total.
- Pentarctagon
- Project Manager
- Posts: 5599
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: Trying to build older release 1.10.7 on Debian 10.x
For cmake, you could try disabling ENABLE_STRICT_COMPILATION, since that's what's turning the warnings into errors. For scons it looks like some function was removed in the newer version in Debian 10 though, so that'd likely take additional effort to fix.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code
Re: Trying to build older release 1.10.7 on Debian 10.x
Hi mzs_47.
The clue is to not take the last release, but the last commit from that branch — there were added additional patches over time, just to keep them buildable.
AFAIK every stable branch can be built. Some time ago I compiled all branches, I left explanations about it in the script for Arch, also with instructions for Debian. And adjusted launcher files and such, to keep them installable side by side. Some people write blog posts about how to install software … I commented the script :-p Have a look here: https://aur.archlinux.org/cgit/aur.git/ ... snoth-1.10
The clue is to not take the last release, but the last commit from that branch — there were added additional patches over time, just to keep them buildable.
AFAIK every stable branch can be built. Some time ago I compiled all branches, I left explanations about it in the script for Arch, also with instructions for Debian. And adjusted launcher files and such, to keep them installable side by side. Some people write blog posts about how to install software … I commented the script :-p Have a look here: https://aur.archlinux.org/cgit/aur.git/ ... snoth-1.10
Try out the dark board theme.
Re: Trying to build older release 1.10.7 on Debian 10.x
Thank you !
Shiki, glad to know that community tries to build the old releases and keep them build ready, thank you!
It compiled even with the warnings(after disabling 'strict build', like Pentarctagon mentioned).
For any cmake newbie like me(who might stumble around this), I modified the cmake line, like below:
After the build, it complained about the data dir, I found out the config necessary by passing
Something like:
The other interesting thing I found is, there are third party servers allowing multiplayer for 1.10 version! One of my cousin still plays 1.10, so all this exercise was to build and play some maps with him! And 1.12 build was required to play sxrpg(Thanks to duuuude for introducing this to me).
https://wiki.wesnoth.org/MultiplayerServers
The only remaining bummer is, add-ons.wesnoth.org does not work for 1.10:
Shiki, glad to know that community tries to build the old releases and keep them build ready, thank you!
It compiled even with the warnings(after disabling 'strict build', like Pentarctagon mentioned).
For any cmake newbie like me(who might stumble around this), I modified the cmake line, like below:
Code: Select all
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/user/usr -DENABLE_NLS=OFF -DENABLE_STRICT_COMPILATION=OFF
After the build, it complained about the data dir, I found out the config necessary by passing
Code: Select all
./wesnoth --help
Code: Select all
./wesnoth --data-dir /path/to/the/untarred/source
https://wiki.wesnoth.org/MultiplayerServers
The only remaining bummer is, add-ons.wesnoth.org does not work for 1.10:
Code: Select all
20201011 01:22:07 warning network: Failed to connect to 144.76.5.6: Connection refused
20201011 01:22:07 warning network: Failed to connect to 2a01:4f8:190:8005:1111::120: Network is unreachable
20201011 01:22:07 error network: Tried all IPs. Giving up
20201011 01:22:07 error network: network_asio::error thrown during transaction with add-on server; "Network is unreachable"
20201011 01:22:07 error general: Remote host disconnected.
20201011 01:22:55 warning network: Failed to connect to 144.76.5.6: Connection refused
20201011 01:22:55 warning network: Failed to connect to 2a01:4f8:190:8005:1111::120: Network is unreachable
20201011 01:22:55 error network: Tried all IPs. Giving up
20201011 01:22:55 error network: network_asio::error thrown during transaction with add-on server; "Network is unreachable"
20201011 01:22:55 error general: Remote host disconnected.
- Pentarctagon
- Project Manager
- Posts: 5599
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: [solved]- Trying to build older release 1.10.7 on Debian 10.x
Accessing the add-ons server from in-game is only supported for the current and previous stable releases (1.10 for a long time was an exception since the legacy iOS port was based on 1.10). So to get add-ons for 1.10 and older, you'll need to manually download and decompress them from here.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code