我有一个小的python应用程序,我希望将其做成可下载/可安装的可执行程序,以用于类似UNIX的系统。我的印象是,setuptools将是实现此目标的最佳方法,但是从某种意义上来说,这似乎并不是一项常见的任务。
我的目录结构如下所示:
myappname/
|-- setup.py
|-- myappname/
| |-- __init__.py
| |-- myappname.py
| |-- src/
| |-- __init__.py
| |-- mainclassfile.py
| |-- morepython/
| |-- __init__.py
| |-- extrapython1.py
| |-- extrapython2.py
包含的文件if __name__ == "__main__": 是myappname.py。该文件的顶部有一行import src.mainclassfile。
下载后,我希望用户能够执行以下操作:
$ python setup.py build
$ python setup.py install
然后它将是一个已安装的可执行文件,他们可以在命令行上的任何位置使用以下命令进行调用:
$ myappname arg1 arg2
我的setup.py的重要部分如下:
from setuptools import setup, find_packages
setup(
name='code2flow',
scripts=['myappname/myappname.py'],
package_dir={'myappname': 'myappname'},
packages=find_packages(),
)
当前状态
通过运行:
$ sudo python setup.py install
然后在一个新的shell中:
$ myapp.py
我收到一个No module named错误
相关分类