|
本帖最后由 科技表音字 于 2020-5-13 10:22 编辑
编译中州韵 weasel 输入法,破费周折。第一次编译,动辄耗费3-4天时间。所以,我把这次编译中州韵遇到的问题和经验,分享给大家。
1. 编译环境安装
首先是安装 Microsoft Visual Studio Community 2017,安装时选择安装 C++ 开发环境,在可选组件中,安装 Windows XP 支持和C++ MFC/ATL支持。
2. 安装工具git, cmake, python 3.7+, NSIS, bash
其中python可以在windows store里面下载安装。windows下安装bash最简单的方法是安装 git bash,然后将 git bash 的bin目录添加到 PATH 中。
3. 下载源代码
git clone --recursive https://github.com/rime/weasel.git
4. 下载并编译boost库
下载boost_1_69_0.tar.gz(或者.zip)解压到某个目录下,如c:\libraries\boost_1_69_0。在开始菜单中的"Visual Studio 2017"目录下选择"Developer Command Prompt for VS 2017"命令行窗口。 用cd命令进入boost_1_69_0目录,运行 bootstrap 准备好编译环境。打 "b2 --build-type=complete" 将 boost 所有库编译出来。
5. 编译 weasel
在同样的"Developer Command Prompt for VS 2017"命令行窗口中,用cd命令进入weasel目录,按照模版创建 env.bat,并设置 boost 路径。
进入librime子目录,按照模版env.bat,并设置 boost 路径,打 build.bat 编译 librime。返回weasel目录,打 build.bat 编译。
编译过程中可以修改 build.bat 里面的0/1选项,选择要编译的组件。如果编译失败,改变脚本或者环境后可以用命令 build rebuild 重新编译。
常见问题
编译完成但是找不到 libboost_xxx.lib 文件。发生原因可能是 boost 没有编译所有所需的库文件,用 b2 --build-type=complete 重新编译。
编译时找不到 rime_api.h 文件, 手动编译 librime 子目录中的内容(修改 env.bat 运行 build.bat)。
创建安装包时 output/data/*.txt 为空,在 build.bat 中设置 data=1 后重新编译,并检查 bash 命令可以正常运行。
安装后,没有打字框,出现错误提示。用安装包重新安装,不能直接运行 output 里面的 setup 程序。
|
|