解决-Step2-补全代码结构全网首创
前置说明
解除 bigtop.bom 限制后,只有补齐 deb 体系下的目录和核心文件,才能让 bigtop-select deb 包顺利编译输出。 本节手把手梳理所有关键文件的创建与填写格式。
# 1. 目录结构示意
在
bigtop-packages/src/deb/
目录下新建 bigtop-select 子目录,内容主要有 compat、control、copyright、rules 等。
# 2. 创建与填写关键文件
# compat 文件
路径:bigtop-packages/src/deb/bigtop-select/compat
内容:
9
1
# control 文件
路径:bigtop-packages/src/deb/bigtop-select/control
内容如下:
Source: bigtop-select
Section: admin
Priority: optional
Maintainer: JaneTTR <3832514048@qq.com>
Build-Depends: debhelper (>= 7.0.50~)
Standards-Version: 3.8.0
Homepage: http://bigtop.apache.org/
Package: bigtop-select
Architecture: all
Description: Collection of useful tools for Bigtop and Ambari.
This package includes a collection of useful tools and files for Bigtop and Ambari.
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# copyright
路径:bigtop-packages/src/deb/bigtop-select/copyright
内容:
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: ambari-env
Source: https://doc.janettr.com
Files: *
Copyright: (c) JaneTTR 2025
License: Custom-Personal-Only
License: Custom-Personal-Only
项目名称:ambari-env
本文件属于付费部分代码,仅供个人学习和研究使用。
禁止行为:
1. 未经授权,不得将本文件或其编译后的代码用于任何商业用途;
2. 禁止重新分发本文件或其修改版本;
3. 禁止通过反编译、反向工程等手段试图绕过授权验证。
商业授权:
如需将本文件或其编译后的代码用于商业用途,必须获得版权所有者的书面授权。
联系方式:
邮箱:3832514048@qq.com
责任声明:
本文件按“现状”提供,不附带任何形式的担保,包括但不限于适销性、特定用途适用性或无侵权的担保。
如有任何疑问,请联系版权所有者。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# rules 文件
路径:bigtop-packages/src/deb/bigtop-select/rules
内容:
#!/usr/bin/make -f
# 版权所有 (c) JaneTTR 2025
# 项目名称:ambari-env
#
# 本文件属于付费部分代码,仅供个人学习和研究使用。
#
# 禁止行为:
# 1. 未经授权,不得将本文件或其编译后的代码用于任何商业用途;
# 2. 禁止重新分发本文件或其修改版本;
# 3. 禁止通过反编译、反向工程等手段试图绕过授权验证。
#
# 商业授权:
# 如需将本文件或其编译后的代码用于商业用途,必须获得版权所有者的书面授权。
# 联系方式:
# 邮箱:3832514048@qq.com
#
# 责任声明:
# 本文件按“现状”提供,不附带任何形式的担保,包括但不限于适销性、特定用途适用性或无侵权的担保。
#
# 如有任何疑问,请联系版权所有者。
bigtop_base_version := $(BIGTOP_BASE_VERSION)
default_parent_dir := /usr/bigtop/$(bigtop_base_version)
%:
dh $@
override_dh_auto_install:
echo "BIGTOP_BASE_VERSION = $(bigtop_base_version)"
bash debian/install_select.sh \
--distro-dir=$(CURDIR)/debian \
--build-dir=$(CURDIR) \
--prefix=$(CURDIR)/debian/bigtop-select \
--parent-dir=$(default_parent_dir) \
--bigtop-base-version=$(bigtop_base_version)
install -Dm644 $(CURDIR)/debian/LICENSE $(CURDIR)/debian/bigtop-select/usr/share/doc/bigtop-select/LICENSE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# 3. changelog 文件说明
笔记
changelog 文件可不必手写,packages.gradle 会自动生成,一般流程无需关心。
# 4. 实践总结
- 以上每一个文件都为 deb 包制作提供了基础保障,任何一个缺失都可能导致编译报错或产物不合规。
- 版权与自定义 License,保证个人所有权和合规使用,保护自身代码成果。
文件名 | 用途 | 特别说明 |
---|---|---|
compat | debhelper 兼容等级 | 一般填 9 |
control | 包元信息 | 填写项目名/描述/依赖 |
copyright | 版权声明 | 强调个人授权与责任声明 |
rules | 构建/安装脚本 | 可扩展自定义逻辑与变量 |
提示
完成这步,deb 包最核心的“元信息、版权、构建规则”已全部具备,为下一步实际打包和产物验收打下坚实基础!
- 01
- bigtop-select 打包缺 compat 报错修复 deb07-16
- 02
- bigtop-select 打包缺 control 文件报错修复 deb07-16
- 03
- 首次编译-环境初始化 必装07-16