发布于 2018-12-12 11:15:39
您可以将命令行参数--build-lib your/desired/output/path传递给执行setup.py的python调用。
此外,此选项与--inplace不兼容。如果你用的话,就把它拿掉。
发布于 2021-10-13 14:31:47
我偶然发现了一个类似的问题,并找到了一个解决方案here。
在编写setup.py文件时,可以直接指定命令行参数,而不是在执行过程中传递它们:
from psutil import cpu_count
from setuptools import setup
from Cython.Build import cythonize
build_directory = "./build" # Here you will have your C or C files
pyd_directory = "./pyd/" # The directory for your pyd file
pyx_name = "your_cython_script.pyx"
setup(
ext_modules=cythonize(
pyx_name,
annotate=True, # Generate html
language_level=3, # Python 3
nthreads=cpu_count(logical=True), # Faster compilation
build_dir=build_directory,
), # Build directory
options={
"build": { # Here you can specify all the command-line arguments
"build_lib": pyd_directory
}
},
)https://stackoverflow.com/questions/53716559
复制相似问题