【问题标题】:Debian Packaging Without Build Tool没有构建工具的 Debian 打包
【发布时间】:2021-08-30 10:14:24
【问题描述】:

我想在不使用诸如 autotools 或 CMake 之类的构建工具的情况下从 C 程序创建 Debian 软件包。我的debian/rules 文件:

#!/usr/bin/make -f

%:
    dh $@

override_dh_auto_clean:
    rm -f program

override_dh_auto_build:
    gcc program.c -o program

override_dh_auto_install:
    cp program /usr/local/bin

在运行dpkg-buildpackage 时,我得到: dh: error: Unknown sequence application (choose from: binary binary-arch binary-indep build build-arch build-indep clean install install-arch install-indep)

【问题讨论】:

    标签: debhelper debian-packaging dpkg-buildpackage


    【解决方案1】:

    问题似乎与我在扩展 $@ 的 shell 脚本 heredoc 中创建文件有关,例如

    cat <<EOF > debian/rules.temp
    #!/usr/bin/make -f
    
    %:
        dh $@
    EOF
    

    应该是:

    all_symbol='$@'
    cat <<EOF > debian/rules.temp
    #!/usr/bin/make -f
    
    %:
        dh $all_symbol
    EOF
    

    一个不相关的问题是override_dh_auto_install 的位置要手动创建 Debian 文件层次结构,它应该是:

    override_dh_auto_install:
        mkdir -p debian/PACKAGENAME/usr/bin 
        cp program debian/PACKAGENAME/usr/bin
    

    或者,自动完成:

    cat <<EOF > debian/PACKAGENAME.install
    program usr/bin
    EOF
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-22
      • 2013-02-25
      • 1970-01-01
      • 2018-10-28
      • 2016-05-19
      • 1970-01-01
      相关资源
      最近更新 更多