Compile QtOpenCl.dll with Qt (64bit)
-
nope
just kernels for examples and stuff -
Strange, did you do a global disk search ? Sometimes there are things are dispatched in both Program Files and Program Files (x86)
Just to be sure did you download "that":http://developer.amd.com/tools-and-sdks/opencl-zone/opencl-tools-sdks/amd-accelerated-parallel-processing-app-sdk/ sdk ?
-
yes, thats what i installed...
i did searched for opencl files... and as i posted before i just found strange files like AMD_opencl64.dl_
i always throught the only thing i need is the opencl.dll (no matter from which source) and compile it with the needed compiler, in my case the amdx64 compiler of msvs10.0 -
no .lib or .a file ?
-
the only .lib or .a files are named glew32 and 64 or glut32 64.
-
I wonder if the SDK has installed correctly
-
did you see the lib files if you take a look at it ?
-
ololol, i searched them manually and found them
dunno why the autosearch cant track them.... OpenCL.lib and libOpenCL.a
what to do now ? -
Depending on your compiler link to either OpenCL.libg (Visual Studio) or libOpenCL.a if you are using MinGW
-
i use MSVS compiler for 64bit... how to link libs in the pro file?
-
You can use Qt Creator built in dialog for that.
Or add
@
LIBS += -Lpath/to/sdk/ -lOpenCL
@If you want to be independent from the SDK installation path, you can use the environment variables to generate the proper path
-
well, thank you so far... now the compiler says:
@NMAKE : fatal error U1077: ""C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\amd64\link.EXE"": Rückgabe-Code "0x49d"
Stop.
NMAKE : fatal error U1077: ""C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\amd64\nmake.exe"": Rückgabe-Code "0x2"
Stop.
NMAKE : fatal error U1077: "cd": Rückgabe-Code "0x2"
Stop.
NMAKE : fatal error U1077: "cd": Rückgabe-Code "0x2"
Stop.@i just added the following:
@LIBS += -LC:/Program Files (x86)/AMD APP SDK/2.9/lib/x86_64 -lOpenCL@ -
Spaces are really bad on windows
try
@LIBS += -L$$quote("C:/Program Files (x86)/AMD APP SDK/2.9/lib/x86_64"@
If that doesn't work, use the 8.3 naming scheme
-
if i just use this advice, i get the same errors like i got at the very beginning.
then i tried to copy paste the whole folder to another path without spaces and get still the same errors.
8.3 naming scheme means to give the files in particular like ?:@LIBS += -L$$quote("C:/Program Files (x86)/AMD APP SDK/2.9/lib/x86_64/libOpenCL.a") -lOpenCl@
-
No, the path itself and don't add the library name since you also pass the -lOpenCL option.
@LIBS += -LC:/PROGRA~1/AMDAPP~1/2.9/lib/x86_64@
Please check the both on the command line with dir /x
-
i just checkd and saw that its PROGRA~2 cuz of the standard Programms folder and the x86 one but the errors dont change.
-
Can you post the current content of your pro file ?
-
@TEMPLATE = lib
TARGET = QtOpenCL
gcov {
CONFIG += staticlib
} else {
CONFIG += dll
}
CONFIG += warn_on
win32 {
DESTDIR = ../../bin
!static:DEFINES += QT_MAKEDLL
}
else:DESTDIR = ../../libwin32 {
!isEmpty(QMAKE_INCDIR_OPENCL) {
QMAKE_CXXFLAGS += -I$$QMAKE_INCDIR_OPENCL
}
!isEmpty(QMAKE_LIBDIR_OPENCL) {
LIBS += -L$$QMAKE_LIBDIR_OPENCL
}
!isEmpty(QMAKE_LIBS_OPENCL) {
LIBS += $$QMAKE_LIBS_OPENCL
} else {
LIBS += -lOpenCL
}
}macx:!opencl_configure {
LIBS += -framework OpenCL
}LIBS += -LC:/PROGRA~2/AMDAPP~1/2.9/lib/x86_64
HEADERS +=
qclbuffer.h
qclcommandqueue.h
qclcontext.h
qcldevice.h
qclevent.h
qclglobal.h
qclimage.h
qclimageformat.h
qclkernel.h
qclmemoryobject.h
qclplatform.h
qclprogram.h
qclsampler.h
qcluserevent.h
qclvector.h
qclworksize.hSOURCES +=
qclbuffer.cpp
qclcommandqueue.cpp
qclcontext.cpp
qcldevice.cpp
qclevent.cpp
qclimage.cpp
qclimageformat.cpp
qclkernel.cpp
qclmemoryobject.cpp
qclplatform.cpp
qclprogram.cpp
qclsampler.cpp
qcluserevent.cpp
qclvector.cpp
qclworksize.cppPRIVATE_HEADERS +=
qclext_p.hHEADERS += $$PRIVATE_HEADERS
DEFINES += QT_BUILD_CL_LIBopencl_1_1 {
DEFINES += QT_OPENCL_1_1
}@
-
Just to be sure I understand you correctly, you are again getting the missing symbols error ?
-
[quote author="SGaist" date="1402867816"]Just to be sure I understand you correctly, you are again getting the missing symbols error ?[/quote]
yes