Nicolas François <[EMAIL PROTECTED]> wrote:
>> couldn't open /etc/ld.so.conf: No such file or directory at
>> /usr/bin/dpkg-shlibdeps line 155.
>
> libc6 is supposed to install /etc/ld.so.conf.
>
> Do you remember when you installed this Etch?
> Do you know the version of the libc6 package at that time?
My (successful) installation report is in #410710. I used the
businesscard.iso from 2007-02-10
In /var/log/aptitude I find
Aptitude 0.4.4: log report
Mi, Feb 14 2007 13:47:36 +0100
IMPORTANT: this log only lists intended actions; actions which fail due to
dpkg problems may not be completed.
Will install 34 packages, and remove 0 packages.
217kB of disk space will be used
===============================================================================
[...]
[UPGRADE] libc6 2.3.6.ds1-10 -> 2.3.6.ds1-11
And I don't think I ever used apt-get upgrade.
> This bug could be caused by the libc6 bug #409516, fixed in libc6
> 2.3.6.ds1-11 (Feb 3, and migrated to testing only 5 days before your bug
> report).
>
> It could be nice to see if upgrading libc6 fixes this bug.
No, it didn't create it upon upgrade. The current postinst has:
# Add support for /etc/ld.so.conf.d
if [ -z "$preversion" ] || dpkg --compare-versions $preversion lt 2.3.6-16;
then
if [ -e /etc/ld.so.conf ]; then
[ -z "$(tail -n 1 /etc/ld.so.conf)" ] || echo >> /etc/ld.so.conf
else
touch /etc/ld.so.conf
fi
if ! grep -q '^include /etc/ld.so.conf.d/.*\.conf$' /etc/ld.so.conf ;
then
echo 'include /etc/ld.so.conf.d/*.conf' >> /etc/ld.so.conf
fi
fi
That looks too strict, since in my case $preversion is set, but it is
higher than 2.3.6-16.
I am inclined to reassign this to libc6, and it seems the fix would be
# Add support for /etc/ld.so.conf.d
- if [ -z "$preversion" ] || dpkg --compare-versions $preversion lt 2.3.6-16;
then
+ if [ -z "$preversion" ] || dpkg --compare-versions $preversion lt
2.3.6.ds1-11; then
if [ -e /etc/ld.so.conf ]; then
+ if dpkg --compare-versions $preversion lt 2.3.6-16; then
[ -z "$(tail -n 1 /etc/ld.so.conf)" ] || echo >> /etc/ld.so.conf
+ else
+ # created by a non-buggy version after 2.3.6; keep it
+ :
+ fi
else
touch /etc/ld.so.conf
fi
if ! grep -q '^include /etc/ld.so.conf.d/.*\.conf$' /etc/ld.so.conf ;
then
echo 'include /etc/ld.so.conf.d/*.conf' >> /etc/ld.so.conf
fi
fi
However, the "echo >> /etc/ld.so.conf" seems weird to me. What if a
local admin added something there? It looks like a policy violation.
Regards, Frank
--
Dr. Frank Küster
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX/TeXLive)