From 2ecd72e6cac2f8eb3d1dd96ee904cd687df48077 Mon Sep 17 00:00:00 2001 From: littlecommandcat Date: Sun, 20 Sep 2026 22:36:08 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E8=AE=8A=E6=9B=B4=E7=82=BAGo=E6=A8=99?= =?UTF-8?q?=E6=BA=96=E6=9E=B6=E6=A7=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.go => cmd/server/main.go | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename main.go => cmd/server/main.go (100%) diff --git a/main.go b/cmd/server/main.go similarity index 100% rename from main.go rename to cmd/server/main.go From 4cfd6dd0b0da61184d9a77b834f2f50a42eed945 Mon Sep 17 00:00:00 2001 From: littlecommandcat Date: Sun, 20 Sep 2026 22:37:07 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=87=AA=E5=8B=95?= =?UTF-8?q?=E5=BB=BA=E7=BD=AE=E7=92=B0=E5=A2=83=E7=A8=8B=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + README.en.md | 9 +++++++++ README.md | 9 +++++++++ build/build-linux.bat | 26 ++++++++++++++++++++++++++ build/build-windows.bat | 24 ++++++++++++++++++++++++ 5 files changed, 69 insertions(+) create mode 100644 build/build-linux.bat create mode 100644 build/build-windows.bat diff --git a/.gitignore b/.gitignore index 3f91c59..1c38b97 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ miniapp2api.exe # 本機執行資料(含密碼雜湊、API 金鑰、帳號 JWT/CSRF) config.json auths/ +bin/* # 日誌與暫存 *.log diff --git a/README.en.md b/README.en.md index d658e82..c524ef5 100644 --- a/README.en.md +++ b/README.en.md @@ -15,6 +15,7 @@ Pure Go, no third-party dependencies, and a single self-contained binary (Window - [Windows](#windows) - [Linux](#linux) - [Build from source](#build-from-source) + - [Auto build](#auto-build) - [First run](#first-run) - [Adding accounts](#adding-accounts) - [Calling the OpenAI API](#calling-the-openai-api) @@ -184,6 +185,14 @@ GOOS=windows GOARCH=amd64 go build -o miniapp2api.exe . GOOS=linux GOARCH=arm64 go build -o miniapp2api-linux-arm64 . ``` +### Auto build + +`build/build-windows.bat` Windows builder + +`build/build-linux.bat` Linux environment builder + +`bin/` Build result + ### Command-line flags | Flag | Description | diff --git a/README.md b/README.md index aca78ec..4fc60ef 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,7 @@ - [Windows](#windows) - [Linux](#linux) - [從原始碼建置](#從原始碼建置) + - [自動建置](#自動建置) - [第一次啟動](#第一次啟動) - [新增帳號](#新增帳號) - [呼叫 OpenAI API](#呼叫-openai-api) @@ -185,6 +186,14 @@ GOOS=windows GOARCH=amd64 go build -o miniapp2api.exe . GOOS=linux GOARCH=arm64 go build -o miniapp2api-linux-arm64 . ``` +### 自動建置 + +`build/build-windows.bat`提供windows編譯 + +`build/build-linux.bat`提供Linux編譯環境 + +`bin/`儲存編譯的結果 + ### 命令列參數 | 參數 | 說明 | diff --git a/build/build-linux.bat b/build/build-linux.bat new file mode 100644 index 0000000..6bb1e6e --- /dev/null +++ b/build/build-linux.bat @@ -0,0 +1,26 @@ +@echo off +set APP_NAME=app + +echo [Info] start building app + +set GOOS=linux +set GOARCH=amd64 +set CGO_ENABLED=0 + +go version +if %errorlevel% neq 0 ( + echo [Error] failed to find go. Please install Go or check PATH. + exit /b %errorlevel% +) + +if not exist ..\bin (mkdir ..\bin & echo [Info] create ../bin) + +@REM go build -ldflags="-s -w" -o ../bin/%APP_NAME%_linux_amd64 ../cmd/server +go build -o ../bin/%APP_NAME%_linux_amd64 ../cmd/server +if %errorlevel% neq 0 ( + echo [Error] failed to build + exit /b %errorlevel% +) +echo [Success] output at ../bin/%APP_NAME%_linux_amd64 + +pause \ No newline at end of file diff --git a/build/build-windows.bat b/build/build-windows.bat new file mode 100644 index 0000000..e84cba8 --- /dev/null +++ b/build/build-windows.bat @@ -0,0 +1,24 @@ +@echo off +set APP_NAME=app + +echo [Info] start building app + +set GOOS=windows +set GOARCH=amd64 + +go version +if %errorlevel% neq 0 ( + echo [Error] failed to find go. Please install Go or check PATH. + exit /b %errorlevel% +) + +if not exist ..\bin (mkdir ..\bin & echo [Info] create ../bin) + +go build -o ..\bin\%APP_NAME%_windows_amd64.exe ..\cmd\server +if %errorlevel% neq 0 ( + echo [Error] failed to build + exit /b %errorlevel% +) +echo [Success] output at ..\bin\%APP_NAME%_windows_amd64 + +pause \ No newline at end of file