我在ubuntu linux上编写了一个C代码,想为它制作一个安装文件。不幸的是我不知道从哪里开始:(
我的代码使用在线找到的其他软件包,我希望安装文件检查系统上是否找到软件包,如果不是,则应该从在线源安装它然后编译源代码。
有关如何开始的任何帮助?
谢谢:)
答案 0 :(得分:2)
您需要决定是将列发布为特定于Ubuntu的二进制或源包(作为.deb),还是要将其作为独立于系统的源代码发布(最常见的是.tar.gz包) )。当然,最好的方法是两种方式: - )。
对于源程序包分发,要使程序可以使用源代码进行分发,请为其编写autoconf和automake标头。也就是说,编写一个configure.ac(检查所有必需的库是否在系统上)和一个编译程序的Makefile.am,然后用它构建一个tarball
make dist
此时,您不关心目标系统上安装了哪些软件包,也不包括aptitude命令之类的软件包。这显然是构建软件的人的责任。当你对这些概念不熟悉时,这看起来很奇怪,但是你背后会遇到很多问题。
在第二步中,您将刚刚创建的tarball消除错误。在那里,您可以指定构建和安装软件包所需的软件包,并创建可供分发的二进制软件包。优秀的Debian new maintainer guide详细描述了这个过程。然后可以通过dpkg在任何Ubuntu(和大多数Debian)系统上安装这个二进制包。
答案 1 :(得分:1)
查看autotools。