#!/bin/bash # ARM 交叉編譯工具安裝腳本 # 支援 Ubuntu/Debian 系統 set -e echo "🔧 NTAG424 ARM 交叉編譯工具安裝腳本" echo "========================================" echo "" # 檢查系統類型 if [[ -f /etc/debian_version ]]; then DISTRO="debian" echo "檢測到 Debian/Ubuntu 系統" elif [[ -f /etc/redhat-release ]]; then DISTRO="redhat" echo "檢測到 RedHat/CentOS 系統" else echo "❌ 不支援的系統類型" echo "請手動安裝 ARM 交叉編譯工具" exit 1 fi echo "" echo "將安裝以下交叉編譯工具:" echo "- gcc-aarch64-linux-gnu (ARM 64-bit)" echo "- gcc-arm-linux-gnueabihf (ARM 32-bit 硬浮點)" echo "- gcc-arm-linux-gnueabi (ARM 32-bit 軟浮點)" echo "" read -p "繼續安裝? [y/N]: " confirm if [[ "$confirm" != "y" && "$confirm" != "Y" ]]; then echo "取消安裝" exit 0 fi echo "" echo "🚀 開始安裝..." if [[ "$DISTRO" == "debian" ]]; then echo "更新套件列表..." sudo apt update echo "安裝 ARM 交叉編譯工具..." sudo apt install -y \ gcc-aarch64-linux-gnu \ gcc-arm-linux-gnueabihf \ gcc-arm-linux-gnueabi \ build-essential elif [[ "$DISTRO" == "redhat" ]]; then echo "安裝 EPEL repository..." sudo yum install -y epel-release || sudo dnf install -y epel-release echo "安裝 ARM 交叉編譯工具..." sudo yum install -y \ gcc-aarch64-linux-gnu \ gcc-arm-linux-gnu || \ sudo dnf install -y \ gcc-aarch64-linux-gnu \ gcc-arm-linux-gnu fi echo "" echo "✅ 安裝完成!" echo "" echo "🔍 驗證安裝..." make check-cross-tools echo "" echo "🎉 所有工具安裝成功!" echo "" echo "現在你可以使用以下命令編譯 ARM 版本:" echo " make arm64 # ARM 64-bit 動態版本" echo " make arm64-static # ARM 64-bit 靜態版本 (推薦)" echo " make arm32 # ARM 32-bit 動態版本" echo " make arm32-static # ARM 32-bit 靜態版本 (推薦)" echo " make armel # ARM 軟浮點版本" echo "" echo "詳細說明請參考: ARM_BUILD_GUIDE.md"