github网站:https://github.com/Huelse/SEAL-Python
我是参考该github的README,在linux环境下安装SEAL-Python,期间遇到一些问题,我修改了一下原来的指令,以下是我的经验。
Linux
Clang++ (>= 5.0) or GNU G++ (>= 6.0), CMake (>= 3.12)
# Optional sudo apt-get install git build-essential cmake python3 python3-dev python3-pip # Get the repository or download from the releases git clone https://github.com/Huelse/SEAL-Python.git cd SEAL-Python # Numpy is essential pip3 install -r requirements.txt # Init the SEAL and pybind11 git submodule update --init --recursive # Get the newest repositories (unnecessary) # git submodule update --remote # Build the SEAL lib cd SEAL cmake -S . -B build -DSEAL_USE_MSGSL=OFF -DSEAL_USE_ZLIB=OFF -DSEAL_USE_ZSTD=OFF cmake --build build cd .. # Run the setup.py python3 setup.py build_ext -i
详细参照原github地址
1.git clone https://github.com/Huelse/SEAL-Python.git
我使用的是实验室的服务器,用的网络比较差,下载太慢,一开始clone失败,可以改为:
git clone git://github.com/Huelse/SEAL-Python.git
2.git submodule update --init --recursive
同样可能是由于网络问题,在更新子仓库的时候,报错
fatal: clone of 'https://github.com/pybind/pybind11.git' into submodule path '/xxx/xxx/SEAL-Python/pybind11' failed
我去issue向原作者提问,他的解答是:查看http://git-scm.com/docs/git-submodule or git submodule init && git submodule update
之后我用这个方法无法解决问题,我的解决思路还是修改url
git submodule update 更新的原理是根据.gitmodules文件中的url进行更新
可以在linux系统下使用vim进入编辑器模式,修改其中url地址
我的做法:
将 https://github.com/microsoft/SEAL.git
改为 https://github.com.cnpmjs.org/microsoft/SEAL.git
将 https://github.com/pybind/pybind11.git
改为 https://github.com.cnpmjs.org/pybind/pybind11.git
cd SEAL cmake -S . -B build -DSEAL_USE_MSGSL=OFF -DSEAL_USE_ZLIB=OFF -DSEAL_USE_ZSTD=OFF cmake --build build
提示:
The source directory /xx/build does not exist
mkdir build cd build cmake -S ../ build -DSEAL_USE_MSGSL=OFF -DSEAL_USE_ZLIB=OFF -DSEAL_USE_ZSTD=OFF
cd .. cmake --build build
可能是由于网络原因安装过程还挺麻烦的,我想把经验分享给遇到相同问题的朋友们。如果遇到问题是在找不到解决方案,主要要学会看文档把原理搞懂,然后摸索是哪部分出了问题。
https://github.com/Huelse/SEAL-Python
https://www.jianshu.com/p/1e704e20eab8
https://blog.csdn.net/King_key/article/details/111595201