日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

cuda linux编译器_linux下如何编译CUDA+QT(qtcreator下)

發布時間:2025/3/8 linux 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cuda linux编译器_linux下如何编译CUDA+QT(qtcreator下) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

具體操作,修改qt項目配置文件pro,在配置后面加入如下代碼,我們就實現了qt+cuda的交叉編譯。

# 讓你的項目可以看到后綴cu的cuda代碼文件

OTHER_FILES += ?./Bll/ImageReconstruction/Cuda/CudaFDK.cu \

./Bll/ImageReconstruction/Cuda/CudaFDK_kernel.cu \

./Bll/ImageReconstruction/Cuda/CudaFDK_SS.cu \

./Bll/ImageReconstruction/Cuda/CudaFDK_SS_kernel.cu

# CUDA配置,具體按照你系統環境更改

CUDA_SOURCES += ./Bll/ImageReconstruction/Cuda/CudaFDK.cu \

./Bll/ImageReconstruction/Cuda/CudaFDK_kernel.cu \

./Bll/ImageReconstruction/Cuda/CudaFDK_SS.cu \

./Bll/ImageReconstruction/Cuda/CudaFDK_SS_kernel.cu

CUDA_SDK = "/usr/local/cuda-5.0/" ? # cudaSDK路徑

CUDA_DIR = "/usr/local/cuda-5.0/" ? ? ? ? ? ?# CUDA tookit路徑

SYSTEM_NAME = linux ? ? ? ? # 自己系統環境 'Win32', 'x64', or 'Win64'

SYSTEM_TYPE = 32 ? ? ? ? ? ?#操作系統位數 '32' or '64',

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

NVCC_OPTIONS = --use_fast_math

# include paths

INCLUDEPATH += $$CUDA_DIR/include

# library directories

QMAKE_LIBDIR += $$CUDA_DIR/lib/

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

}

總結

以上是生活随笔為你收集整理的cuda linux编译器_linux下如何编译CUDA+QT(qtcreator下)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。