Nic*_*zza 7 cygwin ports gedit
我对cygport包中的源代码结构有疑问.
以下是Cygports源文件的内容:
我正在尝试从cygports存储库构建gedit-3.4.2.
.cygport文件如何帮助我在./configure中运行正确的选项?
例如,在gedit中,如果我没有指定--disable-spell,它将不会因错误而继续.如何在构建cygport时获取用于构建项目的./configure选项列表?
有什么方法我们可以使用cygport可执行文件来构建cygport并更改前缀吗?
这是以下内容gedit-3.4.2-1.cygport:
inherit python gnome2
DESCRIPTION="GNOME text editor"
PATCH_URI="3.4.2-cygwin.patch"
DEPEND="gnome-common gtk-doc
girepository(Gtk-3.0)
pkgconfig(enchant)
pkgconfig(gtksourceview-3.0)
pkgconfig(libpeas-gtk-1.0)"
PKG_NAMES="${PN} ${PN}-devel"
PKG_HINTS="setup devel"
gedit_CONTENTS="--exclude=gtk-doc --exclude=libgedit* etc/ usr/bin/ usr/lib/gedit/ ${PYTHON_SITELIB#/} usr/share/"
gedit_devel_CONTENTS="usr/include/ usr/lib/gedit/libgedit* usr/lib/pkgconfig/ usr/share/gtk-doc/"
DIFF_EXCLUDES="*.desktop.in *.schemas.in *-marshal.h"
CYGCONF_ARGS="--libexecdir=/usr/lib --enable-python"
KEEP_LA_FILES="none"
Run Code Online (Sandbox Code Playgroud)
编辑来自Cygwin Ports邮件列表的人说:
"配置选项是
--libexecdir=/usr/lib --enable-python
Run Code Online (Sandbox Code Playgroud)
哪个来自CYGCONF_ARGS."
War*_*ung 17
以下是Cygports源文件的内容:
你最好把它想象成一个Cygwin包源文件.
cygport只是一个自动创建Cygwin二进制和源包的工具.它是可用的主要工具,但与其他一些包装系统不同,实际上并没有强迫您使用它.这是很可能完全采用手工打造Cygwin包,因为它实在是没有什么比一个压缩包是Cygwin的更setup.exe可盲目解压到Cygwin的根目录下(通常c:\cygwin)与期望,这将会把软件包的文件,在合理的位置.
在cygport存在之前,人们确实建立了自己的临时包装系统.许多Cygwin软件包维护者仍然使用他们创建的这些工具.(你真正包括在内;我的三个包中有两个使用cygport,但第三个仍使用自定义构建系统.)
最后,您想要阅读cygport手册/usr/share/doc/cygport/manual.html.
(是的,我知道,"RTFM"答案是不赞成在这里.但是,作为一个谁目前维持两个cygport基于包在官方Cygwin包库,请相信我,当我告诉你,手动仍是一个最好的资源提供上这个话题.)
.cygport文件如何帮助我在./configure中运行正确的选项?
当您通过其他资源发现时,您首先需要编辑文件中的CYGCONF_ARGS值.cygport.
之后最简单的步骤是cygport gedit-3.4.2-1.cygport all.它试图在一个步骤中重建所有二进制包.它还构建了一个包含更新.cygport和补丁文件的新源包.
如果all构建过程中出现问题,通常可以更快地切换到使用包含的子命令,all而不是完全重新启动进程.该all步骤只是运行 prep,compile,install,package,和finish你,在这个顺序.例如,如果all在编译步骤中失败,则可能不需要重复该prep步骤.
(这是非常罕见的cygport或者健全的构建系统破坏构建树,迫使你重新运行prep.远更常见的是,你最终需要重新做prep,当你手动破坏构建树,而试图得到一个新包第一次建造,需要重新开始.)
例如,在gedit中,如果我没有指定--disable-spell,它将不会因错误而继续.
您可以通过libaspell-devel从官方Cygwin软件包存储库安装软件包来解决这个问题setup.exe.
就个人而言,除非它意味着安装非官方的包,比如那些来自我不会禁用任何功能Cygwin的港口项目.[*]这是好的,有Cygwin的港口仓库,而是因为它包含了许多包,安装一个可以结束创建"安装世界"的情况:包A取决于包B,C和D,而C取决于E,F,G,H和G取决于I,J,K和...依赖层次结构Cygwin包装回购往往比Cygports回购中的回购更平和更窄.
有什么方法我们可以使用cygport可执行文件来构建cygport并更改前缀吗?
我猜你已经猜到--prefix=/my/private/program/tree了CYGCONF_ARGS,我相信.
[*]如果你对"Cygwin Ports"感到困惑cygport,那么命名相似性并非巧合.cygport是Yaakov Selkowitz在创建Cygwin Ports软件包库时为自己创建的工具.后来,它在其他Cygwin软件包维护者中变得非常受欢迎,它推出了大多数竞争构建系统.