c# – 如何使用MonoDevelop打包我的linux应用程序?

前端之家收集整理的这篇文章主要介绍了c# – 如何使用MonoDevelop打包我的linux应用程序?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个使用MonoDevelop用C#编写的业余爱好项目.我已经尝试了一段时间来了解 Linux包装,但我总是感到沮丧和不知所措.

我的计划包括

>一个库项目(“生成器”),用我的程序创建的数据.
>使用Gtk#的ui(“接口”)项目.这个项目有两个子目录:“glade”(gtk用于构建小部件的xml文件)和“book”(我的程序使用的数据).
>库和接口项目使用的实用程序项目(“Utils”).
>刚刚启动界面的主项目(“MyProgramName”).

(我想)我想做的事情非常简单(我认为):

>编译我的应用程序
>复制.exe和.dll文件(到/usr/local / bin?)
>复制“book”目录(到/usr/local / bin?)
>复制“glade”目录(到/usr/local / bin?)

哦,我想这样做.deb包.我想如果我能让tarball工作,那么.deb包应该不会太麻烦,但这就是我最终要做的事情.

我仍然不确定如何做到这一点.我用MonoDevelop创建了一个Tarball.当我安装tarball(使用./configure,make,sudo checkinstall)时,它似乎安装了可执行代码(甚至创建了一个运行该程序的命令),但忘记了“book”和“glade”目录.

我该怎么做呢?对不起,如果这是一个基本/广泛的问题.我一直在谷歌搜索,我似乎找不到任何不认为我知道包装的基本知识的东西(即使它声称它不承担这一点).

解决方法

Debian软件包就像tar文件 – 它们包含文件系统的副本.创建Debian包……

>在构建目录中安装tarball.
>使用控制文件添加DEBIAN目录.我发现this article很有帮助.
>使用dpkg –build创建包.

我将从学习GNU的autotools开始:autoconf和automake.它们使得在构建目录中安装程序变得非常容易.你提到过./configure.所以我假设这个项目已经有了一些结构.从描述中,听起来像项目可能需要……

> configure.in中的条目用于“book”和“glade”中的文件.
>“book”和“glade”中的Makefile.am文件.

将所有内容放在一起,以下命令将生成名为project.deb的包文件.

# ./configure --prefix build/usr
# make && make install
# dpkg --build build project.deb

猜你在找的C#相关文章