mirror of
https://github.com/yincongcyincong/wechat_chatter.git
synced 2026-07-15 10:26:52 +08:00
增加setup_frida_and_build.sh脚本用于自动检查并下载frida-devkit库,然后编译
This commit is contained in:
@@ -21,8 +21,6 @@ codex.md
|
||||
install_frida_gadget_automated.sh
|
||||
note.md
|
||||
requirements.md
|
||||
setup_frida_and_build.sh
|
||||
.gocache/
|
||||
.gomodcache/
|
||||
local_build.sh
|
||||
frida-devkit/
|
||||
Executable
+51
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Frida devkit must match the frida-go API used by go.mod.
|
||||
FRIDA_VERSION="${FRIDA_VERSION:-17.8.0}"
|
||||
OS="macos"
|
||||
ARCH="arm64"
|
||||
DEVKIT_NAME="frida-core-devkit-${FRIDA_VERSION}-${OS}-${ARCH}"
|
||||
DOWNLOAD_URL="https://github.com/frida/frida/releases/download/${FRIDA_VERSION}/${DEVKIT_NAME}.tar.xz"
|
||||
DEVKIT_DIR="$(pwd)/frida-devkit"
|
||||
|
||||
echo "🔧 配置 Frida 开发环境 (Version: $FRIDA_VERSION, Arch: $ARCH)..."
|
||||
|
||||
# 检查是否已存在且版本/API匹配
|
||||
if [ -f "$DEVKIT_DIR/libfrida-core.a" ] && [ -f "$DEVKIT_DIR/frida-core.h" ] && grep -q "FridaPackageManager" "$DEVKIT_DIR/frida-core.h"; then
|
||||
echo "✅ 发现已存在且兼容的 Frida Devkit,跳过下载。"
|
||||
else
|
||||
# 如果版本不匹配,清理旧的
|
||||
if [ -d "$DEVKIT_DIR" ]; then
|
||||
echo "⚠️ 清理旧的或不兼容的 Devkit 目录..."
|
||||
rm -rf "$DEVKIT_DIR"
|
||||
fi
|
||||
|
||||
mkdir -p "$DEVKIT_DIR"
|
||||
echo "⬇️ 正在下载 ${DEVKIT_NAME}..."
|
||||
curl -L -o "$DEVKIT_DIR/devkit.tar.xz" "$DOWNLOAD_URL"
|
||||
|
||||
echo "📦 正在解压..."
|
||||
tar -xf "$DEVKIT_DIR/devkit.tar.xz" -C "$DEVKIT_DIR"
|
||||
rm "$DEVKIT_DIR/devkit.tar.xz"
|
||||
echo "✅ 解压完成"
|
||||
fi
|
||||
|
||||
|
||||
# 2. 编译
|
||||
echo "🚀 开始编译 OneBot..."
|
||||
cd onebot
|
||||
|
||||
# 强制设置 GOARCH 为 arm64,因为我们下载的是 arm64 的库
|
||||
export GOARCH=arm64
|
||||
export CGO_ENABLED=1
|
||||
export CGO_CFLAGS="-I$DEVKIT_DIR"
|
||||
export CGO_LDFLAGS="-L$DEVKIT_DIR -lfrida-core"
|
||||
|
||||
echo "⚙️ GOARCH=$GOARCH"
|
||||
echo "⚙️ CGO_CFLAGS=$CGO_CFLAGS"
|
||||
echo "⚙️ CGO_LDFLAGS=$CGO_LDFLAGS"
|
||||
|
||||
go build -v -o onebot .
|
||||
|
||||
echo "🎉 编译成功!二进制文件位置: $(pwd)/onebot/onebot"
|
||||
Reference in New Issue
Block a user