I used to run Debian testing, and I haven't upgraded or dist-upgraded for about 2 years. Yesterday I made the mistake of trying that... it didn't work (I don't remember the exact error messages), so I tried squeeze instead.

Well, packages were downloaded and started installing, but then I got to the libc6 configuration. I passed the menu about restarting services, then got:

WARNING: this version of the GNU libc requires kernel version
2.6.18 or later. Please upgrade your kernel before installing

The installation of a 2.6 kernel _could_ ask you to install a new libc
first, this is NOT a bug, and should *NOT* be reported. In that case,
please add lenny sources to your /etc/apt/sources.list and run:
  apt-get install -t lenny linux-image-2.6
Then reboot into this new kernel, and proceed with your upgrade
dpkg: error processing /var/cache/apt/archives/libc6_2.11.3-3_i386.deb (--unpack):
 subprocess new pre-installation script returned error exit status 1
configured to not write apport reports
                                      Errors were encountered while processing:
E: Sub-process /usr/bin/dpkg returned an error code (1)

My kernel is a slightly customized (not built using Debian packages). Anyway, I added lenny sources (from archive.debian.org) and tried

apt-get install -t lenny linux-image-2.6-2-686

but all that gets me is:

The following packages have unmet dependencies:
 libc-bin : Breaks: libc6 (< 2.10) but 2.7-18 is to be installed
 linux-image-2.6.26-2-686 : Depends: initramfs-tools (>= 0.55) but it is not going to be installed or
                                     yaird (>= 0.0.13) but it is not installable or
                            Recommends: libc6-i686 but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

adding libc6-i686 initramfs-tools doesn't help. I tried a couple more things which, to my shame, I don't exactly remember (locales got removed I think). I tried manually downloading Linux-2.6.35 , but got errors on missing .h files on make config.

Please help! I don't want to break my system more than it already is...

Contents of /etc/apt/sources.lst:

deb http://debian.co.il/debian/ squeeze main
deb http://archive.debian.org/debian lenny main contrib non-free
deb-src http://debian.co.il/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
deb http://security.debian.org/ lenny/updates main

This Debian forums thread seems to be related, but with different versions.

Update: Following a suggestion here, I'm now trying to dist-upgrade to etch first. But, woe is me, now libc-bin is removed and I get:

Preconfiguring packages ...
dpkg: warning: 'ldconfig' not found in PATH or not executable.
dpkg: 1 expected program not found in PATH or not executable.
NB: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.
E: Sub-process /usr/bin/dpkg returned an error code (2)

Well, problem solved:

  • I was running an etch-as-testing, apparently.
  • set the apt sources.list to point to etch on archives.debian.org .
  • had to manually get and install etch's libc6-dev_2.3.6.ds1-13etch10+b1 from archives.debian.org , forcing the version down apt-get's throat.
  • dist-upgraded a couple of times.
  • set the apt sources.list to point to lenny on archives.debian.org .
  • dist-upgraded a couple more times.
  • had to manually download libc6_2.7-18lenny7_i386.deb , and manually copy out glib.sh to its place
  • dist-upgraded a couple more times.

And that's basically it. More details and high-strung attitude in the thread linked to from the question...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.