Seite 1 von 1

QtOpenCL

Verfasst: 1. Januar 2011 21:34
von Razoron
Hi,
es interessiert mich sehr, wie ich den GPU mit in mein Qt Programm einschließen kann. Ich benutzte Ubuntu Meverick (10.10) und habe den OpenCL-Treiber und das SDK schon installiert. Dann bin ich auf QtOpenCL gestoßen: http://labs.qt.nokia.com/2010/04/07/usi ... l-with-qt/. Schnell habe ich das Git Repository geklont und bin den Anweisungen gefolgt: http://doc.qt.nokia.com/opencl-snapshot/building.html. Ich habe es mit
./configure -qmake /usr/bin/qmake-qt4
konfiguriert.
Dieser Shellscript spuckte
This is the QtOpenCL configuration utility.

Qt version ............. 4.7.0
qmake .................. /usr/bin/qmake-qt4
OpenCL 1.0 ............. yes
OpenCL 1.1 ............. yes
OpenCL/OpenGL interop .. yes
Extra QMAKE_CXXFLAGS ...
Extra INCLUDEPATH ......
Extra LIBS ............. -lOpenCL

QtOpenCL has been configured. Run '/usr/bin/make' to build.
aus. Anschließend habe ich es mit make gebaut. Es sind keine Fehler aufgetreten. Jetzt meine Frage: Wohin sollte ich die Libs und die Header verschieben? Denn wenn ich eine Demo starte, z.B. die mit dem Mandelbrot, sucht er vergeblich nach libQtOpenCL.so.1.

Verfasst: 1. Januar 2011 22:25
von padreigh
normalerweise gibts ein "make install" das es passend installiert ...

Verfasst: 1. Januar 2011 22:30
von Razoron
Leider nicht:
...
make[3]: Für das Ziel »install« ist nichts zu tun.
...

Verfasst: 1. Januar 2011 22:52
von kater
Dahin kopieren wo dein Compiler sie erwartet.
Er erwartet sie unter anderen dort, wo du ihm sagst, wo er schaun soll.

Verfasst: 2. Januar 2011 10:36
von Christian81
Außerdem steht doch dort wie man es ausprobiert obs geht... http://doc.qt.nokia.com/opencl-snapshot ... is-working

Verfasst: 2. Januar 2011 13:09
von Razoron
Ich mag gerne die automatisierte Installation und fummele nicht gerne in den Include/Lib Katakomben von Linux herum :D. Na gut, dann werde ich sie wohl von Hand kopieren müssen.

Verfasst: 3. Januar 2011 19:58
von padreigh
vielleicht sowas?
mkdir -p ${HOME}/share/include
mkdir -p ${HOME}/share/lib
mkdir -p ${HOME}/share/bin
cp ${HOME}/.bashrc ${HOME}/.bashrc_old
echo "export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${HOME}/share/lib" >> ${HOME}/.bashrc
echo "export PATH=${PATH}:${HOME}/share:${HOME}/share/include:${HOME}/share/bin" >> ${HOME}/.bashrc
Dann in share/[include,bin,lib] ein Verzeichnis OpenCl und die entsprechenden Dateien dahin ... dann liegt alles in deinem home und im Pfad und du hast eine Konsistente Weise eigene/fremdlibs ohne "make install" einzubinden