# Error upgrading KDE4 from 4.7 -> 4.8



## caesius (May 26, 2012)

Seeing the hefty changes documented in /usr/ports/UPDATING, I uninstalled all of my QT and KDE packages and updated the ports collection, hoping for an easy upgrade.

I'm trying to build KDE4 from source, using the x11/kde4 meta-package, but I'm getting an error trying to build x11/kde-workspace


```
[  0%] Built target icon_mode_automoc
Scanning dependencies of target kcheckpass
[  0%] Building C object kcheckpass/CMakeFiles/kcheckpass.dir/kcheckpass.o
Generating ktooltipwindow_p.moc
[  0%] Building C object kcheckpass/CMakeFiles/kcheckpass.dir/checkpass_etcpasswd.o
[  0%] Building C object kcheckpass/CMakeFiles/kcheckpass.dir/checkpass_pam.o
[  0%] Built target systemsettings_automoc
[  1%] Building C object kcheckpass/CMakeFiles/kcheckpass.dir/checkpass_shadow.o
Scanning dependencies of target kwinnvidiahack_automoc
[  1%] Building C object kcheckpass/CMakeFiles/kcheckpass.dir/checkpass_osfc2passwd.o
gmake[2]: *** No rule to make target `/usr/local/lib/libdl.so', needed by `kcheckpass/kcheckpass'.  Stop.
gmake[2]: *** Waiting for unfinished jobs....
[  1%] [  1%] Building C object kcheckpass/CMakeFiles/kcheckpass.dir/checkpass_aix.o
Built target kwinnvidiahack_automoc
Scanning dependencies of target kdecorations_automoc
gmake[1]: *** [kcheckpass/CMakeFiles/kcheckpass.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
Generating kdecoration.moc
Generating kcommondecoration_p.moc
Generating kcommondecoration.moc
[  1%] Built target kdecorations_automoc
gmake: *** [all] Error 2
*** Error code 1

Stop in /usr/ports/x11/kde4-workspace.
*** Error code 1

Stop in /usr/ports/x11/kde4-workspace.
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20120526-48068-8uadia-0 env
 UPGRADE_TOOL=portupgrade UPGRADE_PORT=kde-workspace-4.7.4_1 UPGRADE_PORT_VER=4.7.4_1 make
** Fix the problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! x11/kde4-workspace (kde-workspace-4.7.4_1)    (unknown build error)
[1] benjamin@blackbox>
```

It seems that

```
gmake[2]: *** No rule to make target `/usr/local/lib/libdl.so', needed by `kcheckpass/kcheckpass'.  Stop.
```

is what is stopping the build, is anyone else getting this problem, or has a solution?

Thanks


----------



## caesius (May 26, 2012)

Well don't I just feel stupid, the offending file (libdl.so), which shouldn't even exist on FreeBSD IIRC, was a broken symlink. Removing it fixed the problem. I must have made that symlink some time ago and forgotten about it.

/me awaits lecture from DutchDaemon about symlinking libraries... :stud


----------



## DutchDaemon (May 26, 2012)

caesius said:
			
		

> /me awaits lecture from DutchDaemon about symlinking libraries... :stud



Consider it done .. always document these, or put them in your calendar/agenda so you're reminded every x weeks to check.


----------



## wblock@ (May 27, 2012)

Or use portmaster -w to upgrade ports, which saves the old libraries.  Or only use symlinks until the ports are rebuilt.  After that, fastfakelib may help to find forgotten symlinks.  Of course, if they have been forgotten, remembering to run it is questionable.


----------



## DutchDaemon (May 27, 2012)

The -w option is in my portmaster.rc as 
	
	



```
SAVE_SHARED=wopt
```
 and it hasn't failed me yet.


----------



## wmoreno3 (Nov 22, 2013)

wblock@ said:
			
		

> Or use portmaster -w to upgrade ports, which saves the old libraries.  Or only use symlinks until the ports are rebuilt.  After that, fastfakelib may help to find forgotten symlinks.  Of course, if they have been forgotten, remembering to run it is questionable.



fastfakelib and fakelib.rb at http://www.wonkity.com/~wblock/fakelib/ must be updated in order to get ready to PKGNG.


----------

