You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 16.04.4下Python 2.7安装报错:setup脚本指定绝对路径

解决Python 2.7 setup.py安装时.gitignore绝对路径报错问题

我之前在Ubuntu 16.04上碰到过几乎一模一样的问题,根源很明确——你的setup.py(或者关联的MANIFEST.in)里错误地使用了.gitignore的绝对路径,而系统更新后升级的新版setuptools严格禁止在打包配置中使用绝对路径,这是为了保证Python包的可移植性。

下面是具体的排查和修复步骤:

  • 第一步:检查setup.py中的路径配置
    打开你的setup.py,找到package_data、data_files或者include_package_data相关的配置块,看看是不是写了类似/home/me/some_repo/.gitignore这种绝对路径。
    错误示例:

    setup(
        name="my_package",
        ...
        package_data={
            "my_package": ["/home/me/some_repo/.gitignore"]
        }
    )
    

    修正为相对路径(相对于项目根目录):

    setup(
        name="my_package",
        ...
        package_data={
            "my_package": [".gitignore"]
        }
    )
    

    如果.gitignore在子目录下,比如config/.gitignore,就写对应的相对路径即可。

  • 第二步:检查MANIFEST.in文件
    如果项目里有MANIFEST.in,也要打开看看有没有类似include /home/me/some_repo/.gitignore的绝对路径配置,同样改成include .gitignore这种相对路径写法。

  • 第三步:临时回退setuptools版本(可选)
    如果你暂时不想修改配置,也可以尝试回退到Ubuntu 16.04默认的setuptools版本,因为系统更新可能把它升级到了更严格的版本。执行以下命令:

    sudo pip install setuptools==39.0.0
    

    之后再重新运行sudo python setup.py install试试。不过还是推荐优先修正路径问题,避免后续其他隐患。

  • 第四步:验证修复结果
    改完配置后,先执行python setup.py egg_info或者python setup.py build测试一下,如果没有报错,再执行安装命令就正常了。

内容的提问来源于stack exchange,提问作者myoan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:28:19