1)重命名目标源码目录,目录名规则为文件名加大版本号,如下:

2)测试编译代码,清楚残余无用文件

安装libcurl开发包:
apt-get install libcurl4-gnutls-dev

清楚残余文件(bin/obj)
make clean

3)源码打包

2.制作deb包

1)利用dh_make生成debian模板文件

根据deb包类型选择对应的Type,-e 后跟包构建者E-mail.

2)修改控制文件
2.1)增加安装执行文件,如:libniscsdk.install

2.2)小版本更新,修改changelog文件

3)生成deb包:dpkg-buildpackage

root@liul-VirtualBox:~/tt/libniscsdk-1.0# dpkg-buildpackage
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security
dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor): -D_FORTIFY_SOURCE=2
dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security
dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin: vendor): -Wl,-Bsymbolic-functions -Wl,-z,relro
dpkg-buildpackage: 源码包 libniscsdk
dpkg-buildpackage: 源码版本 1.0-1
dpkg-buildpackage: 源码修改者 root <liul.stone@gmail.com>
dpkg-buildpackage: 主机架构 amd64
dpkg-source --before-build libniscsdk-1.0
debian/rules clean
dh clean
   dh_testdir
   dh_auto_clean
make[1]: 正在进入目录 `/root/tt/libniscsdk-1.0'
Cleaning libSDK_VerifyRegister.so ...
rm -fr libSDK_VerifyRegister.so
make[1]:正在离开目录 `/root/tt/libniscsdk-1.0'
   dh_clean
dpkg-source -b libniscsdk-1.0
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building libniscsdk using existing ./libniscsdk_1.0.orig.tar.gz
dpkg-source: 警告: 忽略对文件 libSDK_VerifyRegister.
GitHub Ubuntu deb 包的方法详解 AderXCoding/system/tools/ build _ deb 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可 1 认识 deb 包1.1 认识 deb deb 是Unix系统(其实主要是Linux)下的 安装包 ,基于 tar 包,因此本身会记录文件的权限(读/写/可执行)以及所有者/用户组。 5. 增加patch Debian 系列系统制作或增加patch较为简单,即可以通过diff -Naur等指令制作patch,也可以直接修改 源码 ,执行 dpkg - build package 指定patc. $ apt-get install dh-make dpkg -dev deb helper fakeroot build -essential Docker中执行dh_make出现如下 错误 : Cannot get username; neither LOGNAME nor USER is setin the environment! 解决方法: $ export USER=root 2.制作tar包 $ tar --use-compres From:http://yysfire.github.io/linux/%E4%BB%8E%E6%BA%90%E4%BB%A3%E7%A0%81%E5%88%B6%E4%BD%9C deb %E5%8C%85%E7%9A%84%E4%B8%A4%E7%A7%8D%E6%96%B9%E6%B3%95%E4%BB%A5%E5%8F%8A%E4%BF%AE%E6%94%B9%E5%B7%B2%E6%9C%8... apt-get: apt-get 命令适用于 deb 包管理式的 Linux 操作系统( Debian Ubuntu 等),主要用于自动从互联网软件仓库中搜索、下载、 安装 、升级、卸载软件或操作系统。 Ubuntu 软件包查找: https:// package s. ubuntu .com/ 1. 安装 软件包 apt-get install Package Name // ... autocon如何生成configure,以及如何最终生成Makefile(直接make即可完成编译) https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/autoconf.html 参考wiki:https://blog.csdn.net/SHRINKSHR/article/details/85835087 制作configure脚本 下面的图表演示了如何生成可在configure中使用的文件: make[1]: 进入目录“/home/quantum6/tio-software/totem-3.30.0” dh_auto_ build -- src/Totem-1.0.gir cd obj-x86_64-linux-gnu && LC_ALL=C.UTF-8 ninja -j4 -v src/Totem-1.0.gir ^Cmake[1]: *** [d... 1、编译机环境:Dell T30 塔式服务器 ubuntu 20.04 稳定版交叉编译2、编译 错误 (1)make[3]: *** [scripts/Makefile. build :309:net/ipv4/netfilter/ipt_ECN.o] 错误 1root@T30:/home/george/tx/version# /bin/bash mk.sh build uosdesktop 2>&a...