如何在Linux中制作软件的源代码包?

我已经用Python编程语言制作了一个简单的软件。 它有我编写的一些库和一些可执行文件来处理程序。 我想知道如何制作一个标准的源码包,包括文档和安装这个软件的方法。

我知道一些关于MakeFiles但我不知道我必须使用哪些标准来做文件结构和其他的事情。

我不认为有一个真正的目录结构的标准。

通常做的是以下几点:

 MyProject/ | | |\ src/ | | | |\ mypackage_1/ | |\ mypackage_2/ | |\ mymodule_1.py | \ mymodule_2.py | |\ bin/ | | | |\ my_script_1.py | \ my_script_2.py | |\ doc/ | | | |\ documentation_for_package_1/ | |\ documentation_for_package_2/ | |\ documentation_for_modules/ | \ documentation_for_scripts | | \ tests/ | |\ tests_for_mypackage_1/ |\ tests_for_mypackage_2/ |\ tests_for_mymodule_1 |\ tests_for_mymodule_2 \ tests_for_scripts/ 

使用这个目录树,使用setuptools或发布来安装所有的模块,软件包不是很难。 如果你只想使用distutils,那么我认为这可能是不平凡的。

这是规范文档:

http://packages.python.org/distribute/setuptools.html

用setuptools构建一个合适的包,可以上传到PyPI或其他Python索引服务器。