[Kde-bindings] Building qyoto on Ubuntu 12.04

Chris Burel chrisburel at gmail.com
Mon Oct 1 14:50:54 UTC 2012


PerlQt does some magic to determine if the installed libraries need an
RPATH for the smoke libraries.  It does this:

GET_FILENAME_COMPONENT(SMOKE_LIB_DIR ${SMOKE_BASE_LIBRARY} PATH)
LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES ${SMOKE_LIB_DIR}
isSystemDir)
IF("${isSystemDir}" STREQUAL "-1")
   SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_RPATH}:${SMOKE_LIB_DIR}")
ENDIF("${isSystemDir}" STREQUAL "-1")

You could do something similar in the smokegen installation, but do the
checks based on CMAKE_INSTALL_PREFIX instead.

On Mon, Oct 1, 2012 at 12:49 AM, Antonio Macrì
<ing.antonio.macri at gmail.com>wrote:

> Il 30/09/2012 22:00, Arno Rehn ha scritto:
>
>  On 30/09/12 18:13, Antonio Macrì wrote:
>>
>>> Hi all!
>>>
>>> I believe in Qyoto, and I'd love to use Qt from C#.
>>> I'm trying to build it in many ways but they all fail.
>>>
>>> Qt4, phonon, mono etc are already installed from official repository. It
>>> seems that installing smokeqt from official repositories (or
>>> Kubuntu-backports) is not the best option (and raises errors). So the
>>> best option is to build smokegen, smokeqt and assemblygen from sources,
>>> right?
>>>
>>> This is what I do:
>>>
>>>       git clone git://anongit.kde.org/smokegen
>>>       cd smokegen
>>>       mkdir build
>>>       cd build
>>>       cmake -DCMAKE_INSTALL_PREFIX="/home/**antonio/qyoto" ../
>>>       make
>>>       make install
>>>       cd ../../
>>>       git clone git://anongit.kde.org/smokeqt
>>>       cd smokeqt
>>>       mkdir build
>>>       cd build
>>>       cmake -DCMAKE_INSTALL_PREFIX="/home/**antonio/qyoto" ../
>>>       make
>>>
>>> As you can see, I set CMAKE_INSTALL_PREFIX to avoid installing in
>>> /usr/local, which would require root privileges (sudo make install): am
>>> I doing this right?
>>>
>>> Everything is ok until smokeqt's cmake, but when I run make I get the
>>> following error:
>>>
>>>       /home/antonio/qyoto/smokeqt/**build$ make
>>>       [  0%] Generating smokedata.cpp, x_1.cpp, x_2.cpp, x_3.cpp,
>>> x_4.cpp, x_5.cpp, x_6.cpp, x_7.cpp, x_8.cpp, x_9.cpp, x_10.cpp,
>>> x_11.cpp, x_12.cpp, x_13.cpp, x_14.cpp, x_15.cpp, x_16.cpp, x_17.cpp,
>>> x_18.cpp, x_19.cpp, x_20.cpp
>>>       /home/antonio/qyoto/bin/**smokegen: error while loading shared
>>> libraries: libcppparser.so: cannot open shared object file: No such file
>>> or directory
>>>       make[2]: *** [qtcore/smokedata.cpp] Errore 127
>>>       make[1]: *** [qtcore/CMakeFiles/**smokeqtcore.dir/all] Errore 2
>>>       make: *** [all] Errore 2
>>>       /home/antonio/qyoto/smokeqt/**build$
>>>
>>>
>>> I thought this was caused by RPATH and was already fixed... What I'm
>>> doing wrong?
>>>
>> The RPATH thing only enabled using smokegen from within the build
>> directory. When it's installed, the RPATH is still removed (as you can
>> see in your 'make install' output which you've posted). Either set
>> LD_LIBRARY_PATH to point to your lib/ directory or add it to
>> /etc/ld.so.conf. I guess you could also add some CMake option which
>> prevents removal of RPATH. But off the top of my head, I don't know how.
>>
>>  It works! Awesome!
>
> Many thanks to you and Dimitar, for your work and your precious support.
>
>
> Best regards,
> Antonio
>
>
> ______________________________**_________________
> Kde-bindings mailing list
> Kde-bindings at kde.org
> https://mail.kde.org/mailman/**listinfo/kde-bindings<https://mail.kde.org/mailman/listinfo/kde-bindings>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-bindings/attachments/20121001/d5021706/attachment.html>


More information about the Kde-bindings mailing list