Hello, I want to add to my library which was build with QT(TEMPLATE=lib) CUDA, so I try create another library only with CUDA and attach to first lib, so I create this and get error ker.o: No such file or directory
What I am do wrong?
main.cpp
#include <QtCore/QCoreApplication>
#include <iostream>
using namespace std;
// the next 'include' is for CUDA error checks
#include <cuda_runtime.h>
// This is the 'elder trick of the...' - Tell the compiler this function is defined in other place
extern "C"
cudaError_t cuda_main();
ker.cu
#include <thrust/host_vector.h>
#include <thrust/device_vector.h>
#include <thrust/sort.h>
#include <iostream>
extern "C"
cudaError_t cuda_main()
{
// generate 16M random numbers on the host
thrust::host_vector<int> h_vec(1 << 26);
thrust::generate(h_vec.begin(), h_vec.end(), rand);
// transfer data to the device
thrust::device_vector<int> d_vec = h_vec;
// sort data on the device (805 Mkeys/sec on GeForce GTX 480)
thrust::sort(d_vec.begin(), d_vec.end());
// transfer data back to host
thrust::copy(d_vec.begin(), d_vec.end(), h_vec.begin());
size_t freeMem, totalMem;
cudaMemGetInfo(&freeMem, &totalMem);
std::cout << "Allocated | Total Memory | Free Memory "<< std::endl;
std::cout << 0 << ", " << totalMem << ", " << freeMem << std::endl;
std::cout << "Press enter to continue ...";
std::cin.get();
return cudaGetLastError();
}
Test.pro
QT += core
QT -= gui
TARGET = QtCuda
TEMPLATE = lib
SOURCES += main.cpp
DESTDIR = $$system(pwd)
OBJECTS_DIR = $$DESTDIR/Obj
QMAKE_CXXFLAGS_RELEASE =-O3
CUDA_SOURCES += ker.cu
CUDA_DIR = /usr/local/cuda-10.1
INCLUDEPATH += $$CUDA_DIR/include
QMAKE_LIBDIR += $$CUDA_DIR/lib64
LIBS += -L$$CUDA_DIR/lib64 -lcudart -lcuda
CUDA_ARCH = sm_50
NVCCFLAGS = --compiler-options -fno-strict-aliasing -use_fast_math --ptxas-options=-v
CUDA_INC = $$join(INCLUDEPATH,' -I','-I',' ')
cuda.commands = $$CUDA_DIR/bin/nvcc -m64 -O3 -arch=$$CUDA_ARCH -fPIC -lib -c $$NVCCFLAGS \
$$CUDA_INC $$LIBS ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT} \
2>&1 | sed -r \"s/\(([0-9]+)\)/:\1/g\" 1>&2
cuda.dependency_type = TYPE_C
cuda.depend_command = $$CUDA_DIR/bin/nvcc -O3 -M $$CUDA_INC $$NVCCFLAGS ${QMAKE_FILE_NAME}
cuda.input = CUDA_SOURCES
cuda.output = ${QMAKE_FILE_BASE}.o
QMAKE_EXTRA_COMPILERS += cuda