阅读:22505回复:10

Yong输入法的编译方法

楼主#
更多 发布于:2016-08-28 16:40
依赖
小小输入法在linux下开发和编译。没有测试过在其他操作系统下进行编译。
需要是64位系统,32位系统某些模块就没法编译,需要自己手工调整。
clang编译器,需要支持c11以上版本。gcc也行,需自己调整rules.txt文件。
nodejs需要4.0版本及以上。
系统中需要安装好相关的开发环境,比如gtk4-devel,gtk3-devel,gtk2-devel,ibus-devel,libxkbcommon-devel,libcurl-devel,wayland-devel, gtk-layer-shell-devel(debian下是libgtk-4-dev libgtk-3-dev libgtk2.0-dev libxkbcommon-dev libibus-1.0-dev libcurl4-openssl-dev libwayland-dev libgtk-layer-shell0-dev或libgtk-layer-shell-dev)。
准备好build.js,在https://github.com/dgod/build.js

编译
由于git不能存储空目录,所以下载到的源代码缺少一些目录结构,编译前需要先创建好一些目录
mkdir - p {llib,cloud,gbk,mb,vim}/{l32,l64}
mkdir -p im/{l32-gtk3,l64-gtk3}
mkdir -p config/{l32-gtk3,l64-gtk3,l32-gtk4,l64-gtk4}
mkdir -p im/gtk-im/{l32-gtk3,l32-gtk2,l64-gtk3,l64-gtk2}mkdir -p im/IMdkit/{l32,l64}

编译所有相关内容
node build.js

只编译linux相关内容
node build.js l32 l64

编译qt模块
这个编译某些地方是写死了路径的,在某些系统上可能无法编译通过,需要自己调整build.txt。(需要安装包qt5-qtbase-devel,qt5-qtbase-private-devel,debian下是qtbase5-dev,qtbase5-private-dev)
node build.js -C im/qt5-im l32-qt5 l64-qt5
代码同样支持qt6
mkdir im/qt5-im/{l32-qt6,l64-qt6,l32-qt5,l64-qt5}
node build.js -C im/qt5-im l64-qt5

编译wps使用的模块
安装好wps
编译wps专用qt 参考https://github-wiki-see.page/m/kingsoft-wps/qt5/wiki/Build-Qt-for-WPS,这里需要把build目录放在源代码目录下
cd im/qt5-im
mkdir wps
export WPS_QT=下载的wps版本qt源代码路径
build wps

linux下打包
先node build.js -C install copy
7z(需要系统中安装有p7zip压缩工具)
node build.js dist

rpm(需要系统中安装有rpmbuild)
node build.js rpm

deb(需要系统中有dpkg和fakeroot)
node build.js deb
沙发#
发布于:2017-03-13 10:23
gnuxyong:原来应该氏libibus-1.0-dev。不过还氏编译出错。
mate1604@wdnb00:/tmp/yong$ node build.js l32
gcc -m32 -march=i686 -I/tmp/yong/llib -I/tmp...
回到原帖
新加的代码忘了上传了,你更新一下代码吧
板凳#
发布于:2016-08-30 12:09
fireflyoo:怎么编译成win32版的?
i686-w64-mingw32-gcc -I/run/media/fireflyoo/DD2801CE9FEF970F/msys32/home/Feng/arch-yong/src/yong/llib -I/...
回到原帖
部分代码还没有开源
游客

返回顶部