Dependencies version in different distirbutives

Programmers discuss here anything related to FreeOrion programming. Primarily for the developers to discuss.

Moderator: Committer

Message
Author
o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Dependencies version in different distirbutives

#1 Post by o01eg »

I've managed to see some dependencies version:
Version SDK v13 Ubuntu 20.04 LTS Ubuntu 21.04 Debian 11 testing Fedora 32 Fedora 33 Fedora 34 Android
Cmake - 3.16.3 3.18.4 3.18.4 3.17 3.18 3.19 3.10 (or system any)
Python 3.7.12 3.8.2 3.9.2 3.9.2 3.8.2 3.9.0 3.9.4 3.9
Boost 1.79 1.71.0 1.74.0 1.74.0 1.69 1.73 1.75 1.78
SDL 2.0.8 2.0.10 2.0.14 2.0.14 2.0.12 2.0.12 2.0.12 -
What about to raise minimum required boost version to 1.62 ?
Last edited by o01eg on Sat Aug 06, 2022 6:40 pm, edited 10 times in total.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

Ophiuchus
Programmer
Posts: 3427
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Dependencies version in different distirbutives

#2 Post by Ophiuchus »

Debian looks well maintained stretch (Debian 9) has 0.4.6 and 0.4.8 via official backports repositories. I do not know who supports debian, but in principle if you run debian 9 you have direct access to snapd (via apt install), so in principle the debian-9 for 0.4.9 story could be: install it via snap. Should be tested though beforehand.

I base the snap builds on the long-term stable cores (core18 aka ubuntu 18.4), so a bump of minimal boost up to 1.65 would be fine for me.

I am not sure when core20 is stable (it should be in april) - as far as i can see it will have boost 1.71.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

raptor
Space Squid
Posts: 87
Joined: Sat Jun 02, 2012 11:29 pm

Re: Dependencies version in different distirbutives

#3 Post by raptor »

Some others:
VersionopenSUSE 15.1openSUSE Tumbleweed
Cmake3.103.16
Python2.7 (3.5 optional)3.7
Boost1.661.71
SDL2.0.82.0.12

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13586
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Dependencies version in different distirbutives

#4 Post by Geoff the Medio »

o01eg wrote: Sun Mar 15, 2020 2:55 pmWhat about to raise minimum required boost version to 1.62 ?
What would be the advantage of doing so?

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: Dependencies version in different distirbutives

#5 Post by adrian_broher »

> What about to raise minimum required boost version to 1.62 ?

Is there anything that you need from 1.62 or rather from between 1.58 and 1.62?
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#6 Post by o01eg »

At least we can remove some compatibility code. Moreover CI doesn't test for boost below 1.62.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13586
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Dependencies version in different distirbutives

#7 Post by Geoff the Medio »

o01eg wrote: Tue Mar 17, 2020 5:50 amAt least we can remove some compatibility code.
I don't see a lot of relevant cases where the boost version is checked... A quick search for "BOOST_VERSION" just found

https://github.com/freeorion/freeorion/ ... s.cpp#L515

that is testing for Boost versions less than 1.66.

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#8 Post by o01eg »

Geoff the Medio wrote: Wed Mar 18, 2020 9:47 am
o01eg wrote: Tue Mar 17, 2020 5:50 amAt least we can remove some compatibility code.
I don't see a lot of relevant cases where the boost version is checked... A quick search for "BOOST_VERSION" just found

https://github.com/freeorion/freeorion/ ... s.cpp#L515

that is testing for Boost versions less than 1.66.
Cmake has checks for "${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}", but I found only one checks less than 1.62 at https://github.com/freeorion/freeorion/ ... s.txt#L283
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#9 Post by o01eg »

Updated distros tables and removed those with python 3.5.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#10 Post by o01eg »

I think we could raise minimal cmake to 3.10 and maybe even boost to 1.65.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#11 Post by o01eg »

One of advantages to bump boost to 1.64 is to use process library https://www.boost.org/doc/libs/1_64_0/d ... ocess.html instead of own code.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#12 Post by o01eg »

Removed unsupported distributives after upgrade to Python 3.8 and Boost 1.69.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#13 Post by o01eg »

I've updated list of available dependencies. Maybe we can update minimum supported Python to 3.9 after SDK update?
Attachments
freeorion-dependencies.ods
(13.59 KiB) Downloaded 85 times
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13586
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Dependencies version in different distirbutives

#14 Post by Geoff the Medio »

At least I'd like to drop support for Fedora 32 and Ubuntu 20.04 due to Boost 1.69 and 1.71 being incompatible with C++20.
https://stackoverflow.com/questions/627 ... -under-c20
https://github.com/boostorg/signals2/co ... 80a4fa8cec

( Your table says Ubuntu 20.04 should have boost 1.71 but the GitHub workflow build log reports 1.69: https://github.com/freeorion/freeorion/ ... step:10:74 )

So perhaps set Boost 1.73 as minimum required?

o01eg
Programmer
Posts: 1998
Joined: Sat Dec 10, 2011 5:46 am

Re: Dependencies version in different distirbutives

#15 Post by o01eg »

Geoff the Medio wrote: Fri Apr 21, 2023 5:14 pm ( Your table says Ubuntu 20.04 should have boost 1.71 but the GitHub workflow build log reports 1.69: https://github.com/freeorion/freeorion/ ... step:10:74 )
I suppose it because FindBoosr.cmake report minimum required version instead of found one. I could print message with actual version from CMake.
Geoff the Medio wrote: Fri Apr 21, 2023 5:14 pm So perhaps set Boost 1.73 as minimum required?
Yes, I suppose it's fine.

Also I'd like to test if Debian stable supports c++20. Support two Ubuntu LTSs would be fine but I suppose next FreeOrion release isn't expected earlier than Ubuntu 24.04 LTS.
Gentoo Linux x64, gcc-11.2, boost-1.78.0
Ubuntu Server 22.04 x64, gcc-12, boost-1.74.0
Welcome to the slow multiplayer game at freeorion-lt.dedyn.io.Version 2024-01-30.0dd6806.
Donations're welcome:BTC:bc1q007qldm6eppqcukewtfkfcj0naut9njj7audnm

Post Reply