Le Sat, Apr 24, 2004 at 09:40:43PM +0900, GOTO Masanori a ecrit : > At Sat, 24 Apr 2004 13:34:53 +0200, > COLPART Gregory wrote: > > Architecture: i386 (i686) > > Kernel: Linux 2.6.3foulademer02032004 > > > When I upgrade libc6 2.3.2.ds1-11 to libc6 2.3.2.ds1-12 I have a > > problem: > > D000002: fork/exec /var/lib/dpkg/tmp.ci/preinst ( ) > > WARNING: Your kernel version indicates a revision number > > of 255 or greater. Glibc has a number of built in > > assumptions that this revision number is less than 255. > > If you've built your own kernel, please make sure that any > > custom version numbers are appended to the upstream > > kernel number with a dash or some other delimiter. > > dpkg : erreur de traitement de > > /var/cache/apt/archives/libc6_2.3.2.ds1-12_i386.deb (--install) : > > le sous-processus pre-installation script a retourn??? une erreur de > > sortie d'???tat 1 > > > > The script preinst contains: > > # Test to make sure z < 255, in x.y.z-n form of kernel version > > kernel_rev=$(uname -r | awk -F '[.-]' '{print $3}') > > if [ "$kernel_rev" -ge 255 ] > > This preinst file is in -11, not in -12. Are your libc6 really -12? > > > But if you compiled your kernel with --append-to-version=foo, uname -r > > will be x.y.zfoo and kernel_rev will contain foo and installation will fail (exit 1) > > This problem should be fixed in -12. See #241395. It is not fixed for me: The version -12 fixes the kernel x.y.zfoo But I have numbers after foo: x.y.zfooA where A is a number Then with the new preinst: $ cat glibc_2.3.2.ds1-12.diff | grep kernel_rev + kernel_rev=$(uname -r | tr -- - . | cut -d. -f3 | tr -d '[:alpha:]') + if [ "$kernel_rev" -ge 255 ] It gives me: zA and it is incorrect If sed can be use, it can be: kernel_rev=$(uname -r | sed 's/[^\.]\+\.[^\.]\+\.\([^[:alpha:]]\).*/\1/') Thanks, -- Gregory Colpart <reg@evolix.fr> GnuPG:1024D/C1027A0E Evolix - Informatique et Logiciels Libres http://www.evolix.fr
Attachment:
signature.asc
Description: Digital signature