眼前的具体问题是:
如何将NEST模拟器安装的nest模块安装到特定的site-packages目录(例如pyenv / virtualenv)中?
但是,欢迎在NEST CMake本身期间对Python模块如何生成和安装进行更广泛的解释。例如,用于安装Python文件的setup.py
文件在哪里,我注意到一些典型的pip egg-info
文件吗?我想如果我知道我可以使用pip在所需的任何位置安装模块。另一个疑问是,是否可以从CMake配置Python模块的安装目标?
答案 0 :(得分:1)
NEST不是Python软件包,Python模块依赖于已知位置中可用的已编译模块的库。例如,当使用Conda风格时,可以将NEST与cmake -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX
一起安装(在目标环境中),以将所有内容安装到环境目录树中。
对于自建模块,除.py
文件位于相应Python查找其模块(例如.../site-packages
)的目录(创建的{{ 1}}文件必须放在动态加载程序可以找到它们的位置。
尝试为您的环境将.so
文件复制到NEST安装目录.so
中,并将python文件复制到path/to/installed/lib/nest/
中。 site-packages
本身也有一个pynest
,您可以在setup.py
的构建目录中找到。但是,由于上述二进制相关性,因此python软件包并不打算单独分发。
请注意,您必须注意一致性。您不能将针对一个Python版本编译的模块与另一个Python等结合使用。通常,依赖项是一件棘手的事情,例如,使用模块中的libGSL也应该与编译NEST等时使用的相同。这归结为基本上也使用相同的编译器。