Python:包目录不存在

2024-04-26 09:24:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图使用以下setup.py文件在windows 10中安装一个python包。

"""Setup file for uhd module"""

from setuptools import setup

setup(name='uhd',
      version='3.14.0',
      description='Universal Software Radio Peripheral (USRP) Hardware Driver Python API',
      classifiers=[
          'Development Status :: 4 - Beta',
          'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
          'Programming Language :: C++',
          'Programming Language :: Python',
          'Topic :: System :: Hardware :: Hardware Drivers',
      ],
      keywords='SDR UHD USRP',
      author='Ettus Research',
      author_email='packages@ettus.com',
      url='https://www.ettus.com/',
      license='GPLv3',
      package_dir={'': 'C:/Users/bcollins/UHD_PY/uhd/host/build/python'}, 
      package_data={'uhd': ['*.so']},
      zip_safe=False,
      packages=['uhd'],
      install_requires=['numpy'])

我使用命令执行脚本

python setup.py install

我从包含setup.py文件的目录中执行此操作。

这将返回以下错误

error: package directory 'C:Users\bcollins\UHD_PY\uhd\host\build\python\uhd' does not exist

不过在那个地方有一个叫做“uhd”的文件夹。文件夹包含__init__.py文件

如果脚本没有查找此文件夹,它将查找什么?

我在这方面并不完全有经验,但我最好的猜测是,它正在寻找一个.so文件在“uhd”文件夹在那个位置,但我不确定。

我正在使用Python2.7。


Tags: 文件py文件夹packagelicensepackagessetuplanguage
1条回答
网友
1楼 · 发布于 2024-04-26 09:24:37

package_dir必须是相对路径,而不是绝对路径。setuptoolstries下的distutils层拒绝绝对路径,但是C:混淆了它。它最终将你的路径转换为

C:Users\bcollins\UHD_PY\uhd\host\build\python\uhd

注意C:Users之间缺少反斜杠。此路径相对于C驱动器上的当前工作目录(windows drive handling is weird),并且相对于工作目录,此路径无效。

相关问题 更多 >