Gao Hongcheng | College of Computer Science, Chongqing University
系统: ubuntu20.04
Pymesh版本:PyMesh v0.3 Release PyMesh/PyMesh: Geometry Processing Library for Python (github.com)
一、建立环境
将pymesh文件git clone到本地(注意third_party的内容要全)
安装系统依赖
sudo apt-get install \
libeigen3-dev \
libgmp-dev \
libgmpxx4ldbl \
libmpfr-dev \
libboost-dev \
libboost-thread-dev \
libtbb-dev \
python3-dev
安装系统一些基础库
sudo apt install xxx
xxx - gcc/ g++/ python3/ pip/ cmake/ vim/ zip
安装requirements内需要的库
pip install -r $PYMESH_PATH/python/requirements.txt
$PYMESH_PATH - pymesh的地址
安装pybind和boost(我之前没装在编译过程报错了,建议装下)
sudo apt install pybind11
sudo apt install pybind11-dev
sudo apt install python3-pybind11
sudo apt-get install boost
// apt search python.h
// find /usr/ -iname "python.h"
二 、编译
构建安装第三方包:自行下载的构建方法 (时间很久)
进入third_party
python3 build.py all
构建pymesh的MakeFile
回到pymesh目录下建立build文件并进入其中cmake
cd $PYMESH_PATH
mkdir build
cd build
cmake ..
真正构建pymesh以及测试
make
make tests
NOTE: make -j8 //多线程构建,根据电脑性能选择4, 8 ,16 …, 一般选4
三、安装
NOTE: setup.py第一行改为"#!/usr/bin/python3"(此地址可以通过which python3来确定)
sudo ./setup.py install
如果在windows下手动修改,会在运行install时报错。
用file命令查看文件类型:
可以看到行分隔符是CRLF模式,这是Windows格式的换行符,会在每行行末加多一个^M,Linux不识别,具体可以查看CRLF和LF的区别。 解决方法是替换掉^M符号,重新生成一个文件:cat -v setup.py | sed -e '1,$s/\^M$//g' > setup.py
四、测试
python3 -c "import pymesh; pymesh.test()"
最后通过vscode的remote插件远程连接即可