首页 > 解决方案 > 如何在 mac arm 上构建 libtorch?

问题描述

我下载了 libtorch 并在 macbook pro ARM 上制作了这些文件:

example-app/
     build/
     libtorch/
     CMakeLists.txt
     example-app.cpp

然后我使用这些命令来构建火炬:

cmake -DCMAKE_PREFIX_PATH=/path-to-example-app/example-app/libtorch
make

我得到这个错误:

building for macOS-x86_64 but attempting to link with file built for unknown-arm64

你能帮助我吗?

标签: c++macosarmlibtorch

解决方案


因为 libtorch 构建默认仅适用于 x86 拱门,而不适用于 arm 拱门。可能您需要自己编译它。

我的意思是您下载的 libtorch 是预构建的库,其中包含 .so 文件。这不会起作用,因为 pytorch 只为 x86 架构提供预构建库。而且您正在使用 arm 架构 cpu。

您需要下载 libtorch 源代码,并从头开始构建 libtorch。

从头开始构建 libtorch 后,您将获得适合链接到 arm 架构 cpu 上的二进制文件 .so。


推荐阅读