iTwin / imodel-native

Apache License 2.0
20 stars 12 forks source link

Update baseline Linux version (i.e. libc version) #134

Closed calebmshafer closed 1 year ago

calebmshafer commented 1 year ago

Our current baseline glibc version is 2.24 (need to verify, assumption based off of Debian 9^1).

The Node Addon is currently built using Debian 9 which has exited LTS June 2022. Meaning we need to move off of it as soon as we responsibly can.

Debian 9 is in ELTS now and will only get support for packages that are used by paying to support the ELTS efforts: https://wiki.debian.org/LTS/Extended.

On Linux, the CRT that a binary requires is whatever the build machine’s OS correlates to (i.e. OS and CRT are tightly coupled). Current mantra is we use the oldest possible build machine OS in order to use the oldest possible CRT to be able to cast as broad a net as possible. This means to move up the Debian version we build with, we will also need to update our minimum libc version.

When we do move up to a newer Debian version, we will need to keep around at least 1-2 agents in order to support the older libc version until support is fully dropped.


calebmshafer commented 1 year ago

@chuckkir has made the updates to allow us to build on Debian 11 which is a requirement to get this working. Also has some build environments setup that we can start testing this on.

Deb 11 also includes Clang 13 with the latest libc6 so we'll need to make the switch to that compiler as well. @MichaelBelousov has already started most of that work, and I think has it working.

per @MichaelBelousov:

clang 13 should be a go on our debian 11 box for the addon, thanks to the work of multiple people.

chuckkir commented 1 year ago

It builds on Deb 11 with Clang 13 using libc6:

libc6-dev/stable-updates,now 2.31-13+deb11u5 amd64 clang-13/stable,now 1:13.0.1-6~deb11u1 amd64

The pool is iModelTechLnxDeb11.

tm-zub commented 1 year ago

@chuckkir, the email you sent earlier that builds are officially on Deb 11. Is there anything still remaining which will stop us to close this issue?

chuckkir commented 1 year ago

It's being built on Deb 11. There is a comment about changing the minimum version; I don't know if that's in the specifications somewhere or if what we have done is sufficient.

calebmshafer commented 1 year ago

@tm-zub @DanRod1999 @chuckkir we need to document this change in our NextVersion.md in the itwinjs-core repo to let people know what our new supported distros are.

plus we need to ensure that we deploy and test with the Visualization service. cc: @paulius-valiunas

paulius-valiunas commented 1 year ago

Can someone confirm if the relevant change is included in imodeljs-native@4.0.2?

aruniverse commented 1 year ago

Can someone confirm if the relevant change is included in imodeljs-native@4.0.2?

@swbsi ?

swbsi commented 1 year ago

Can someone confirm if the relevant change is included in imodeljs-native@4.0.2?

@swbsi ?

I believe this was completed with the first successful addon build after chuck updated the machines (in his comment above).

aruniverse commented 1 year ago

can confirm this was updated,

image

cc @diegopinate (who is updating agents)