modules = [Extension("MyLibrary",
src,
language = "c++",
extra_compile_args=["-fopenmp", "-std=c++11", "-DNOLOG4CXX"], # log4cxx is not currently used
extra_link_args=["-fopenmp", "-std=c++11"],
include_dirs=[os.path.join(os.path.expanduser("~"), (os.path.join(gtest, "include"))],
library_dirs=[log4cxx_library, os.path.join(os.path.expanduser("~"), gtest)],
libraries=["log4cxx", "gtest"])]
这是我的setup.py脚本的一部分。如何通过命令行参数传递include_dirs或library_dirs等选项,以便用户可以设置路径?
答案 0 :(得分:2)
认为这可能是您正在寻找的东西:
答案 1 :(得分:2)
您可以在setup.cfg文件中指定它
[build_ext]
include-dir="path/to/your/dir/"
答案 2 :(得分:0)
如果您使用的是pip install
,则可以指定library_dirs
,例如:
pip install --install-option=build_ext --install-option="--library-dirs=/absolute/path/to/your/library/directory" YourPackage
或者只是:
pip install --install-option=build_ext --install-option="-L/absolute/path/to/your/library/directory" YourPackage
--global-option
似乎也可以使用。参见https://stackoverflow.com/a/22942120/1843329
从the docs到pip install
:
-安装选项 要提供给setup.py install命令的额外参数(使用类似 --install-option =”-install-scripts = / usr / local / bin”)。使用多个--install-option选项可以将多个选项传递给setup.py安装。如果您使用带有目录路径的选项,请确保使用 绝对路径。