準備維護 Aegisub 先介紹編譯 win10 64 vs2017

起因是,現在開始做翻譯,發現這個軟件在 WIN 上面顯示很模糊,沒有適配 高 DPI 顯示,看了 從 2014年後,官方就不在發佈新版本了,爲了自己用着舒服,也爲了廣大的字幕影視愛好者。

所以 fork 了項目,開始維護這個項目:https://github.com/nejidev/AegisubX

開發環境:win10 64位 vs2017 

https://learn.microsoft.com/zh-cn/visualstudio/releasenotes/vs2017-relnotes

選中使用 C++ 的桌面開發,下載安裝好 其它所需的軟件和下載地址:

git for windows
vs2017
python3.10
.net 4.6.2
Visual C++ Redistributable 2010
yasm-1.3.0-win64.exe

下載地址

git for windows
https://github.com/git-for-windows/git/releases/download/v2.37.3.windows.1/Git-2.37.3-64-bit.exe

vs2017
https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/

.net 4.6.2
https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net462-developer-pack-offline-installer

Visual C++ Redistributable 2010
https://www.microsoft.com/zh-CN/download/details.aspx?id=48145

yasm-1.3.0-win64.exe
http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe

yasm-1.3.0-win64.exe 下載後改名爲 yasm.exe 放到下面位置,並將 C:\yasm\ 配置到系統環境變量
C:\yasm\yasm.exe

下載源碼

git clone --recursive https://github.com/Aegisub/Aegisub.git

或者
git clone https://github.com/Aegisub/Aegisub.git
git submodule update --init

把項目 clone 到 自己的 github 了,方便修改提交,修復bug

https://github.com/nejidev/AegisubX.git

修復編譯錯誤 1
1>C:\source\Aegisub\build\icu\icu.vcxproj(52,5): error : 無法連接到遠程服務器

原因:
build/icu/icu.vcxproj
<IcuDt>icudt53l</IcuDt>

<!-- Generated with tools/strip-icu.py -->
<DownloadTgzFile
Url="http://www.aegisub.org/~plorkyeran/$(IcuDt)-be995a7e5fe230029e9b1e547b7de8826888c18c.dat.gz"
OutputFile="$(MSBuildThisFileDirectory)..\..\vendor\icu\source\data\in\$(IcuDt).dat"
Hash="be995a7e5fe230029e9b1e547b7de8826888c18c"
/>
</Target>

編譯時從 網絡下載
http://www.aegisub.org/~plorkyeran/$(IcuDt)-be995a7e5fe230029e9b1e547b7de8826888c18c.dat.gz
但是現在已無法下載,所以需要自己建立一個,這裏選擇使用 python 自帶的 http 服務器

將要下載的文件準備好,這裏放在了 downloads 文件夾,將來會打包發佈到 github
cd downloads
python -m http.server
Serving HTTP on :: port 8000 (http://[::]:8000/) ...

編譯成功:

 

開源項目介紹
Aegisub\build 使用到的庫

Aegisub/ 主生成 exe
googletest/ google 測試
BuildTasks/ 編譯工程使用
hunspell/
icu/ 國際化
scintilla/
PortableInstaller/ 生成封裝安裝包
libaegisub/ aegisub 自己的庫
boost/ c++ 常用庫
libass/
csrihelper/
libiconv/ 字符轉換
tests/ 測試相關
expat/
libpng/ png 解碼 編碼
universalchardet/
ffmpeg/ ffmpeg 音視頻編解碼庫
libresrc/ 資源處理
userconfig/ 配置相關
ffms2/ 封裝了 ffmpeg 的庫 方便開發
luabins/ lua 腳本
fftw/
luajit/
wx/ wxWidgets 跨平臺 UI庫
freetype2/ 字體庫
luajit-buildvm/
fribidi/
luajit-minilua/
zlib/ 壓縮解壓

接下來的計劃,準備升級 wxWidgets 用來支持 2K 4K 高 DPI 的顯示。誰讓官方不維護了呢。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章