vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi there, The joys of running slack-current... Exec summary: Slackware-current vim now wants: ap/acl-2.2.34-i486-1.tgz ap/attr-2.4.28-i486-1.tgz A mini-howto on dependency resolution in Slackware. For those new to slackware's simple dependency resolution, I'll run through the steps of resolving a dependency issue that cropped up this morning. As root I ran: upgradepkg /home/mirror/slackware-current-tds/slackware/*/*tgz to bring a slack-current system up to date. This is what caused the problem would not expect to see any dependency problems updating Slackware-10.2 in a similar fashion. 1. Do this at the CLI, as it happens I'm doing this to my firewall / router / file server with streaming audio coming off the 'net (radioparadise.com), if the music stops I know I got into some serious trouble 2. Also do this sort of thing with the knowledge that if it breaks, fixing the system should be apparently simple to you, at worse a quick re-install, knowing that you have a backup of the system configuration somewhere. Keep in mind unix-like OS do not delete files until all references to deleted file are dropped. This is why services may keep going while one is ripping the rug out from under, so to speak... It is also why slackware needs NO reboot after update, just restart various subsystems through /etc/rc.d/rc.whatever, for example I noticed awk is updated, so I restart a daemon written in awk: # /etc/rc.d/rc.junkview restart Okay, after that, I close terminals (I'm talking to linux box from PuTTY in winxp). Open new terminal... Now I'm on bash 3.1, then open a file to edit: grant@deltree:~$ vim /usr/local/sbin/junkview vim: error while loading shared libraries: libacl.so.1: cannot open shared object file: No such file or directory Oops... fix that, then: grant@deltree:~$ vim /usr/local/sbin/junkview vim: error while loading shared libraries: libattr.so.1: cannot open shared object file: No such file or directory fix that too. How fix? Open another terminal as root, navigate to my local rsync mirror: /home/mirror/slackware-current-tds/slackware and then # less MANIFEST.bz2 Search for the missing file in less: '/libacl.so.1' Scroll up to view the containing package name, 'ap/acl-2.2.34-i486-1.tgz' ++======================================== || || Package: ./ap/acl-2.2.34-i486-1.tgz || ++======================================== drwxr-xr-x root/root 0 2006-02-27 18:03:55 ./ drwxr-xr-x root/root 0 2006-02-27 18:03:55 lib/ -rwxr-xr-x root/root 28696 2006-02-27 18:03:55 lib/libacl.so.1.1.0 drwxr-xr-x root/root 0 2006-02-27 18:03:54 usr/ highlight the package name (I use mouse copy/paste for names), quit less, then: # installpkg ap/acl-2.2.34-i486-1.tgz Repeat for the next missing library, and all fixed. Hopefully another small step in dispelling the myth that dependency resolution in Slackware requires special tools... Of course some may say: 'read the Changelog first', but they miss out on the fun of problem discovery and resolution -- besides, RTFM is for when one gets stuck implications, so surprises may still occur. Grant. -- Memory fault -- brain fried |