搜索

2.7. 将源代码放入 tarball

download PDF

这部分论述了如何将 第 2.1.1 节 “源代码示例” 中引入的三个 Hello World 程序放在 gzip压缩 tarball 中,这是发布软件以后打包在一起的通用方法。

2.7.1. 将 bello 项目放入 tarball

bello 项目在 bash 中实施 Hello World。该实施仅包含 bello shell 脚本,因此生成的 tar.gz 存档除 LICENSE 文件外仅有一个文件。

此流程演示了如何准备要分发的 bello 项目。

先决条件

在这里,这是计划的 0.1 版。

步骤

  1. 将所有需要的文件放入一个目录中:

    $ mkdir /tmp/bello-0.1
    
    $ mv ~/bello /tmp/bello-0.1/
    
    $ cp /tmp/LICENSE /tmp/bello-0.1/
  2. 为分发创建存档并将其移动到 ~/rpmbuild/SOURCES/ 目录,这是 rpmbuild 命令存储构建软件包的默认目录:

    $ cd /tmp/
    
    $ tar -cvzf bello-0.1.tar.gz bello-0.1
    bello-0.1/
    bello-0.1/LICENSE
    bello-0.1/bello
    
    $ mv /tmp/bello-0.1.tar.gz ~/rpmbuild/SOURCES/

有关 bash 编写的示例源代码的详情请参考 第 2.1.1.1 节 “使用 bash 编写的 hello World”

2.7.2. 将 pello 项目放入 tarball

pello 项目使用 Python 实施 Hello World。该实施仅包含 pello.py 程序,因此生成的 tar.gz 存档除 LICENSE 文件外有一个文件。

此流程演示了如何准备用于分发的 pello 项目。

先决条件

在这里,这是计划的 0.1.1 版本。

步骤

  1. 将所有需要的文件放入一个目录中:

    $ mkdir /tmp/pello-0.1.2
    
    $ mv ~/pello.py /tmp/pello-0.1.2/
    
    $ cp /tmp/LICENSE /tmp/pello-0.1.2/
  2. 为分发创建存档并将其移动到 ~/rpmbuild/SOURCES/ 目录,这是 rpmbuild 命令存储构建软件包的默认目录:

    $ cd /tmp/
    
    $ tar -cvzf pello-0.1.2.tar.gz pello-0.1.2
    pello-0.1.2/
    pello-0.1.2/LICENSE
    pello-0.1.2/pello.py
    
    $ mv /tmp/pello-0.1.2.tar.gz ~/rpmbuild/SOURCES/

有关 Python 编写的示例源代码的更多信息,请参阅 第 2.1.1.2 节 “使用 Python 编写 hello World”

2.7.3. 将 cello 项目放入 tarball

cello 项目使用 C 实施 Hello World。实施仅包含 cello.cMakefile 文件,因此生成的 tar.gz 存档除了 LICENSE 文件外有两个文件。

注意

补丁文件 不会在程序的归档中发布。构建 RPM 软件包时,RPM 软件包程序应用补丁。补丁和 .tar.gz 存档一起放置在 ~/rpmbuild/SOURCES/ 目录中。

此步骤演示了如何准备用于分发的 cello 项目。

先决条件

认为这是程序版本 1.0

步骤

  1. 将所有需要的文件放入一个目录中:

    $ mkdir /tmp/cello-1.0
    
    $ mv ~/cello.c /tmp/cello-1.0/
    
    $ mv ~/Makefile /tmp/cello-1.0/
    
    $ cp /tmp/LICENSE /tmp/cello-1.0/
  2. 为分发创建存档并将其移动到 ~/rpmbuild/SOURCES/ 目录,这是 rpmbuild 命令存储构建软件包的默认目录:

    $ cd /tmp/
    
    $ tar -cvzf cello-1.0.tar.gz cello-1.0
    cello-1.0/
    cello-1.0/Makefile
    cello-1.0/cello.c
    cello-1.0/LICENSE
    
    $ mv /tmp/cello-1.0.tar.gz ~/rpmbuild/SOURCES/
  3. 添加补丁:

    $ mv ~/cello-output-first-patch.patch ~/rpmbuild/SOURCES/

有关使用 C 编写的示例源代码的详情请参考 第 2.1.1.3 节 “使用 C 语言编写的 hello World”

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.