FS#3180 - pacman and ldconfig

Attached to Project: Pacman
Opened by Michel (michel) - Friday, 16 September 2005, 11:01 GMT
Last edited by Andreas Radke (AndyRTR) - Wednesday, 27 December 2006, 06:24 GMT
Task Type Feature Request
Category
Status Closed
Assigned To Aaron Griffin (phrakture)
Architecture not specified
Severity Low
Priority Normal
Reported Version 0.7 Wombat
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Heya,

I noticed that pacman does a lot ldconfig's when they aren't really necessary. An ldconfig can take ~45 seconds on my system. This can add quite some time to the install when I have to install a lot of packages (big update for example) and when ldconfig is run unnecessary a lot fo the times. Ialso noticed that sometimes a package is installed quickly (without any time after the actual install of the files: no ldconfig?), so maybe you already perform some checks to see if ldconfig, ... needs to be run?

1) I noticed that ldconfig is run after "checking for file conflicts" is done. Why does this happen?

2) pacman runs ldconfig when there are no shared libraries in the package (I think this is the purpose of ldconfig). Could you use libmagick to determine if the package contains shared libraries to determine if ldconfig needs to run?

3) I don't know if there is a programming-api for ldconfig. It seems to be an executable, so I think not. If I run ldconfig only on the kde-lib-directory instead of all directories, it's done in ~10-15 seconds instead of ~45. So, maybe you could see where the shared libraries are installed and only run ldconfig on those directories.
It would be even better to manually specify the updated shared libraries, but I don't know if this is possible.



greetings and thanks,

Michel
This task depends upon

This task blocks these from closing
 FS#6316 - Pacman 3 release bugcatcher 
Closed by  Aaron Griffin (phrakture)
Thursday, 01 February 2007, 03:25 GMT
Reason for closing:  Fixed
Additional comments about closing:  pacman3 only runs ldconfig once for each operation. In the future, this can be removed entirely when the filesystem-hook feature is actually implemented.

Loading...