Difference between normal version and glibc23 versions


tuxpoldo

Recommended Posts

I have a question:

What is the difference between the i386 and the glibc23_i386 versions (same for amd64 and glibc23_amd64)?

Apparently both run on every version of linux I have tested it on, so what's the matter?

Here some versions from different machines:


Debian 6 (squeeze):

tuxpoldo ~ # dpkg -l | grep glib
ii libglib2.0-0 2.24.2-1 The GLib library of C routines


Debian 7 (wheezy):

ape-gate ~ # dpkg -l | grep glib
(nothing - no glib installed? Impossible!)


Ubuntu 10.04 (lucid)

ccm-mgmt ~ # dpkg -l | grep glib
ii libglib2.0-0 2.24.1-0ubuntu2 The GLib library of C routines


Ubuntu 12.04 (precise)

yeasoft-gate2 ~ # dpkg -l | grep -i glib

ii libglib2.0-0 2.32.3-0ubuntu1 GLib library of C routines

If I look at the internal bindings:


yeasoft-gate2 ~/testbtsync # ldd btsync-normal
linux-vdso.so.1 => (0x00007ffffcbff000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f9a58a4a000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9a58846000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9a58549000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f9a5832c000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9a57f6d000)
/lib64/ld-linux-x86-64.so.2 (0x00007f9a58c5b000)
yeasoft-gate2 ~/testbtsync # ldd btsync-glibc23
linux-vdso.so.1 => (0x00007fff13fff000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fab38fff000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fab38dfb000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fab38afe000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fab388e8000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fab386cb000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fab3830b000)
/lib64/ld-linux-x86-64.so.2 (0x00007fab39210000)

The only difference is that the glibc23 version loads an additional library (libgcc_s.so.1) and has some different memory mapping..

Which one should be used?

Link to post
Share on other sites

Apparently both run on every version of linux I have tested it on, so what's the matter?

I believe it's related to running BitTorrent Sync on some Synology devices, and their inability to update to glibc 2.4 - therefore, BitTorrent Sync builds using glibc 2.3 were made available for such instances. Please see this thread

Which one should be used?

The "glibc23" builds should be used if your device isn't able to run glibc 2.4

Link to post
Share on other sites

It's a pity that there is no clear documentation about this. Since I did not knew which version was the right one, I decided to include the 23 version in my packages, since it seemed more secure, but I think this was a mistake. When BT releases the next version, I will include the standard versions of the packages, since none of the OS (Ubuntu >= lucid, Debian >= sid) uses old GLIBCs

Link to post
Share on other sites

To need the _glibc23_ versions you need to go all the way back to Debian Etch (Mid 2007) or Debian Sarge (2005), but Woody (2002) is too early; it says "GLIBC_2.3.2 not found".

BTW: The package you should be checking the version for is "libc6" or "libc6-i686".

PS: Can I have a version that runs on a Woody ? :D

Link to post
Share on other sites

BTW: The package you should be checking the version for is "libc6" or "libc6-i686".

Are you sure?

leo@bookpoldo ~ $ ssh root@10.65.19.4 dpkg -l | grep libc6
Debian GNU/Linux jessie/sid
ii libc6:amd64 2.17-1 amd64 Embedded GNU C Library: Shared libraries
ii libc6-dev:amd64 2.17-1 amd64 Embedded GNU C Library: Development Libraries and Header Files
leo@bookpoldo ~ $ ssh root@10.65.6.1 dpkg -l | grep libc6
Debian GNU/Linux 7.0
ii libc6:i386 2.13-38 i386 Embedded GNU C Library: Shared libraries
ii libc6-dev:i386 2.13-38 i386 Embedded GNU C Library: Development Libraries and Header Files
leo@bookpoldo ~ $ ssh root@10.65.8.1 dpkg -l | grep libc6
Debian GNU/Linux 6.0
ii libc6 2.11.3-4 Embedded GNU C Library: Shared libraries
leo@bookpoldo ~ $ ssh root@10.65.0.42 dpkg -l | grep libc6
Ubuntu 12.04.2 LTS
ii libc6 2.15-0ubuntu10.4 Embedded GNU C Library: Shared libraries
ii libc6-dev 2.15-0ubuntu10.4 Embedded GNU C Library: Development Libraries and Header Files
leo@bookpoldo ~ $ ssh root@10.65.0.20 dpkg -l | grep libc6
Ubuntu 10.04.4 LTS
ii libc6 2.11.1-0ubuntu7.12 Embedded GNU C Library: Shared libraries
ii libc6-dev 2.11.1-0ubuntu7.12 Embedded GNU C Library: Development Librarie
ii libc6-i686 2.11.1-0ubuntu7.12 GNU C Library: Shared libraries [i686 optimi

PS: Can I have a version that runs on a Woody ? :D

PPS: Can I have a version that runs on a GNU/Hurd ? ;-)

Link to post
Share on other sites

Archived

This topic is now archived and is closed to further replies.