centos系统下,Qt中使用openGL和cuda,.pro需要配置的库和头文件


#CONFIG+= qt opengl warn_on release
TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt

# this is the important part   配置openGL连接库,很重要,否则会出现 未定义引用的...
linux|win32: LIBS += -lGLU
linux|win32: LIBS += -lGL
linux|win32: LIBS += -lglut

SOURCES += main.cpp \
    vector.cpp \
    particle.cpp \
    mtime.cpp \
    merror.cpp \
    mdebug.cpp \
    matrix.cpp \
    image.cpp \
    particle_system.cpp \
    GLee.c

HEADERS += \
    vector-inline.h \
    vector.h \
    particle_system.h \
    particle.h \
    mtime.h \
    merror.h \
    mdebug.h \
    matrix-inline.h \
    matrix.h \
    image.h \

    GLee.h \

#cuda配置

# 让你的项目可以看到后缀cu的cuda代码文件,cudatest.cu是你创建的项目

OTHER_FILES +=  cudatest.cu \

# CUDA配置,具体按照你系统环境更改

CUDA_SOURCES += cudatest.cu \

CUDA_SDK = "/usr/local/cuda-7.5/samples/"   # cudaSDK路径

CUDA_DIR = "/usr/local/cuda-7.5/"            # CUDA tookit路径

SYSTEM_NAME = x64         # 自己系统环境 'Win32', 'x64', or 'Win64'

SYSTEM_TYPE = 64            #操作系统位数 '32' or '64',

CUDA_ARCH = sm_21           # cuda架构, for example 'compute_10', 'compute_11', 'sm_10'

NVCC_OPTIONS = --use_fast_math

# include paths

INCLUDEPATH += /usr/local/cuda/include \
/usr/local/cuda/samples/common/inc/

LIBS += /usr/local/cuda/lib64/libcudart.so \
        /usr/local/cuda/lib64/libcufft.so \
      /usr/local/cuda/lib64/libcuinj64.so \
      /usr/local/cuda/lib64/libcurand.so \
    /usr/local/cuda/lib64/libcusparse.so \
    /usr/local/cuda/lib64/libnppc.so \
    /usr/local/cuda/lib64/libnppi.so \
    /usr/local/cuda/lib64/libnpps.so \
    /usr/local/cuda/lib64/libnvToolsExt.so


CUDA_OBJECTS_DIR = ./

# The following library conflicts with something in Cuda

#QMAKE_LFLAGS_RELEASE = /NODEFAULTLIB:msvcrt.lib

#QMAKE_LFLAGS_DEBUG   = /NODEFAULTLIB:msvcrtd.lib

# Add the necessary libraries

CUDA_LIBS =  cudart cufft

# The following makes sure all path names (which often include spaces) are put between quotation marks

CUDA_INC = $$join(INCLUDEPATH,'" -I"','-I"','"')

NVCC_LIBS = $$join(CUDA_LIBS,' -l','-l', '')

#LIBS += $$join(CUDA_LIBS,'.so ', '', '.so')

# Configuration of the Cuda compiler

CONFIG(debug, debug|release) {

    # Debug mode

    cuda_d.input = CUDA_SOURCES

    cuda_d.output = $$CUDA_OBJECTS_DIR/${QMAKE_FILE_BASE}_cuda.o

    cuda_d.commands = $$CUDA_DIR/bin/nvcc -D_DEBUG $$NVCC_OPTIONS $$CUDA_INC $$NVCC_LIBS --machine $$SYSTEM_TYPE -arch=$$CUDA_ARCH -c -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}

    cuda_d.dependency_type = TYPE_C

    QMAKE_EXTRA_COMPILERS += cuda_d

}

else {

    # Release mode

    cuda.input = CUDA_SOURCES

    cuda.output = $$CUDA_OBJECTS_DIR/${QMAKE_FILE_BASE}_cuda.o

    cuda.commands = $$CUDA_DIR/bin/nvcc $$NVCC_OPTIONS $$CUDA_INC $$NVCC_LIBS --machine $$SYSTEM_TYPE -arch=$$CUDA_ARCH -O3 -c -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}

    cuda.dependency_type = TYPE_C

    QMAKE_EXTRA_COMPILERS += cuda


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值