[Kde-bindings] Linking problem - kdebinindings/ruby/nepomuk

Maciej Mrozowski reavertm at gmail.com
Tue Jun 29 23:27:53 UTC 2010


On Saturday 05 of June 2010 01:35:58 Maciej Mrozowski wrote:
> Hi
> 
> I have a problem building trunk ruby bindings
> 
> >>> Working in BUILD_DIR: "/var/tmp/portage/kde-base/kdebindings-
> 
> ruby-9999/work/kdebindings-ruby-9999_build"
> cmake -C /var/tmp/portage/kde-base/kdebindings-
> ruby-9999/temp/gentoo_common_config.cmake
> -DCMAKE_INSTALL_PREFIX=/usr/kde/live -DKDE4_BUILD_TESTS=OFF
> -DCMAKE_INSTALL_PREFIX=/usr/kde/live -
> DCMAKE_SKIP_RPATH=OFF -DCMAKE_SYSTEM_PREFIX_PATH=/usr/kde/live -
> DRUBY_LIBRARY=/usr/lib64/libruby18.so.1.8.7 -
> DRUBY_INCLUDE_PATH=/usr/lib64/ruby/1.8/x86_64-linux -
> DRUBY_EXECUTABLE=/usr/bin/ruby18 -DWITH_akonadi=OFF -DWITH_AKONADI=OFF -
> DWITH_Akonadi=OFF -DWITH_KdepimLibs=OFF -DWITH_okular=OFF -DWITH_OKULAR=OFF
> - DWITH_Okular=OFF -DWITH_phonon=OFF -DWITH_PHONON=OFF -DWITH_Phonon=OFF -
> DWITH_plasma=OFF -DWITH_PLASMA=OFF -DWITH_Plasma=OFF -DWITH_QScintilla=OFF
> - DWITH_Qwt=OFF -DWITH_Nepomuk=ON -DWITH_Soprano=ON -DDISABLE_QtWebKit=ON
> - DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_INSTALL_DO_STRIP=OFF -
> DCMAKE_USER_MAKE_RULES_OVERRIDE=/var/tmp/portage/kde-base/kdebindings-
> ruby-9999/temp/gentoo_rules.cmake  /var/tmp/portage/kde-base/kdebindings-
> ruby-9999/work/ruby18/kdebindings-ruby-9999
> loading initial cache file /var/tmp/portage/kde-base/kdebindings-
> ruby-9999/temp/gentoo_common_config.cmake
> -- The C compiler identification is GNU
> -- The CXX compiler identification is GNU
> -- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc
> -- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++
> -- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++ --
> works -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Looking for Q_WS_X11
> -- Looking for Q_WS_X11 - found
> -- Looking for Q_WS_WIN
> -- Looking for Q_WS_WIN - not found.
> -- Looking for Q_WS_QWS
> -- Looking for Q_WS_QWS - not found.
> -- Looking for Q_WS_MAC
> -- Looking for Q_WS_MAC - not found.
> -- Found Qt-Version 4.6.2 (using /usr/bin/qmake)
> -- Looking for XOpenDisplay in
> /usr/lib64/libX11.so;/usr/lib64/libXext.so;/usr/lib64/libXft.so;/usr/lib64/
> libXau.so;/usr/lib64/libXdmcp.so;/usr/lib64/libXpm.so -- Looking for
> XOpenDisplay in
> /usr/lib64/libX11.so;/usr/lib64/libXext.so;/usr/lib64/libXft.so;/usr/lib64/
> libXau.so;/usr/lib64/libXdmcp.so;/usr/lib64/libXpm.so - found
> -- Looking for gethostbyname
> -- Looking for gethostbyname - found
> -- Looking for connect
> -- Looking for connect - found
> -- Looking for remove
> -- Looking for remove - found
> -- Looking for shmat
> -- Looking for shmat - found
> -- Looking for IceConnectionNumber in ICE
> -- Looking for IceConnectionNumber in ICE - found
> -- Found X11: /usr/lib64/libX11.so
> -- Looking for include files CMAKE_HAVE_PTHREAD_H
> -- Looking for include files CMAKE_HAVE_PTHREAD_H - found
> -- Looking for pthread_create in pthreads
> -- Looking for pthread_create in pthreads - not found
> -- Looking for pthread_create in pthread
> -- Looking for pthread_create in pthread - found
> -- Found Threads: TRUE
> -- Looking for _POSIX_TIMERS
> -- Looking for _POSIX_TIMERS - found
> -- Found Automoc4: /usr/bin/automoc4
> -- Found Perl: /usr/bin/perl
> -- Adding /usr/share/apps/cmake/modules to CMAKE_MODULE_PATH
> -- Found Phonon: /usr/include  (found version "4.4.2", required is
> "4.3.80") -- Performing Test _OFFT_IS_64BIT
> -- Performing Test _OFFT_IS_64BIT - Success
> -- Performing Test HAVE_FPIE_SUPPORT
> -- Performing Test HAVE_FPIE_SUPPORT - Success
> -- Performing Test __KDE_HAVE_W_OVERLOADED_VIRTUAL
> -- Performing Test __KDE_HAVE_W_OVERLOADED_VIRTUAL - Success
> -- Performing Test __KDE_HAVE_GCC_VISIBILITY
> -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success
> -- Found KDE 4.5 include dir: /usr/kde/live/include
> -- Found KDE 4.5 library dir: /usr/kde/live/lib64
> -- Found the KDE4 kconfig_compiler preprocessor:
> /usr/kde/live/bin/kconfig_compiler
> -- Found automoc4: /usr/bin/automoc4
> -- Found LibAttica: /usr/lib64/libattica.so
> -- Found QImageBlitz: /usr/include/qimageblitz
> -- Found Qwt: /usr/lib64/libqwt.so
> -- Found Soprano: /usr/include
> -- Found SharedDesktopOntologies: /usr/share/ontology
> -- Found Nepomuk: /usr/kde/live/lib64/libnepomuk.so
> -- looking for config.h
> -- Found Ruby: /usr/bin/ruby18
> -- Ruby found: /usr/lib64/libruby18.so.1.8.7
> -- Ruby found: /usr/lib64/libruby18.so.1.8.7
> -- rbuic4 not found, ruby-clock will not created
> -- Ruby found: /usr/lib64/libruby18.so.1.8.7
> -- rbuic4 not found, ruby-digital-clock will not created
> -- Performing Test RubyCompiles
> -- Performing Test RubyCompiles - Success
> -- Ruby Executable: /usr/bin/ruby18
> -- Ruby Libraries: /usr/lib64/libruby18.so.1.8.7
> -- Ruby Include Directories: /usr/lib64/ruby/1.8/x86_64-
> linux/usr/lib64/ruby/1.8/x86_64-linux
> -- Build Ruby bindings:
> KHTML;KIO;KTextEditor;Korundum;KrossRuby;Nepomuk;Plasma;QtRuby;QtScript;QtT
> est;QtUiTools;Qwt;Solid;Soprano -- Skip Ruby bindings:
> Akonadi;Okular;Phonon;QScintilla;QtWebKit
> 
> [...]
> 
> make -f ruby/nepomuk/CMakeFiles/rubynepomuk.dir/build.make
> ruby/nepomuk/CMakeFiles/rubynepomuk.dir/build
> make[2]: Entering directory `/var/tmp/portage/kde-base/kdebindings-
> ruby-9999/work/kdebindings-ruby-9999_build'
> Linking CXX shared module ../../lib/nepomuk.so
> cd /var/tmp/portage/kde-base/kdebindings-ruby-9999/work/kdebindings-
> ruby-9999_build/ruby/nepomuk && /usr/bin/cmake -E cmake_link_script
> CMakeFiles/rubynepomuk.dir/link.txt --verbose=1
> /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++  -fPIC -march=native -O2 -pipe
> - msse3 -ftree-vectorize  -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef
> - Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security
> -fno- exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common
> -Woverloaded-virtual -fno-threadsafe-statics -fvisibility=hidden
> -fvisibility-inlines-hidden -Wl,-- enable-new-dtags -Wl,--fatal-warnings
> -Wl,--no-undefined -lc -Wl,--as-needed - L/usr/kde/live/lib64 -shared
> -Wl,-soname,nepomuk.so -o ../../lib/nepomuk.so
> CMakeFiles/rubynepomuk.dir/nepomuk.o
> CMakeFiles/rubynepomuk.dir/nepomukhandlers.o -L/usr/kde/live/lib64 -
> L/var/tmp/portage/kde-base/kdebindings-ruby-9999/work/kdebindings-
> ruby-9999_build/lib -L/usr/lib64/qt4 /usr/lib64/libruby18.so.1.8.7
> /usr/kde/live/lib64/libnepomuk.so -lsmokeqtcore -lsmokesoprano
> -lsmokekdecore -lsmokenepomuk ../../lib/libqtruby4shared.so.2.0.0
> /usr/lib64/qt4/libQtCore.so -lpthread /usr/lib64/libruby18.so.1.8.7
> /usr/lib64/qt4/libQtGui.so /usr/lib64/qt4/libQtNetwork.so -lsmokebase
> -lsmokeqtcore -lsmokeqtgui - lsmokeqtxml -lsmokeqtopengl -lsmokeqtsql
> -lsmokeqtnetwork -lsmokeqtdbus - lsmokeqtsvg
> -Wl,-rpath,/usr/kde/live/lib64:/var/tmp/portage/kde-
> base/kdebindings-ruby-9999/work/kdebindings-
> ruby-9999_build/lib:/usr/lib64/qt4:
> CMakeFiles/rubynepomuk.dir/nepomukhandlers.o: In function `QHash<QUrl,
> Nepomuk::Variant>::findNode(QUrl const&, unsigned int*) const':
> nepomukhandlers.cpp:
> (.text._ZNK5QHashI4QUrlN7Nepomuk7VariantEE8findNodeERKS0_Pj[QHash<QUrl,
> Nepomuk::Variant>::findNode(QUrl const&, unsigned int*) const]+0x15):
> undefined reference to `qHash(QUrl const&)'
> collect2: ld returned 1 exit status
> make[2]: *** [lib/nepomuk.so] Error 1
> make[2]: Leaving directory `/var/tmp/portage/kde-base/kdebindings-
> ruby-9999/work/kdebindings-ruby-9999_build'
> make[1]: *** [ruby/nepomuk/CMakeFiles/rubynepomuk.dir/all] Error 2
> make[1]: Leaving directory `/var/tmp/portage/kde-base/kdebindings-
> ruby-9999/work/kdebindings-ruby-9999_build'
> make: *** [all] Error 2
> 
> Maybe Qt-4.6.2 related?

This problem is still present in rc1. This time with Qt-4.6.3. It it's Qt 
issue (4.7 required) then it should be explicitly reflected in CMake checks.

Also there's ruby/qtscript linking issue (which is by the way solved by 
attached patch).
Some time ago I've posted "Ruby linking revisited" with linking deps cleanup 
(I'm attaching patch here again), Arno promised to take a look but haven't 
succeeded. Release date is drawing nearer so take a look, it may prevent 
'last-time bindings fixes' and tarball re-rolling.

-- 
regards
MM
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kdebindings-ruby.diff
Type: text/x-patch
Size: 12138 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-bindings/attachments/20100630/fb1e8738/attachment.diff>


More information about the Kde-bindings mailing list