Russian Qt Forum

Qt => Вопросы новичков => Тема начата: taifun от Февраль 23, 2011, 11:06



Название: QtCreator + библиотека CUDA
Отправлено: taifun от Февраль 23, 2011, 11:06
Всем доброго времени суток!
Хочу подключить к проекту библиотеку CUDA, но что-то не клеится:
.pro
Код:
#-------------------------------------------------
#
# Project created by QtCreator 2011-02-20T15:17:48
#
#-------------------------------------------------

QT       += core
QT       -= gui

TARGET = TestCUDA
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app
SOURCES += main.cpp

INCLUDEPATH += /usr/local/cuda/include
LIBS        += -L/usr/local/cuda/lib

#include(/home/plotnikov/NVIDIA_GPU_Computing_SDK/C/common/common.mk)

file.cpp
Код:
//#include </home/plotnikov/NVIDIA_GPU_Computing_SDK/C/common/common.mk>

#include <QtCore/QCoreApplication>
#include <stdio.h>

#include <cuda.h>
#include <cuda_runtime_api.h>
#include <cuda_runtime.h>

#include <QDebug>

int main(int argc, char *argv[])
{
    int devCount;
    cudaDeviceProp devProp;

    cudaGetDeviceCount(&devCount);

    printf("Pound %d devices\n", devCount);

    for(int device = 0; device < devCount; device++){
        cudaGetDeviceProperties(&devProp, device);
        printf("Device %d\n", device);
        printf("Compute cepebility          :%d. %d\n", devProp.major, devProp.minor);
    }

    return 0;
    //return a.exec();
}

а ругаться начинает так:
Код:
/home/Project/TestCUDA-build-desktop/main.o:: In function `main':
/home/Project/TestCUDA-build-desktop/../TestCUDA/main.cpp:18: error: undefined reference to `cudaGetDeviceCount'
/home/Project/TestCUDA-build-desktop/../TestCUDA/main.cpp:23: error: undefined reference to `cudaGetDeviceProperties'
:: error: collect2: выполнение ld завершилось с кодом возврата 1

Вот что не так делаю? есть SDK и там во всех примерах подключают файл common.mk - в MakeFile (но я думаю можно и без него же обойтись как-то)


Название: Re: QtCreator + библиотека CUDA
Отправлено: Пантер от Февраль 23, 2011, 11:21
LIBS        += -L/usr/local/cuda/lib -lлиба_где_находится_cudaGetDeviceCount


Название: Re: QtCreator + библиотека CUDA
Отправлено: taifun от Февраль 23, 2011, 11:28
там их немного, но честно говоря я не знаю в какой библиотеке они хранятся. Я слабо понимаю, но не могу ли я каким-нибудь образом обойтись только
INCLUDEPATH += /usr/local/cuda/include
 или
LIBS        += -L/usr/local/cuda/lib -lлиба_где_находится_cudaGetDeviceCount - необходимо подключать в обязательном порядке?


Название: Re: QtCreator + библиотека CUDA
Отправлено: Пантер от Февраль 23, 2011, 11:45
LIBS обязательно. Поищи в /usr/local/cuda/lib в файлах слово cudaGetDeviceCount (через grep). Вот либу в которой будет это слово и подключай через -l


Название: Re: QtCreator + библиотека CUDA
Отправлено: taifun от Февраль 23, 2011, 12:11
Спасибо! справился, заработало