PerlQt does some magic to determine if the installed libraries need an RPATH for the smoke libraries.  It does this:<br><br>GET_FILENAME_COMPONENT(SMOKE_LIB_DIR ${SMOKE_BASE_LIBRARY} PATH)<br>LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES ${SMOKE_LIB_DIR} isSystemDir)<br>
IF("${isSystemDir}" STREQUAL "-1")<br>   SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_RPATH}:${SMOKE_LIB_DIR}")<br>ENDIF("${isSystemDir}" STREQUAL "-1")<br><br>You could do something similar in the smokegen installation, but do the checks based on CMAKE_INSTALL_PREFIX instead.<br>
<br><div class="gmail_quote">On Mon, Oct 1, 2012 at 12:49 AM, Antonio Macrì <span dir="ltr"><<a href="mailto:ing.antonio.macri@gmail.com" target="_blank">ing.antonio.macri@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Il 30/09/2012 22:00, Arno Rehn ha scritto:<div><div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 30/09/12 18:13, Antonio Macrì wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all!<br>
<br>
I believe in Qyoto, and I'd love to use Qt from C#.<br>
I'm trying to build it in many ways but they all fail.<br>
<br>
Qt4, phonon, mono etc are already installed from official repository. It<br>
seems that installing smokeqt from official repositories (or<br>
Kubuntu-backports) is not the best option (and raises errors). So the<br>
best option is to build smokegen, smokeqt and assemblygen from sources,<br>
right?<br>
<br>
This is what I do:<br>
<br>
      git clone git://<a href="http://anongit.kde.org/smokegen" target="_blank">anongit.kde.org/smokegen</a><br>
      cd smokegen<br>
      mkdir build<br>
      cd build<br>
      cmake -DCMAKE_INSTALL_PREFIX="/home/<u></u>antonio/qyoto" ../<br>
      make<br>
      make install<br>
      cd ../../<br>
      git clone git://<a href="http://anongit.kde.org/smokeqt" target="_blank">anongit.kde.org/smokeqt</a><br>
      cd smokeqt<br>
      mkdir build<br>
      cd build<br>
      cmake -DCMAKE_INSTALL_PREFIX="/home/<u></u>antonio/qyoto" ../<br>
      make<br>
<br>
As you can see, I set CMAKE_INSTALL_PREFIX to avoid installing in<br>
/usr/local, which would require root privileges (sudo make install): am<br>
I doing this right?<br>
<br>
Everything is ok until smokeqt's cmake, but when I run make I get the<br>
following error:<br>
<br>
      /home/antonio/qyoto/smokeqt/<u></u>build$ make<br>
      [  0%] Generating smokedata.cpp, x_1.cpp, x_2.cpp, x_3.cpp,<br>
x_4.cpp, x_5.cpp, x_6.cpp, x_7.cpp, x_8.cpp, x_9.cpp, x_10.cpp,<br>
x_11.cpp, x_12.cpp, x_13.cpp, x_14.cpp, x_15.cpp, x_16.cpp, x_17.cpp,<br>
x_18.cpp, x_19.cpp, x_20.cpp<br>
      /home/antonio/qyoto/bin/<u></u>smokegen: error while loading shared<br>
libraries: libcppparser.so: cannot open shared object file: No such file<br>
or directory<br>
      make[2]: *** [qtcore/smokedata.cpp] Errore 127<br>
      make[1]: *** [qtcore/CMakeFiles/<u></u>smokeqtcore.dir/all] Errore 2<br>
      make: *** [all] Errore 2<br>
      /home/antonio/qyoto/smokeqt/<u></u>build$<br>
<br>
<br>
I thought this was caused by RPATH and was already fixed... What I'm<br>
doing wrong?<br>
</blockquote>
The RPATH thing only enabled using smokegen from within the build<br>
directory. When it's installed, the RPATH is still removed (as you can<br>
see in your 'make install' output which you've posted). Either set<br>
LD_LIBRARY_PATH to point to your lib/ directory or add it to<br>
/etc/ld.so.conf. I guess you could also add some CMake option which<br>
prevents removal of RPATH. But off the top of my head, I don't know how.<br>
<br>
</blockquote></div></div>
It works! Awesome!<br>
<br>
Many thanks to you and Dimitar, for your work and your precious support.<br>
<br>
<br>
Best regards,<br>
Antonio<div class="HOEnZb"><div class="h5"><br>
<br>
______________________________<u></u>_________________<br>
Kde-bindings mailing list<br>
<a href="mailto:Kde-bindings@kde.org" target="_blank">Kde-bindings@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/kde-bindings" target="_blank">https://mail.kde.org/mailman/<u></u>listinfo/kde-bindings</a><br>
</div></div></blockquote></div><br>