一个非常简单的Makefile应该是什么样子的,以便在linux下编译Cuda
我想在Linux下编译一个非常基本的hello world级别的Cuda程序。我有三个文件:
- 内核:helloWorld.cu
- 主要方法:helloWorld.cpp
- 公共头文件:helloWorld.h
你能给我写一个简单的 Makefile 来用 nvcc 和 g++ 编译它吗?
谢谢,
加博尔
I want to compile a very basic hello world level Cuda program under Linux. I have three files:
- the kernel: helloWorld.cu
- main method: helloWorld.cpp
- common header: helloWorld.h
Could you write me a simple Makefile to compile this with nvcc and g++?
Thanks,
Gabor
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我以前从未听说过 Cuda,但从在线文档来看,X.cu 似乎应该编译成 Xo,因此拥有 helloWorld.cu 和 helloWorld.cpp 并不是一个好主意。在您的许可下,我将重命名“内核”helloKernel.cu,然后这应该可以工作:(
请注意,那些前导空格是制表符。)
如果可以,请尝试更灵活的版本:
I've never heard of Cuda before, but from the online documentation it looks as if X.cu is supposed to be compiled into X.o, so having helloWorld.cu and helloWorld.cpp is not a good idea. With your permission I'll rename the "kernel" helloKernel.cu, then this should work:
(Note that those leading spaces are tabs.)
If that works, try a slicker version:
以防万一,这是我的变体。我用它在 Mac 上编译 CUDA 项目,但我认为它也适合 Linux。它需要 CUDA SDK。
Just in case, here's my variant. I use it to compile CUDA projects on Mac, but I think it will suit Linux too. It requires CUDA SDK.
我的版本,冗长但透明:
My version, verbose but transparent:
这是我当前项目的示例。正如你所看到的,有一些 OpenGL 库,
然后运行
make ce
和
./ce
Here is an example what my current project looks like. As you can see there is a few OpenGL libraries
then run
make ce
and
./ce