mips64el编译emqx
如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033
文章目录
环境:
emqx : 4.0.5
elang/opt : 22
wxWidgets : 3.0.0
1.编译wxWidgets
git clone -b v3.0.0 https://github.com/wxWidgets/wxWidgets.git
cd wxWidgets
./configure --build=mips64el-linux-gnu
make CXXFLAGS="-std=gnu++11"
sudo make install
问题1
x11 not found => libX11-devel-1.6.5-1.ns7_4.mips64el.rpm libxcb-devel-1.12-1.ns7_4.mips64el.rpm xorg-x11-proto-devel-7.7-20.ns7_4.noarch.rpm
libXau-devel-1.0.8-2.1.ns7_4.mips64el.rpm pkgconfig-0.27.1-4.ns7_4.mips64el.rpm
pangoxft library not found => yum install pango-devel
问题2
error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
解决(3.0以后只能使用-std=gnu++11):
make CXXFLAGS="-std=gnu++11"
问题3
./src/gtk/print.cpp:41:30: 致命错误:gtk/gtkunixprint.h:没有那个文件或目录
原因:
缺少libgtk2.0-dev
解决:
sudo rpm -ivh gtk2-devel-2.24.31-1.ns7_4.2.mips64el.rpm
将/usr/include/gtk-unix-print-2.0合并到/usr/include/gtk-2.0
gtk-2.0.tar.gz gtk-unix-print-2.0.tar.gz
2.编译elang/opt
git clone -b OTP-22.2 https://github.com/erlang/otp.git
cd opt
./configure --build=mips64el-linux-gnu
make -j8
问题1
Rebar dependency crypto could not be loaded for reason {“no such file or directory”,“crypto.app”}
解决:
opt依赖openssl
sudo yum install openssl-devel
3.编译emqx
git clone -b v4.0.5 https://github.com/emqx/emqx-rel.git emqx-rel
cd emqx-rel && make emqx-pkg
ls _packages/emqx
问题1
拷贝最终rpm文件失败
解决:
直接到生成的目录获取rpm文件即可
/tmp/emqx/RPMS/mips64el/emqx-neokylin7.0-v4.0-1.mips64el.rpm
3.安装与运行
sudo rpm -ivh emqx-neokylin7.0-v4.0-1.mips64el.rpm
$ sudo emqx start
EMQ X Broker v4.0.5 is started successfully!
$ emqx_ctl status
Node '[email protected]' is started
emqx master is running
License
License under CC BY-NC-ND 4.0: 署名-非商业使用-禁止演绎
Reference:
NULL