|
|
|
@ -31,6 +31,35 @@ OUTPUT_ROOT="$REPO_ROOT/dist/linux-deb"
|
|
|
|
|
|
|
|
|
|
|
|
# aarch64 交叉编译时 pkg-config 查找路径(与下方 export 一致)
|
|
|
|
# aarch64 交叉编译时 pkg-config 查找路径(与下方 export 一致)
|
|
|
|
ARM64_PKGCONFIG_DIR="/usr/lib/aarch64-linux-gnu/pkgconfig"
|
|
|
|
ARM64_PKGCONFIG_DIR="/usr/lib/aarch64-linux-gnu/pkgconfig"
|
|
|
|
|
|
|
|
X64_PKGCONFIG_DIR="/usr/lib/x86_64-linux-gnu/pkgconfig"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
check_x64_pkgconfig() {
|
|
|
|
|
|
|
|
local missing=()
|
|
|
|
|
|
|
|
local f
|
|
|
|
|
|
|
|
for f in glib-2.0.pc gdk-3.0.pc webkit2gtk-4.1.pc; do
|
|
|
|
|
|
|
|
if [[ ! -f "$X64_PKGCONFIG_DIR/$f" ]]; then
|
|
|
|
|
|
|
|
missing+=( "$f" )
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
done
|
|
|
|
|
|
|
|
if (( ${#missing[@]} == 0 )); then
|
|
|
|
|
|
|
|
return 0
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cat >&2 <<EOF
|
|
|
|
|
|
|
|
错误: amd64 缺少 pkg-config 文件(在 $X64_PKGCONFIG_DIR):
|
|
|
|
|
|
|
|
${missing[*]}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
请先安装本机 amd64 的开发包:
|
|
|
|
|
|
|
|
sudo apt install -y --no-install-recommends \\
|
|
|
|
|
|
|
|
libglib2.0-dev libgtk-3-dev \\
|
|
|
|
|
|
|
|
libwebkit2gtk-4.1-dev libjavascriptcoregtk-4.1-dev \\
|
|
|
|
|
|
|
|
libayatana-appindicator3-dev librsvg2-dev libssl-dev
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
安装后自检:
|
|
|
|
|
|
|
|
ls $X64_PKGCONFIG_DIR/glib-2.0.pc $X64_PKGCONFIG_DIR/gdk-3.0.pc $X64_PKGCONFIG_DIR/webkit2gtk-4.1.pc
|
|
|
|
|
|
|
|
EOF
|
|
|
|
|
|
|
|
exit 1
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
check_arm64_pkgconfig() {
|
|
|
|
check_arm64_pkgconfig() {
|
|
|
|
# 缺任一则 cargo 会在不同阶段失败;gdk-3.0.pc 由 libgtk-3-dev:arm64 提供
|
|
|
|
# 缺任一则 cargo 会在不同阶段失败;gdk-3.0.pc 由 libgtk-3-dev:arm64 提供
|
|
|
|
@ -116,8 +145,12 @@ build_project() {
|
|
|
|
echo ""
|
|
|
|
echo ""
|
|
|
|
echo "######## $project_dir: amd64 ########"
|
|
|
|
echo "######## $project_dir: amd64 ########"
|
|
|
|
unset PKG_CONFIG_PATH PKG_CONFIG_LIBDIR PKG_CONFIG_SYSROOT_DIR PKG_CONFIG_ALLOW_CROSS 2>/dev/null || true
|
|
|
|
unset PKG_CONFIG_PATH PKG_CONFIG_LIBDIR PKG_CONFIG_SYSROOT_DIR PKG_CONFIG_ALLOW_CROSS 2>/dev/null || true
|
|
|
|
|
|
|
|
check_x64_pkgconfig
|
|
|
|
|
|
|
|
export PKG_CONFIG_PATH="$X64_PKGCONFIG_DIR"
|
|
|
|
|
|
|
|
export PKG_CONFIG_LIBDIR="$X64_PKGCONFIG_DIR:/usr/share/pkgconfig"
|
|
|
|
build_one_target "$project_dir" "build:deb:x64"
|
|
|
|
build_one_target "$project_dir" "build:deb:x64"
|
|
|
|
collect_debs "$project_dir" "amd64" "x86_64-unknown-linux-gnu"
|
|
|
|
collect_debs "$project_dir" "amd64" "x86_64-unknown-linux-gnu"
|
|
|
|
|
|
|
|
unset PKG_CONFIG_PATH PKG_CONFIG_LIBDIR
|
|
|
|
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo ""
|
|
|
|
echo "######## $project_dir: arm64 (cross) ########"
|
|
|
|
echo "######## $project_dir: arm64 (cross) ########"
|
|
|
|
|