一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第10天,点击查看活动详情。
Bison 3.0+
1 查看当前系统的 Bsion 版本 bison -V
2 如果没有,则需要安装 wget ftp.gnu.org/gnu/bison/b… tar -xf bison-3.0.5.tar.xz cd bison-3.0.5 mkdir build cd build ../configure --prefix=/usr/local/bison-3.0.5 make && make install
3 替换为新版本 mv /usr/bin/bison /usr/bin/bison_old ln -s /usr/local/bison-3.0.5/bin/bison /usr/bin/bison
其它
Apache Maven 需要 3.5+ 、Oracle JDK 1.8+ 、Python 2.7+ 这些可自行查找相关资料进行安装。
| 操作步骤 | 说明 |
|---|---|
| 1 | 下载Doris的安装包 |
| wget https :// mirrors.tuna.tsinghua.edu.cn / apache / incubator / doris / 0 . 13 . 0**-**incubating / apache-doris-0.13.0.0-incubating-src.tar.gz | |
| 2 | 解压缩 |
| tar -zxf apache-doris-0.13.0.0-incubating-src.tar.gz | |
| 3 | 上传“doris编译修改的配置文件\thirdparty\vars.sh”脚本文件覆盖到“ /export/softwares/ apache-doris-0.13.0.0-incubating-src/thirdparty”目录 |
| 4 | 【为加速 编译可以使用提供的第三方包】 |
| 上传“doris直接编译需要下载的第三方包”目录下所有文件上传到“ /export/softwares/ apache-doris-0.13.0.0-incubating-src/thirdparty/src”目录 | |
| 5 | 开始编译 |
| cd apache-doris-0.13.0.0-incubating-src**** | |
| # 从 0.13 版本开始,因为协议的不兼容,移除了 mysql-5.7.18 和 lzo-2.10 库# 如果需要访问 mysql 外部表,可以编译时手动添加 WITH_MYSQL=1# 如果需要继续使用 LZO 压缩算法(例如访问早期写入数据时),添加 WITH_LZO=1# 如果编译的机器网速很慢,可以后台执行 #WITH_MYSQL=1 sh build.sh >log.txt 2>&1 &# --clean | |
| WITH_MYSQL=1 sh build.sh |
遇到的问题
js_generator.cc:(.text+0xfc3c): undefined reference to ‘well_known_types_js’
查找 Doris 源码中的 js_embed,一般在三方库的 protobuf 下,直接移除掉,重新编译即可
find ./ -name js_embed mv ./thirdparty/src/protobuf-3.5.1/src/js_embed ./
/lib64/libstdc++.so.6: version ‘GLIBCXX_3.4.21’ not found
问题的原因就是在使用 gcc 编译时,使用本地环境的库 libstdc++.so.6 中的方法时找不到需要的信息,一般是在安装或升级是没有把环境变量的这个库文件升级,解决方法如下:
find / -name "libstdc++.so*" cd /usr/lib64 strings /usr/lib64/libstdc++.so.6 | grep GLIBC
查看 /usr/lib64 目录下的 libstdc 开头的文件 [root@node1 lib64]# ll libstdc* lrwxrwxrwx 1 root root 19 Nov 19 09:07 libstdc++.so.6 -> libstdc++.so.6.0.19 -rwxr-xr-x 1 root root 995840 Sep 30 10:17 libstdc++.so.6.0.19
把高版本的拷贝到 /usr/lib64 下 cp /usr/local/gcc-7.3.0/lib64/libstdc++.so.6.0.24 ./ 创建软连接 rm libstdc++.so.6 ln -s libstdc++.so.6.0.24 libstdc++.so.6