为C ++源文件构建Debian软件包时发生错误

时间:2018-12-04 05:51:36

标签: c++ linux debian

当我尝试使用命令

构建.deb软件包时
dpkg-deb --build /home/hduser/Desktop/debpack/usr/bin/hw

在终端上,它显示错误

  

dpkg-deb:错误:无法打开软件包信息文件`/ home / hduser / Desktop / debpack / usr / bin / hw / DEBIAN / control'来读取:不是目录

./hw是c ++源文件下面的可执行文件。

#include <iostream> 

using namespace std;

int main(){
  cout << "Hello world\n";
  return 0;
}

我尝试了很多,但是一直失败。

1 个答案:

答案 0 :(得分:1)

仅具有可执行文件不足以创建包,您应该创建适当的文件层次结构。

  1. 创建一个根目录,将其命名为 hello-pack

    mkdir hello-pack

  2. 创建一个 control 文件,该文件的路径为 hello-pack / DEBIAN / control

    mkdir hello-pack/DEBIAN

    touch hello-pack/DEBIAN/control

    文件内容可以如下:

  

包装:helloworld

     

版本:1.0

     

维护者:您的姓名

     

建筑:全部

     

说明:世界你好

  1. 将可执行文件复制到您想要的可执行文件所在的位置,(我认为您希望将其放在 usr / bin 下)以下内容(如果未创建您自己的目录)

    mkdir hello-pack/usr/bin

    cp hw hello-pack/usr/bin

然后使用命令dpkg-deb --build hello-pack创建软件包。它将以相同的名称和扩展名 .deb 将软件包创建到您的根目录所在的目录。您可以使用-i选项来安装软件包。