SynoCommunity / spksrc

Cross compilation framework to create native packages for the Synology's NAS
https://synocommunity.com
Other
3.02k stars 1.23k forks source link

SRM1.3.1: error running git: /lib/libc.so.6: version 'GLIBC_2.20' not found #5402

Open fuse314 opened 2 years ago

fuse314 commented 2 years ago

Is this a new Bug?

Package Name

git

Package Version

2.37.2-24

Device Model

RT2600ac

Device Architecture

ipq806x

Firmware Version

SRM1.3.1-9346 (rc)

What happened?

when running "git" command, I get the following error:

# git --version
git: /lib/libc.so.6: version `GLIBC_2.20' not found (required by git)

output of /lib/libc.so.6

# /lib/libc.so.6
GNU C Library (crosstool-NG 1.24.0) stable release version 2.32.
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 10.3.0.
libc ABIs: UNIQUE ABSOLUTE
For bug reporting instructions, please see:
<https://www.gnu.org/software/libc/bugs.html>.

Reproduction steps

1. Update Router to SRM1.3.1 (release candidate)
2. Install git package
3. Run git command

Install Log

-- no such file.

Service Log

-- no such file

Other Logs

/var/log/synopkg.log:

2022/08/22 13:15:53     Begin upgrade git 2.37.2-24: run /bin/tar zxf /volume1/@tmp/pkginstall/package.tgz -C /volume1/@tmp/pkginstall/package
2022/08/22 13:15:55     Finish upgrade git 2.37.2-24: run /bin/tar zxf /volume1/@tmp/pkginstall/package.tgz -C /volume1/@tmp/pkginstall/package ret=[0]
2022/08/22 13:15:55     upgrade git: begin to stop version 2.32.0-18
2022/08/22 13:15:55     upgrade git: stop version 2.32.0-18 successfully, result 0
2022/08/22 13:15:55     Begin upgrade git 2.32.0-18: run preupgrade
2022/08/22 13:15:55     Finish upgrade git 2.32.0-18: run preupgrade ret=[0]
2022/08/22 13:15:55     Begin upgrade git 2.32.0-18: run preuninst
2022/08/22 13:15:55     Finish upgrade git 2.32.0-18: run preuninst ret=[0]
2022/08/22 13:15:55     Begin upgrade git 2.32.0-18: run postuninst
2022/08/22 13:15:56     Finish upgrade git 2.32.0-18: run postuninst ret=[0]
2022/08/22 13:15:56     upgrade git: Uninstall 2.32.0-18 successfully
2022/08/22 13:15:56     Begin upgrade git 2.37.2-24: run preinst
2022/08/22 13:15:56     Finish upgrade git 2.37.2-24: run preinst ret=[0]
2022/08/22 13:15:56     Begin upgrade git 2.37.2-24: run /bin/sh -c /bin/mv -f \/\v\o\l\u\m\e\1\/\@\t\m\p\/\p\k\g\i\n\s\t\a\l\l/package/* \/\v\o\l\u\m\e\1\/\@\a\p\p\s\t\o\r\e\/\g\i\t
2022/08/22 13:15:56     Finish upgrade git 2.37.2-24: run /bin/sh -c /bin/mv -f \/\v\o\l\u\m\e\1\/\@\t\m\p\/\p\k\g\i\n\s\t\a\l\l/package/* \/\v\o\l\u\m\e\1\/\@\a\p\p\s\t\o\r\e\/\g\i\t ret=[0]
2022/08/22 13:15:56     Begin upgrade git 2.37.2-24: run postinst
2022/08/22 13:15:56     Finish upgrade git 2.37.2-24: run postinst ret=[0]
2022/08/22 13:15:56     Begin upgrade git 2.37.2-24: run postupgrade
2022/08/22 13:15:57     Finish upgrade git 2.37.2-24: run postupgrade ret=[0]
2022/08/22 13:15:57     upgrade git: begin to start version 2.37.2-24
2022/08/22 13:15:57     upgrade git: start version 2.37.2-24 successfully, result 0
2022/08/22 13:15:57     upgrade git from 2.32.0-18 to 2.37.2-24 successfully
hgy59 commented 2 years ago

For SRM 1.3(.1) there is no toolchain available yet, so we cannot create packages for such targets. I already asked for this (https://community.synology.com/enu/forum/2/post/153407?reply=476260) but it will not be available before SRM 1.3.1 is officially released.

And your findings confirm that SRM 1.3.1 is not compatible with SRM 1.2,

hgy59 commented 2 years ago

An interesting detail is, that SRM 1.3.1 on your device has glibc version 2.32 (as reported by /lib/libc.so.6). This is newer than any available DSM device has (even DSM 7.1 has glibc <= 2.26). Until SRM 1.2 your device had glibc 2.20.

hgy59 commented 1 year ago

will create a new PR when SRM 1.3 toolchains will be available

Eddict commented 4 months ago

will create a new PR when SRM 1.3 toolchains will be available

they are available: Synology Archive Download Site

hgy59 commented 4 months ago

will create a new PR when SRM 1.3 toolchains will be available

they are available: Synology Archive Download Site

This is the toolkit, not the toolchain. Those have a completely different structure than the toolchains and spksrc does support the build of packages only by toolchains. @th0ma7 can we extract a toolchain from the downloadable toolkit?

Toolchains for DSM 7.x are on the synology download page https://archive.synology.com/download/ToolChain/toolchain Toolchains for DSM 6.2.4 are on the sourceforce page https://sourceforge.net/projects/dsgpl/files/Tool%20Chain/DSM%206.2.4%20Tool%20Chains/

We collected the SRM 1.2 toolchains before those were dropped by Synology (https://github.com/SynoCommunity/spksrc/releases/tag/toolchains%2Fsrm1.2) For SRM 1.2 the GPL source is available under https://sourceforge.net/projects/dsgpl/files/Synology%20Router%20GPL%20Source/7742branch/ (TC_BUILD = 7742)

If the toolkit contains the toolchain we should extract it and create dedicated download packages since the toolchain files are huge (about 2GB each).

My request for the SRM toolchains was never answered in the synology community forum https://community.synology.com/enu/forum/2/post/153407

th0ma7 commented 4 months ago

This is the toolkit, not the toolchain. Those have a completely different structure than the toolchains and spksrc does support the build of packages only by toolchains. @th0ma7 can we extract a toolchain from the downloadable toolkit?

I've never tried honestly, yes, no maybe?

Toolchains for DSM 7.x are on the synology download page https://archive.synology.com/download/ToolChain/toolchain Toolchains for DSM 6.2.4 are on the sourceforce page https://sourceforge.net/projects/dsgpl/files/Tool%20Chain/DSM%206.2.4%20Tool%20Chains/

Makes me think we may be better off keeping a 6.2.4 copy somewhere safe, just in case as everything else got deleted recently by synology.

We collected the SRM 1.2 toolchains before those were dropped by Synology (https://github.com/SynoCommunity/spksrc/releases/tag/toolchains%2Fsrm1.2) For SRM 1.2 the GPL source is available under https://sourceforge.net/projects/dsgpl/files/Synology%20Router%20GPL%20Source/7742branch/ (TC_BUILD = 7742)

If the toolkit contains the toolchain we should extract it and create dedicated download packages since the toolchain files are huge (about 2GB each).

My request for the SRM toolchains was never answered in the synology community forum https://community.synology.com/enu/forum/2/post/153407

I had an old point of contact through email at synology, i can give it a shot and see?

th0ma7 commented 4 months ago

Ticket opened with Synology, they're looking into it, let's wait and see.