# kde4-workspace 4.11.14_2 problems



## Matthias (Jul 6, 2015)

Hello,

For quite some time I try to upgrade x11/kde4-workspace from 4.11.14_1 to 4.11.14_2.

The compilation stops here:

```
Linking CXX executable kephald
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::hasPendingEvents()'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::versionSupported()'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::QEventDispatcherGlib(QEventDispatcherGlibPrivate&, QObject*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::interrupt()'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::qt_metacall(QMetaObject::Call, int, void**)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::QEventDispatcherGlib(QObject*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::registerTimer(int, int, QObject*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::wakeUp()'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlibPrivate::runTimersOnceWithNormalPriority()'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::unregisterTimer(int)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::registerSocketNotifier(QSocketNotifier*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::unregisterTimers(QObject*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::~QEventDispatcherGlib()'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::qt_metacast(char const*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::staticMetaObject'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `typeinfo for QEventDispatcherGlib'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::registeredTimers(QObject*) const'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::unregisterSocketNotifier(QSocketNotifier*)'
/usr/local/lib/qt4/libQtGui.so: undefined reference to `QEventDispatcherGlib::processEvents(QFlags<QEventLoop::processEventsFlag>)'
collect2: error: ld returned 1 exit status
libs/kephal/service/CMakeFiles/kephald.dir/build.make:630: die Regel für Ziel "libs/kephal/service/kephald" scheiterte
gmake[2]: *** [libs/kephal/service/kephald] Fehler 1
CMakeFiles/Makefile2:1213: die Regel für Ziel "libs/kephal/service/CMakeFiles/kephald.dir/all" scheiterte
gmake[1]: *** [libs/kephal/service/CMakeFiles/kephald.dir/all] Fehler 2
Makefile:126: die Regel für Ziel "all" scheiterte
gmake: *** [all] Fehler 2
*** [do-build] Error code 1

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

Stop in /usr/ports/x11/kde4-workspace.
```
Are there problems with Qt? Or what am I doing wrong?

Many thanks - Matthias


----------



## talsamon (Jul 6, 2015)

Found this:
http://thread.gmane.org/gmane.os.freebsd.devel.emulation/12894/focus=12895
and
http://permalink.gmane.org/gmane.os.freebsd.devel.emulation/12899


> > I ran into something similar with KDE (still dealing with that
> > but the situation was improved somewhat by recompiling qt4-core


----------



## protocelt (Jul 6, 2015)

I see this sort of thing happen sometimes when users either selectively update ports or try using ports and pkg(8) interchangeably to either get around an issue or save time. First thing I would do is make sure my ports tree was up to date using portsnap(8) or svn(1)/svnlite(1) depending on how the ports tree is being updated. Next because we're using ports I would install sysutils/bsdadminscripts and run `pkg_libchk` to find any problems with library dependencies and reinstall any package names that are output from that command. Sometimes these sorts of problems are also caused by not following relevant instructions in /usr/ports/UPDATING before updating installed ports.


----------



## Matthias (Jul 7, 2015)

Ahhh... `pkg_libchk` is new for me. This is probably the missing link 

`svn up` is mandatory for me. I did this several times in /usr/src as well as in /usr/ports, hoping that a temporary bug somewhere gets fixed sooner or later. But that's not the case, therefore my posting here.

Thanks a lot for that hint, I'll try this out very soon.


----------



## kpa (Jul 7, 2015)

If you have the time you could test if the port compiles in ports-mgmt/poudriere that uses a completely clean build environment for building ports. It's often the case that these problems stem from other installed ports or even leftover files from old version on your live system that interfere with building. See my HOWTO here for a quick start:

Thread 38859


----------



## Matthias (Jul 7, 2015)

talsamon said:


> Found this:
> http://thread.gmane.org/gmane.os.freebsd.devel.emulation/12894/focus=12895
> and
> http://permalink.gmane.org/gmane.os.freebsd.devel.emulation/12899



Thanks for that hint. I updated qt4-corelibs again an now kde4-workspace compiles again. It's still running...


----------



## junovitch@ (Jul 8, 2015)

Matthias said:


> Ahhh... `pkg_libchk` is new for me. This is probably the missing link
> ...


FYI, with pkg(8) you can do `pkg check -B`.  The port was more valuable in the past when that wasn't an option but it is a built in thing now.


----------



## protocelt (Jul 8, 2015)

junovitch said:


> FYI, with pkg(8) you can do `pkg check -B`.  The port was more valuable in the past when that wasn't an option but it is a built in thing now.


Sometimes old habits die hard.


----------



## Matthias (Jul 8, 2015)

Yes, exactly that's the case. I'm a child of the pkg_* era.

But I try `pkg check -B` as well. Sure I have to move to the new tools.

BTW: recompiling qt4-corelibs did the trick - kde4-workspace is now successfully updated 

Thank you all very much!

- Matthias


----------

