编程语言
首页 > 编程语言> > 将python setup.py安装到备用路径中找不到已安装的软件包

将python setup.py安装到备用路径中找不到已安装的软件包

作者:互联网

我有一个测试设置文件,我为一个简单的“hello world”脚本.我有一个名为mytest的包,它有一个函数hello.现在,我有一个非常简单的setup.py.如果我只运行python setup.py install,一切正常.但是,如果我想将lib安装到主文件夹(python setup.py install –home = / home / blah),则该软件包不再可用(在python中运行import mytest会给我ImportError:没有名为mytest的模块).

我应该手动将pth文件添加到site-packages文件夹中吗?我试了一下(内容/ home / blah / lib / python,我的包放在哪里)并导入mytest工作正常.不应该自动完成吗?还是我错过了什么?

编辑:

安装输出:

ago@dellbert:~/py/mytest-0.1$python setup.py install --home=/home/ago/py/
running install
running build
running build_py
copying src/mytest/mytest.py -> build/lib.linux-x86_64-2.6/mytest
running build_scripts
copying and adjusting src/main.py -> build/scripts-2.6
running install_lib
copying build/lib.linux-x86_64-2.6/mytest/mytest.py -> /home/ago/py//lib/python/mytest
byte-compiling /home/ago/py//lib/python/mytest/mytest.py to mytest.pyc
running install_scripts
copying build/scripts-2.6/main.py -> /home/ago/py//bin
changing mode of /home/ago/py//bin/main.py to 755
running install_egg_info
Removing /home/ago/py//lib/python/mytest-0.1.egg-info
Writing /home/ago/py//lib/python/mytest-0.1.egg-info

和setup.py:

from distutils.core import setup

setup(name='mytest',
      description='test',
      author='Ago',
      author_email='email',
      version='0.1',
      package_dir={'mytest': 'src/mytest'},
      packages=['mytest'],
      scripts=['src/main.py']
      )

文件夹结构:

-src:
   -mytest:
       __init__.py
       mytest.py
    main.py
setup.py

main.py只是一个可执行文件,它导入mytest并调用函数来打印hello world.但我试图在python中运行import mytest来查看是否安装了lib.

解决方法:

我有兴趣看到python setup.py install –home = / home / blah命令的完整输出.如果目录不存在,或者不支持pth文件,您应该得到某种警告或错误,我相信安装实际上会失败.

查看setup.py文件也会有所帮助,因为它可能会把东西放在那里会导致破坏.

标签:python,install,importerror,setup-py
来源: https://codeday.me/bug/20190630/1340839.html