nvcc 未知选项 -no_pie

发布于 2025-01-06 03:58:23 字数 260 浏览 0 评论 0原文

在我的 mac(Snow Leopard) 上更新 CUDA 后,nvidia 的 nvcc 编译器在编译时表现得很奇怪:

 nvcc batched_gemm.cu

我收到以下编译错误,并且我不知道如何解决该问题。

ld: unknown option: -no_pie
collect2: ld returned 1 exit status

有谁知道可能是什么问题?

After updating CUDA on my mac(Snow Leopard) nvidia's nvcc compiler acting strange, when compiling this:

 nvcc batched_gemm.cu

I get the following compile error, and I have no idea how to fix the problem.

ld: unknown option: -no_pie
collect2: ld returned 1 exit status

Does anyone know what the problem might be?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你的呼吸 2025-01-13 03:58:23

完成更新后,我认为是最新的稳定版(v4.1),所以根据

适用于 Windows、Linux 和 Mac OS X 的 NVIDIA CUDA 工具包 v4.1 生产版本说明、CUDA 工具包已知问题、*MAC 10。*7:

Mac OS 10.7 上的主机链接器默认生成位置无关的可执行文件。由于 CUDA 目前不支持位置无关的可执行文件,因此链接器必须通过传入 -no_pie 选项来生成位置相关的可执行文件。如果使用 nvcc 链接应用程序,则默认情况下此选项将传递给链接器。要覆盖默认行为,可以将 -Xlinker -pie 选项传递给 nvcc

Having done an update, I assume is to the latest stable (v4.1), so according to

NVIDIA CUDA Toolkit v4.1 Production Release Notes for Windows, Linux, and Mac OS X, CUDA Toolkit Known Issues, *MAC 10.*7:

The host linker on Mac OS 10.7 generates position-independent executables by default. As CUDA does not support position-independent executable currently, the linker must generate position-dependent executable by passing in the -no_pie option. If nvcc is being used to link the application, this option will be passed to the linker by default. To override the default behavior, the -Xlinker -pie option can be passed to nvcc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文