Date: Mon, 04 Feb 2008 17:39:41 +0100 From: Alexander Leidinger <Alexander@Leidinger.net> To: freebsd-ports@freebsd.org Cc: Dmitry Marakasov <amdmi3@amdmi3.ru> Subject: Re: linux app port, "version `GLIBC_2.4' not found" Message-ID: <20080204173941.mcenwexi8gkwk8w8@webmail.leidinger.net> In-Reply-To: <20080204145213.GA45739@hades.panopticon> References: <20080203182457.GA74879@hades.panopticon> <200802030945.28722.beech@freebsd.org> <20080204145213.GA45739@hades.panopticon>
next in thread | previous in thread | raw e-mail | index | archive | help
Quoting Dmitry Marakasov <amdmi3@amdmi3.ru> (from Mon, 4 Feb 2008 =20 17:52:13 +0300): > * Beech Rintoul (beech@freebsd.org) wrote: >> > I'm trying to port a linux app, and it says: >> > >> > % ./app >> > ./app: /lib/obsolete/linuxthreads/libc.so.6: version `GLIBC_2.4' >> > not found (required by ./app) >> > >> > Seems like linux_base-fc4 is too old for this application, as it >> > requires glibc 2.4. Is there a way to indicate in a port that newer >> > linux_base is needed? >> >> From bsd.port.mk: >> >> # USE_LINUX=09=09- Set to yes to say the port needs the default linux bas= e >> port. >> #=09=09=09=09 Set to value <X>, if the port needs emulators/linux_base-<= X>. >> #=09=09=09=09 If set to "7", a dependency is registered to >> =09=09 emulators/linux_base. >> #=09=09=09=09 Implies appropriate settings for STRIP and STRIP_CMD. > Yes, but this info seems a bit outdated for me. > First, there's no linux_base-7. Besides fc4 there's fc6 and f7, what It takes a full exp-build cycle to get a change in bsd.port.mk into =20 the tree. Nobody invested the hassle so far to change this comment. As =20 it is just an example, and not a "there has to be a linux_base-7 =20 port"-comment, there's no real pressure to change it to something else. > should I use? Also, what'll happen if user has linux_base-fc4 > installed already? Seems to me that it would be better to check for If any other linux_base is installed, the install will fail. > linux glibc >=3D2.4 and ask user to reinstall newer linux_base if it's not > found. > The problem is there are no examples for this, everyone just use > LINUX_BASE=3Dyes. To use any newer linux base port, you need to switch to linux 2.6 =20 emulation, as the depend on features of 2.6. This 2.6 emulation is =20 currently - only available in 7.0 and 8-current (default =3D 2.4) - not stable yet (known bugs) - lacks some syscalls which are necesary for full 2.6.16 emulation As long as we don't have 2.6 emulation in a good shape, we can not =20 switch to it, and as such, we can not switch to a more recent linux =20 base port. So any port port which _really_ depends upon a newer linux =20 base port has to use USE_LINUX=3Dfc6 or USE_LINUX=3Df7. Which one you take is up to you, but the most recent one is probably =20 the best thing to do in this case. If you additionally want to check =20 for glibc>=3D2.4, it's up to you too, but any message which suggest to =20 update to a non-default linux base (default =3D fc4) should ("should" as =20 in "if you don't do it, you will screw users") contain the information =20 that this needs to switch the kernel to 2.6.16 emulation, and that =20 this will only work on 7.0 or later, and that at least in 7.0 there =20 are known problems with the non-default linux emulation. We are also =20 low on people with enough time to debug and fix problems in the 2.6 =20 emulation, so anybody with problems should expect that he has to debug =20 and fix the real cause of the problem himself. On emulation@ we are =20 helpful as far as our time allows, but the time is low ATM. Bye, Alexander. --=20 Newlan's Truism: =09An "acceptable" level of unemployment means that the =09government economist to whom it is acceptable still has a job. http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID =3D B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID =3D 72077137
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080204173941.mcenwexi8gkwk8w8>