个人社区网站备案,led外贸网站建设,专业网页设计服务,怀化举报网站由于 Jetson 为 ARM64 (aarch64) 的系统架构#xff0c;所以不能用 pip install 直接安装#xff0c;需要通过源码编译。 
升级系统 JetPack 由于 Open3D-ML 目前只支持 CUDA 10.0 以及 CUDA 11.*#xff0c;并且 JetPack 的 CUDA 开发环境只有10.2、11.4以及12.2#xff0… 由于 Jetson 为 ARM64 (aarch64) 的系统架构所以不能用 pip install 直接安装需要通过源码编译。 
升级系统 JetPack 由于 Open3D-ML 目前只支持 CUDA 10.0 以及 CUDA 11.*并且 JetPack 的 CUDA 开发环境只有10.2、11.4以及12.2所以我们只能选择 CUDA 11.4 进行安装。 
使用 jtop命令查看 JetPack 版本。如果 Jetson 系统的 JetPack 低于 5.1.2 则需要通过 SDK Manager 升级到 JetPack 5.1.2。 
如果你的系统已经是 JetPack 5.1.2 那我也推荐你通过 SDK Manager 重新安装一遍排除难以发现的错误。 
详细指南参考文章[Jetson Xavier NX 升级或重新安装 JetPack 指南]。 
安装 PyTorch 安装教程参考文章[Jetson Xavier NX 安装 CUDA 支持的 Pytorch 指南]。 
注意PyTorch 的 CUDA 支持版本需要和 Open3D-ML 的一致同为 CUDA 11.4。否则与最后安装 Open3D-ML 的时候会报错 下载源码 下载 Open3D 源码 如果你之前下载过则不需要再下载 
git clone https://github.com/isl-org/Open3D.git 
下载 Open3D-ML 源码 git clone https://github.com/isl-org/Open3D-ML.git 
前提准备 安装依赖 
cd Open3D
bash util/install_deps_ubuntu.sh 
pip install yapf 
重新链接 6.0.29 的 libstdc.so否则会出现undefined reference to std::__throw_bad_array_new_Length()GLIBCXX_3.4.29的错误。 
ln -sf /usr/local/lib64/libstdc.so.6.0.29 /lib/aarch64-linux-gnu/libstdc.so.6 
编译安装 国际惯例先创建一个 build 文件夹。 
mkdir build
cd build 
sudo cmake \
-DBUILD_CUDA_MODULEON \
-DBUILD_PYTORCH_OPSON \
-DBUILD_TENSORFLOW_OPSOFF \
-DBUILD_EXAMPLESOFF \
-DBUILD_SHARED_LIBSON \
-DCMAKE_BUILD_TYPERelease \
-DGLIBCXX_USE_CXX11_ABION \
-DBUILD_PYTHON_MODULEON \
-DBUNDLE_OPEN3D_MLON \
-DCUDA_TOOLKIT_ROOT_DIR/usr/local/cuda \
-DPython3_EXECUTABLE/path/to/python \
-DOPEN3D_ML_ROOT../../Open3D-ML \
.. 
-DBUILD_PYTORCH_OPS和-DBUILD_TENSORFLOW_OPS分别为构建 PyTorch 版和构建 Tensorflow 版选项两个选择可以同时为ON本指南只构建 PyTorch。 
-DBUILD_EXAMPLES表示是否构建官方示例这里设置OFF不构建可以缩短构建时间。 
如果没有使用 Python 虚拟环境则不需要-DPython3_EXECUTABLE如果使用了 Python 虚拟环境需要改成虚拟环境的 Python 的路径使用which python查看路径。 
-DOPEN3D_ML_ROOT为刚刚下载的 Open-ML 的源代码路径。 
编译 
make -j$(nproc) 
编译过程需要数个小时的时间。 
编译完毕后需要添加一个环境变量 
vim ~/.zsh #或者 ~/.bashrc 
在文件末尾添加一行 
export LD_PRELOAD/usr/local/lib/libOpen3D.so 
安装 Open3D C 库 
make install 
安装 Open3D 与 Open3D-ML Python 库 
make install-pip-package -j$(nproc) 
错误解决 undefined reference to *** GLIBCXX_3.4.29 这个错误问题出在系统的 libstdc 版本不够高。尝试使用strings /lib/aarch64-linux-gnu/libstdc.so.6 | grep GLIBCXX命令查看 libstdc 是否支持 GLIBCXX_3.4.29如果缺少 GLIBCXX_3.4.29 则请尝试软链接 libstdc.so.6 到正确版本。 
ln -sf /usr/local/lib64/libstdc.so.6.0.29 /lib/aarch64-linux-gnu/libstdc.so.6 
如果提示找不到 libstdc.so.6.0.29 文件则请升级 libstdc 库。 CMAKE_CUDA_ARCHITECTURES now detected for NVCC 检查系统默认 CUDA 版本是否存在 nvcc 二进制文件。 
sudo stat /usr/local/cuda/bin/nvcc 
若提示不存在文件则 CUDA 开发环境已经损坏需要重新安装 JetPack。详细参考文章 [Jetson Xavier NX 升级或重新安装 JetPack 指南]。 
/lib/Release/libOpen3D.so: cannot allocate memory in static TLS block vim ~/.zsh #或者 ~/.bashrc 
在文件末尾添加一行 
export LD_PRELOAD/usr/local/lib/libOpen3D.so 
ModuleNotFoundError: No module named ‘jupyter_packaging’ pip install jupyter-packaging 
ModuleNotFoundError: No module named ‘ipywidgets’ pip install ipywidgets 
Open3D was built with CUDA 11.4 but PyTorch was built with CUDA 10.2 这个警告表示PyTorch 的 CUDA 版本和 Open3D-ML 的 CUDA 版本不一致。需要使用与 Open3D-ML 一致的 CUDA 版本重新构建安装 PyTorch。详细请参考文章[Jetson Xavier NX 安装 CUDA 支持的 Pytorch 指南]。 测试验证 python3 -c import open3d.ml.torch 
若无任何输出则表示安装成功。