blob: e5d35e37ea7ec5e4bd3524caf77c143328bbdbbe [file] [log] [blame]
"use strict";(self.webpackChunkdoris_website=self.webpackChunkdoris_website||[]).push([[44336],{15680:(e,n,t)=>{t.d(n,{xA:()=>s,yg:()=>d});var a=t(296540);function l(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function o(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach((function(n){l(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function p(e,n){if(null==e)return{};var t,a,l=function(e,n){if(null==e)return{};var t,a,l={},r=Object.keys(e);for(a=0;a<r.length;a++)t=r[a],n.indexOf(t)>=0||(l[t]=e[t]);return l}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)t=r[a],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(l[t]=e[t])}return l}var i=a.createContext({}),g=function(e){var n=a.useContext(i),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},s=function(e){var n=g(e.components);return a.createElement(i.Provider,{value:n},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},y=a.forwardRef((function(e,n){var t=e.components,l=e.mdxType,r=e.originalType,i=e.parentName,s=p(e,["components","mdxType","originalType","parentName"]),u=g(t),y=l,d=u["".concat(i,".").concat(y)]||u[y]||c[y]||r;return t?a.createElement(d,o(o({ref:n},s),{},{components:t})):a.createElement(d,o({ref:n},s))}));function d(e,n){var t=arguments,l=n&&n.mdxType;if("string"==typeof e||l){var r=t.length,o=new Array(r);o[0]=y;var p={};for(var i in n)hasOwnProperty.call(n,i)&&(p[i]=n[i]);p.originalType=e,p[u]="string"==typeof e?e:l,o[1]=p;for(var g=2;g<r;g++)o[g]=t[g];return a.createElement.apply(null,o)}return a.createElement.apply(null,t)}y.displayName="MDXCreateElement"},119365:(e,n,t)=>{t(296540)},204865:(e,n,t)=>{t(296540),t(992303)},955894:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>i,contentTitle:()=>o,default:()=>c,frontMatter:()=>r,metadata:()=>p,toc:()=>g});var a=t(58168),l=(t(296540),t(15680));t(204865),t(119365);const r={title:"Arm \u5e73\u53f0\u4e0a\u7f16\u8bd1",language:"zh-CN"},o=void 0,p={unversionedId:"install/source-install/compilation-arm",id:"version-2.1/install/source-install/compilation-arm",title:"Arm \u5e73\u53f0\u4e0a\u7f16\u8bd1",description:"\x3c!--",source:"@site/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/install/source-install/compilation-arm.md",sourceDirName:"install/source-install",slug:"/install/source-install/compilation-arm",permalink:"/zh-CN/docs/install/source-install/compilation-arm",draft:!1,tags:[],version:"2.1",frontMatter:{title:"Arm \u5e73\u53f0\u4e0a\u7f16\u8bd1",language:"zh-CN"},sidebar:"docs",previous:{title:"Linux \u5e73\u53f0\u76f4\u63a5\u7f16\u8bd1",permalink:"/zh-CN/docs/install/source-install/compilation-linux"},next:{title:"Windows \u5e73\u53f0\u4e0a\u7f16\u8bd1",permalink:"/zh-CN/docs/install/source-install/compilation-win"}},i={},g=[{value:"\u786c\u4ef6/\u64cd\u4f5c\u7cfb\u7edf\u73af\u5883",id:"\u786c\u4ef6\u64cd\u4f5c\u7cfb\u7edf\u73af\u5883",level:2},{value:"\u8f6f\u4ef6\u73af\u5883\u914d\u7f6e",id:"\u8f6f\u4ef6\u73af\u5883\u914d\u7f6e",level:2},{value:"\u8f6f\u4ef6\u73af\u5883\u5bf9\u7167\u8868",id:"\u8f6f\u4ef6\u73af\u5883\u5bf9\u7167\u8868",level:3},{value:"CentOS 7.9 \u8f6f\u4ef6\u73af\u5883\u5b89\u88c5",id:"centos-79-\u8f6f\u4ef6\u73af\u5883\u5b89\u88c5",level:3},{value:"Ubuntu 20.04 \u8f6f\u4ef6\u73af\u5883\u5b89\u88c5",id:"ubuntu-2004-\u8f6f\u4ef6\u73af\u5883\u5b89\u88c5",level:3},{value:"\u7f16\u8bd1",id:"\u7f16\u8bd1",level:2},{value:"\u5e38\u89c1\u95ee\u9898",id:"\u5e38\u89c1\u95ee\u9898",level:2}],s={toc:g},u="wrapper";function c(e){let{components:n,...t}=e;return(0,l.yg)(u,(0,a.A)({},s,t,{components:n,mdxType:"MDXLayout"}),(0,l.yg)("p",null,"\u672c\u6587\u6863\u4ecb\u7ecd\u5982\u4f55\u5728 ARM64 \u5e73\u53f0\u4e0a\u7f16\u8bd1 Doris\u3002"),(0,l.yg)("p",null,"\u6ce8\u610f\uff0c\u8be5\u6587\u6863\u4ec5\u4f5c\u4e3a\u6307\u5bfc\u6027\u6587\u6863\u3002\u5728\u4e0d\u540c\u73af\u5883\u4e2d\u7f16\u8bd1\u53ef\u80fd\u51fa\u73b0\u5176\u4ed6\u9519\u8bef\u3002\u5982\u9047\u95ee\u9898\uff0c\u6b22\u8fce\u5411 Doris ",(0,l.yg)("a",{parentName:"p",href:"https://github.com/apache/doris/issues"},"\u63d0\u51fa Issue")," \u6216\u89e3\u51b3\u65b9\u6848\u3002"),(0,l.yg)("h2",{id:"\u786c\u4ef6\u64cd\u4f5c\u7cfb\u7edf\u73af\u5883"},"\u786c\u4ef6/\u64cd\u4f5c\u7cfb\u7edf\u73af\u5883"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u7cfb\u7edf\u7248\u672c\uff1aCentOS 7.9\u3001Ubuntu 20.04")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u7cfb\u7edf\u67b6\u6784\uff1aARM64")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u5185\u5b58\uff1a16 GB +"))),(0,l.yg)("h2",{id:"\u8f6f\u4ef6\u73af\u5883\u914d\u7f6e"},"\u8f6f\u4ef6\u73af\u5883\u914d\u7f6e"),(0,l.yg)("h3",{id:"\u8f6f\u4ef6\u73af\u5883\u5bf9\u7167\u8868"},"\u8f6f\u4ef6\u73af\u5883\u5bf9\u7167\u8868"),(0,l.yg)("table",null,(0,l.yg)("thead",{parentName:"table"},(0,l.yg)("tr",{parentName:"thead"},(0,l.yg)("th",{parentName:"tr",align:null},"\u7ec4\u4ef6\u540d\u79f0"),(0,l.yg)("th",{parentName:"tr",align:null},"\u7ec4\u4ef6\u7248\u672c"))),(0,l.yg)("tbody",{parentName:"table"},(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"Git"),(0,l.yg)("td",{parentName:"tr",align:null},"2.0+")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"JDK"),(0,l.yg)("td",{parentName:"tr",align:null},"1.8.0")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"Maven"),(0,l.yg)("td",{parentName:"tr",align:null},"3.6.3")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"NodeJS"),(0,l.yg)("td",{parentName:"tr",align:null},"16.3.0")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"LDB-Toolchain"),(0,l.yg)("td",{parentName:"tr",align:null},"0.9.1")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"\u5e38\u5907\u73af\u5883\uff1abyacc patch automake libtool make which file ncurses-devel gettext-devel unzip bzip2 zip util-linux wget git python2"),(0,l.yg)("td",{parentName:"tr",align:null},"yum \u6216 apt \u81ea\u52a8\u5b89\u88c5\u5373\u53ef")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"autoconf"),(0,l.yg)("td",{parentName:"tr",align:null},"2.69")),(0,l.yg)("tr",{parentName:"tbody"},(0,l.yg)("td",{parentName:"tr",align:null},"bison"),(0,l.yg)("td",{parentName:"tr",align:null},"3.0.4")))),(0,l.yg)("h3",{id:"centos-79-\u8f6f\u4ef6\u73af\u5883\u5b89\u88c5"},"CentOS 7.9 \u8f6f\u4ef6\u73af\u5883\u5b89\u88c5"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"1. \u521b\u5efa\u8f6f\u4ef6\u4e0b\u8f7d\u5b89\u88c5\u5305\u6839\u76ee\u5f55\u548c\u8f6f\u4ef6\u5b89\u88c5\u6839\u76ee\u5f55")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"# \u521b\u5efa\u8f6f\u4ef6\u4e0b\u8f7d\u5b89\u88c5\u5305\u6839\u76ee\u5f55\nmkdir /opt/tools\n\n# \u521b\u5efa\u8f6f\u4ef6\u5b89\u88c5\u6839\u76ee\u5f55\nmkdir /opt/software\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"2. \u5b89\u88c5\u4f9d\u8d56\u9879")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"### Git ###\n# \u7701\u53bb\u7f16\u8bd1\u9ebb\u70e6\uff0c\u76f4\u63a5\u4f7f\u7528 yum \u5b89\u88c5\nyum install -y git\n\n### JDK8 \u4e24\u79cd\u65b9\u5f0f\uff0c\u4efb\u9009\u4e00\u79cd ###\n# \u7b2c\u4e00\u79cd\u662f\u7701\u53bb\u989d\u5916\u4e0b\u8f7d\u548c\u914d\u7f6e\uff0c\u76f4\u63a5\u4f7f\u7528 yum \u5b89\u88c5\uff0c\u5b89\u88c5 devel \u5305\u662f\u4e3a\u4e86\u83b7\u53d6\u4e00\u4e9b\u5de5\u5177\uff0c\u5982 jps \u547d\u4ee4\nyum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel \n# \u7b2c\u4e8c\u79cd\u662f\u4e0b\u8f7d ARM64 \u67b6\u6784\u7684\u5b89\u88c5\u5305\uff0c\u89e3\u538b\u914d\u7f6e\u73af\u5883\u53d8\u91cf\u540e\u4f7f\u7528\ncd /opt/tools\nwget https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz && tar -zxvf jdk-8u291-linux-aarch64.tar.gz && \\\nmv jdk1.8.0_291 /opt/software/jdk8\n\n### Maven ###\ncd /opt/tools\n# wget \u5de5\u5177\u4e0b\u8f7d\u540e\uff0c\u76f4\u63a5\u89e3\u538b\u7f29\u914d\u7f6e\u73af\u5883\u53d8\u91cf\u4f7f\u7528\nwget https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz && tar -zxvf apache-maven-3.6.3-bin.tar.gz && \\\nmv apache-maven-3.6.3 /opt/software/maven\n\n### NodeJS ###\ncd /opt/tools\n# \u4e0b\u8f7d ARM64 \u67b6\u6784\u7684\u5b89\u88c5\u5305\nwget https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz && tar -xvf node-v16.3.0-linux-arm64.tar.xz && \\\nmv node-v16.3.0-linux-arm64 /opt/software/nodejs\n\n### LDB-Toolchain ###\ncd /opt/tools\n# \u4e0b\u8f7d LDB-Toolchain ARM \u7248\u672c\nwget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh && sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/\n\n### \u5176\u4ed6 ###\n# install required system packages\nsudo yum install -y byacc patch automake libtool make which file ncurses-devel gettext-devel unzip bzip2 bison zip util-linux wget git python2\n\n# install autoconf-2.69\ncd /opt/tools\nwget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \\\n tar zxf autoconf-2.69.tar.gz && \\\n mv autoconf-2.69 /opt/software/autoconf && \\\n cd /opt/software/autoconf && \\\n ./configure && \\\n make && \\\n make install\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"3. \u914d\u7f6e\u73af\u5883\u53d8\u91cf")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},'# \u914d\u7f6e\u73af\u5883\u53d8\u91cf\nvim /etc/profile.d/doris.sh\nexport JAVA_HOME=/opt/software/jdk8\nexport MAVEN_HOME=/opt/software/maven\nexport NODE_JS_HOME=/opt/software/nodejs\nexport LDB_HOME=/opt/software/ldb_toolchain\nexport PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$NODE_JS_HOME/bin:$LDB_HOME/bin:$PATH\n\n# \u4fdd\u5b58\u9000\u51fa\u5e76\u5237\u65b0\u73af\u5883\u53d8\u91cf\nsource /etc/profile.d/doris.sh\n\n# \u6d4b\u8bd5\u662f\u5426\u6210\u529f\njava -version\n> java version "1.8.0_291"\nmvn -version\n> Apache Maven 3.6.3\nnode --version\n> v16.3.0\ngcc --version\n> gcc-11\n')),(0,l.yg)("h3",{id:"ubuntu-2004-\u8f6f\u4ef6\u73af\u5883\u5b89\u88c5"},"Ubuntu 20.04 \u8f6f\u4ef6\u73af\u5883\u5b89\u88c5"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"1. \u66f4\u65b0 apt-get \u8f6f\u4ef6\u5e93")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"apt-get update\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"2. \u91cd\u65b0\u914d\u7f6e shell")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"# Ubuntu \u7684 shell \u9ed8\u8ba4\u5b89\u88c5\u7684\u662f dash\uff0c\u800c\u4e0d\u662f bash\uff0c\u8981\u5207\u6362\u6210 bash \u624d\u80fd\u6267\u884c\uff0c\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u67e5\u770b sh \u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u786e\u8ba4 shell \u5bf9\u5e94\u7684\u7a0b\u5e8f\u662f\u54ea\u4e2a\uff1a\nls -al /bin/sh\n\n# \u901a\u8fc7\u4ee5\u4e0b\u65b9\u5f0f\u53ef\u4ee5\u4f7f shell \u5207\u6362\u56de bash\nsudo dpkg-reconfigure dash\n# \u7136\u540e\u9009\u62e9 no \u6216\u8005 \u5426 \uff0c\u5e76\u786e\u8ba4\u3002\u8fd9\u6837\u505a\u5c06\u91cd\u65b0\u914d\u7f6e dash\uff0c\u5e76\u4f7f\u5176\u4e0d\u4f5c\u4e3a\u9ed8\u8ba4\u7684 shell \u5de5\u5177\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"3. \u521b\u5efa\u8f6f\u4ef6\u4e0b\u8f7d\u5b89\u88c5\u5305\u6839\u76ee\u5f55\u548c\u8f6f\u4ef6\u5b89\u88c5\u6839\u76ee\u5f55")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"# \u521b\u5efa\u8f6f\u4ef6\u4e0b\u8f7d\u5b89\u88c5\u5305\u6839\u76ee\u5f55\nmkdir /opt/tools\n\n# \u521b\u5efa\u8f6f\u4ef6\u5b89\u88c5\u6839\u76ee\u5f55\nmkdir /opt/software\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"4. \u5b89\u88c5\u4f9d\u8d56\u9879")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"### Git ###\n# \u7701\u53bb\u7f16\u8bd1\u9ebb\u70e6\uff0c\u76f4\u63a5\u4f7f\u7528 apt-get \u5b89\u88c5\napt-get -y install git\n\n### JDK8 ### \n# \u4e0b\u8f7d ARM64 \u67b6\u6784\u7684\u5b89\u88c5\u5305\uff0c\u89e3\u538b\u914d\u7f6e\u73af\u5883\u53d8\u91cf\u540e\u4f7f\u7528\ncd /opt/tools\nwget https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz && tar -zxvf jdk-8u291-linux-aarch64.tar.gz && \\\nmv jdk1.8.0_291 /opt/software/jdk8\n\n### Maven ###\ncd /opt/tools\n# wget \u5de5\u5177\u4e0b\u8f7d\u540e\uff0c\u76f4\u63a5\u89e3\u538b\u7f29\u914d\u7f6e\u73af\u5883\u53d8\u91cf\u4f7f\u7528\nwget https://dlcdn.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz && tar -zxvf apache-maven-3.6.3-bin.tar.gz && \\\nmv apache-maven-3.6.3 /opt/software/maven\n\n### NodeJS ###\ncd /opt/tools\n# \u4e0b\u8f7d ARM64 \u67b6\u6784\u7684\u5b89\u88c5\u5305\nwget https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz && tar -xvf node-v16.3.0-linux-arm64.tar.xz && \\\nmv node-v16.3.0-linux-arm64 /opt/software/nodejs\n\n### LDB-Toolchain ###\ncd /opt/tools\n# \u4e0b\u8f7d LDB-Toolchain ARM \u7248\u672c\nwget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh && sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/\n\n### \u5176\u4ed6 ###\n# install required system packages\nsudo apt install -y build-essential cmake flex automake bison binutils-dev libiberty-dev zip libncurses5-dev curl ninja-build\nsudo apt-get install -y make\nsudo apt-get install -y unzip\nsudo apt-get install -y python2\nsudo apt-get install -y byacc\nsudo apt-get install -y automake\nsudo apt-get install -y libtool\nsudo apt-get install -y bzip2\nsudo add-apt-repository ppa:ubuntu-toolchain-r/ppa \nsudo apt update\nsudo apt install gcc-11 g++-11 \nsudo apt-get -y install autoconf autopoint\n\n# install autoconf-2.69\ncd /opt/tools\nwget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \\\n tar zxf autoconf-2.69.tar.gz && \\\n mv autoconf-2.69 /opt/software/autoconf && \\\n cd /opt/software/autoconf && \\\n ./configure && \\\n make && \\\n make install\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"5. \u914d\u7f6e\u73af\u5883\u53d8\u91cf")),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},'# \u914d\u7f6e\u73af\u5883\u53d8\u91cf\nvim /etc/profile.d/doris.sh\nexport JAVA_HOME=/opt/software/jdk8\nexport MAVEN_HOME=/opt/software/maven\nexport NODE_JS_HOME=/opt/software/nodejs\nexport LDB_HOME=/opt/software/ldb_toolchain\nexport PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$NODE_JS_HOME/bin:$LDB_HOME/bin:$PATH\n\n# \u4fdd\u5b58\u9000\u51fa\u5e76\u5237\u65b0\u73af\u5883\u53d8\u91cf\nsource /etc/profile.d/doris.sh\n\n# \u6d4b\u8bd5\u662f\u5426\u6210\u529f\njava -version\n> java version "1.8.0_291"\nmvn -version\n> Apache Maven 3.6.3\nnode --version\n> v16.3.0\ngcc --version\n> gcc-11\n')),(0,l.yg)("h2",{id:"\u7f16\u8bd1"},"\u7f16\u8bd1"),(0,l.yg)("p",null,"\u76ee\u524d ARM \u73af\u5883\u4ec5\u63a8\u8350\u4f7f\u7528 LDB Toolchain \u8fdb\u884c\u7f16\u8bd1\u3002"),(0,l.yg)("p",null,"\u5728 ARM \u5e73\u53f0\u7f16\u8bd1 Doris \u65f6\uff0c\u8bf7\u5173\u95ed AVX2 \u548c LIBUNWIND \u4e09\u65b9\u5e93\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"export USE_AVX2=OFF\nexport USE_UNWIND=OFF\n")),(0,l.yg)("p",null,"\u7136\u540e\u53c2\u8003 \u4f7f\u7528 LDB Toolchain \u7f16\u8bd1\u6587\u6863\uff0c\u8fdb\u884c\u7f16\u8bd1\u3002"),(0,l.yg)("h2",{id:"\u5e38\u89c1\u95ee\u9898"},"\u5e38\u89c1\u95ee\u9898"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"1. \u7f16\u8bd1\u7b2c\u4e09\u65b9\u5e93 libhdfs3.a\uff0c\u627e\u4e0d\u5230\u6587\u4ef6\u5939")),(0,l.yg)("p",null,"\u5728\u6267\u884c\u7f16\u8bd1\u5b89\u88c5\u8fc7\u7a0b\u4e2d\uff0c\u51fa\u73b0\u4e86\u5982\u4e0b\u62a5\u9519 ",(0,l.yg)("inlineCode",{parentName:"p"},"not found lib/libhdfs3.a file or directory"),"\u3002"),(0,l.yg)("p",null,"\u95ee\u9898\u539f\u56e0\uff1a\u7b2c\u4e09\u65b9\u5e93\u7684\u4f9d\u8d56\u4e0b\u8f7d\u6709\u95ee\u9898\u3002"),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\uff1a\u4f7f\u7528\u7b2c\u4e09\u65b9\u5e93\u4e0b\u8f7d\u4ed3\u5e93 "),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Bash"},"export REPOSITORY_URL=https://doris-thirdparty-repo.bj.bcebos.com/thirdparty\nsh /opt/doris/thirdparty/build-thirdparty.sh\n")),(0,l.yg)("p",null,"REPOSITORY_URL \u4e2d\u5305\u542b\u6240\u6709\u7b2c\u4e09\u65b9\u5e93\u6e90\u7801\u5305\u548c\u4ed6\u4eec\u7684\u5386\u53f2\u7248\u672c\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"2. Python \u547d\u4ee4\u672a\u627e\u5230")),(0,l.yg)("p",null,"\u6267\u884c build.sh \u65f6\u629b\u51fa\u5f02\u5e38\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},"/opt/doris/env.sh: line 46: python: command not found\n")),(0,l.yg)("p",null,"\u95ee\u9898\u53ef\u80fd\u539f\u56e0\uff1a\u7cfb\u7edf\u9ed8\u8ba4\u4f7f\u7528 ",(0,l.yg)("inlineCode",{parentName:"p"},"python2.7"),"\u3001 ",(0,l.yg)("inlineCode",{parentName:"p"},"python3.6"),"\u3001",(0,l.yg)("inlineCode",{parentName:"p"},"python2"),"\u3001",(0,l.yg)("inlineCode",{parentName:"p"},"python3")," \u8fd9\u51e0\u4e2a\u547d\u4ee4\u6765\u6267\u884c python \u547d\u4ee4\uff0cDoris \u5b89\u88c5\u4f9d\u8d56\u9700\u8981 python 2.7+ \u7248\u672c\u5373\u53ef\uff0c\u6545\u53ea\u9700\u8981\u6dfb\u52a0\u540d\u4e3a ",(0,l.yg)("inlineCode",{parentName:"p"},"python")," \u7684\u547d\u4ee4\u8fde\u63a5\u5373\u53ef\uff0c\u4f7f\u7528\u7248\u672c 2 \u548c\u7248\u672c 3 \u7684\u90fd\u53ef\u4ee5\u3002"),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\uff1a\u5efa\u7acb ",(0,l.yg)("inlineCode",{parentName:"p"},"\\usr\\bin")," \u4e2d ",(0,l.yg)("inlineCode",{parentName:"p"},"python")," \u547d\u4ee4\u7684\u8f6f\u8fde\u63a5\uff0c\u6bd4\u5982\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Shell"},"sudo ln -s /usr/bin/python2.7 /usr/bin/python\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"3. \u7f16\u8bd1\u7ed3\u675f\u540e\u6ca1\u6709 output \u76ee\u5f55")),(0,l.yg)("p",null,"build.sh \u6267\u884c\u7ed3\u675f\u540e\uff0c\u76ee\u5f55\u4e2d\u672a\u53d1\u73b0 output \u6587\u4ef6\u5939\u3002"),(0,l.yg)("p",null,"\u95ee\u9898\u539f\u56e0\uff1a\u672a\u6210\u529f\u7f16\u8bd1\uff0c\u9700\u91cd\u65b0\u7f16\u8bd1\u3002"),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\u5982\u4e0b\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Shell"},"sh build.sh --clean\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"4. \u5269\u4f59\u7a7a\u95f4\u4e0d\u8db3\uff0c\u7f16\u8bd1\u5931\u8d25")),(0,l.yg)("p",null,"\u7f16\u8bd1\u8fc7\u7a0b\u4e2d\u62a5\u201c\u6784\u5efa CXX \u5bf9\u8c61\u5931\u8d25\uff0c\u63d0\u793a\u5269\u4f59\u7a7a\u95f4\u4e0d\u8db3\u201d\u3002"),(0,l.yg)("p",null,(0,l.yg)("inlineCode",{parentName:"p"},"fatal error: error writing to /tmp/ccKn4nPK.s: No space left on device 1112 | } // namespace doris::vectorized compilation terminated.")),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\uff1a\u6269\u5927\u8bbe\u5907\u5269\u4f59\u7a7a\u95f4\uff0c\u5982\u5220\u9664\u4e0d\u9700\u8981\u7684\u6587\u4ef6\u7b49\u3002"),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"5. \u5728 pkg.config \u4e2d\u627e\u4e0d\u5230 pkg.m4 \u6587\u4ef6")),(0,l.yg)("p",null,"\u7f16\u8bd1\u8fc7\u7a0b\u4e2d\u51fa\u73b0\u4e86\u627e\u4e0d\u5230\u6587\u4ef6\u9519\u8bef\uff0c\u62a5\u9519\u5982\u4e0b\uff1a"),(0,l.yg)("p",null,(0,l.yg)("inlineCode",{parentName:"p"},"Couldn't find pkg.m4 from pkg-config. Install the appropriate package for your distribution or set ACLOCAL_PATH to the directory containing pkg.m4.")),(0,l.yg)("p",null,"\u901a\u8fc7\u67e5\u627e\u4e0a\u9762\u7684\u65e5\u5fd7\uff0c\u53d1\u73b0\u662f ",(0,l.yg)("inlineCode",{parentName:"p"},"libxml2")," \u8fd9\u4e2a\u4e09\u65b9\u5e93\u5728\u7f16\u8bd1\u7684\u65f6\u5019\u51fa\u73b0\u4e86\u95ee\u9898\u3002"),(0,l.yg)("p",null,"\u95ee\u9898\u539f\u56e0\uff1a",(0,l.yg)("inlineCode",{parentName:"p"},"libxml2")," \u4e09\u65b9\u5e93\u7f16\u8bd1\u9519\u8bef\uff0c\u627e\u4e0d\u5230 pkg.m4 \u6587\u4ef6\u3002\u5f88\u6709\u53ef\u80fd\u662f\uff1a"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Ubuntu \u7cfb\u7edf\u52a0\u8f7d\u73af\u5883\u53d8\u91cf\u65f6\u6709\u5f02\u5e38\uff0c\u5bfc\u81f4 ldb \u76ee\u5f55\u4e0b\u7684\u7d22\u5f15\u672a\u88ab\u6210\u529f\u52a0\u8f7d\uff1b")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u5728 libxml2 \u7f16\u8bd1\u65f6\u68c0\u7d22\u73af\u5883\u53d8\u91cf\u5931\u6548\uff0c\u5bfc\u81f4\u7f16\u8bd1\u8fc7\u7a0b\u6ca1\u6709\u68c0\u7d22\u5230 ldb/aclocal \u76ee\u5f55\u3002"))),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\u662f\uff1a\u5c06 ldb/aclocal \u76ee\u5f55\u4e0b\u7684 ",(0,l.yg)("inlineCode",{parentName:"p"},"pkg.m4")," \u6587\u4ef6\u62f7\u8d1d\u81f3 libxml2/m4 \u76ee\u5f55\u4e0b\uff0c\u91cd\u65b0\u7f16\u8bd1\u7b2c\u4e09\u65b9\u5e93"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Shell"}," cp /opt/software/ldb_toolchain/share/aclocal/pkg.m4 /opt/doris/thirdparty/src/libxml2-v2.9.10/m4\n sh /opt/doris/thirdparty/build-thirdparty.sh\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"6. \u6267\u884c\u6d4b\u8bd5 CURL_HAS_TLS_PROXY \u5931\u8d25")),(0,l.yg)("p",null,"\u4e09\u65b9\u5305\u7f16\u8bd1\u8fc7\u7a0b\u62a5\u9519\uff0c\u9519\u8bef\u5982\u4e0b\uff1a"),(0,l.yg)("p",null,(0,l.yg)("inlineCode",{parentName:"p"},'-- Performing Test CURL_HAS_TLS_PROXY - Failed CMake Error at cmake/dependencies.cmake:15 (get_property): INTERFACE_LIBRARY targets may only have whitelisted properties. The property "LINK_LIBRARIES_ALL" is not allowed.')),(0,l.yg)("p",null,"\u67e5\u770b\u65e5\u5fd7\u4ee5\u540e\uff0c\u53d1\u73b0\u5185\u90e8\u662f\u7531\u4e8e curl ",(0,l.yg)("inlineCode",{parentName:"p"},"No such file or directory")),(0,l.yg)("p",null,(0,l.yg)("inlineCode",{parentName:"p"},"fa``tal error: curl/curl.h: No such file or directory 2 | #include <curl/curl.h> compilation terminated. ninja: build stopped: subcommand failed.")),(0,l.yg)("p",null,"\u95ee\u9898\u539f\u56e0\uff1a\u7f16\u8bd1\u73af\u5883\u6709\u9519\u8bef\uff0c\u67e5\u770b gcc \u7248\u672c\u540e\u53d1\u73b0\u662f\u7cfb\u7edf\u81ea\u5e26\u7684 9.3.0 \u7248\u672c\uff0c\u6545\u800c\u6ca1\u6709\u8d70 ldb \u7f16\u8bd1\uff0c\u9700\u8bbe\u7f6e ldb \u73af\u5883\u53d8\u91cf\u3002"),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\uff1a\u914d\u7f6e ldb \u73af\u5883\u53d8\u91cf\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre",className:"language-Shell"}," # \u914d\u7f6e\u73af\u5883\u53d8\u91cf\n vim /etc/profile.d/ldb.sh\n export LDB_HOME=/opt/software/ldb_toolchain\n export PATH=$LDB_HOME/bin:$PATH\n # \u4fdd\u5b58\u9000\u51fa\u5e76\u5237\u65b0\u73af\u5883\u53d8\u91cf\n source /etc/profile.d/ldb.sh\n # \u6d4b\u8bd5\n gcc --version\n # \u663e\u793a gcc-11\n")),(0,l.yg)("p",null,(0,l.yg)("strong",{parentName:"p"},"7. \u5176\u4ed6\u7ec4\u4ef6\u95ee\u9898")),(0,l.yg)("p",null,"\u5982\u6709\u4ee5\u4e0b\u7ec4\u4ef6\u7684\u9519\u8bef\u63d0\u793a\uff0c\u5219\u7edf\u4e00\u4ee5\u8be5\u65b9\u6848\u89e3\u51b3\uff1a"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"bison \u76f8\u5173\uff1a\u5b89\u88c5 bison-3.0.4 \u65f6\u62a5 fseterr.c \u9519\u8bef")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"flex \u76f8\u5173\uff1aflex \u547d\u4ee4\u672a\u627e\u5230")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"cmake \u76f8\u5173"),(0,l.yg)("ul",{parentName:"li"},(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"cmake \u547d\u4ee4\u672a\u627e\u5230")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"cmake \u627e\u4e0d\u5230\u4f9d\u8d56\u5e93")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"cmake \u627e\u4e0d\u5230 CMAKE_ROOT")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"cmake \u73af\u5883\u53d8\u91cf CXX \u4e2d\u627e\u4e0d\u5230\u7f16\u8bd1\u5668\u96c6")))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"boost \u76f8\u5173\uff1aBoost.Build \u6784\u5efa\u5f15\u64ce\u5931\u8d25")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"mysql \u76f8\u5173\uff1a\u627e\u4e0d\u5230 mysql \u7684\u5ba2\u6237\u7aef\u4f9d\u8d56 a \u6587\u4ef6")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"gcc \u76f8\u5173\uff1aGCC \u7248\u672c\u9700\u8981 11+"))),(0,l.yg)("p",null,"\u95ee\u9898\u539f\u56e0\uff1a\u90fd\u662f\u672a\u4f7f\u7528\u6b63\u786e\u7684 ldb-toolchain \u8fdb\u884c\u7f16\u8bd1\u3002"),(0,l.yg)("p",null,"\u89e3\u51b3\u65b9\u6848\u5982\u4e0b\uff1a"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u68c0\u67e5 ldb-toolchain \u73af\u5883\u53d8\u91cf\u662f\u5426\u914d\u7f6e")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u67e5\u770b gcc \u7248\u672c\u662f\u5426\u4e0e",(0,l.yg)("a",{parentName:"p",href:"../../install/source-install/compilation-with-ldb-toolchain"},"\u4f7f\u7528 LDB-Toolchain \u7f16\u8bd1"),"\u6587\u6863\u4e2d\u63a8\u8350\u4e00\u81f4")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u5220\u9664 ",(0,l.yg)("inlineCode",{parentName:"p"},"ldb_toolchain_gen.aarch64.sh")," \u811a\u672c\u6267\u884c\u540e\u7684 ldb \u76ee\u5f55\uff0c\u91cd\u65b0\u6267\u884c\u5e76\u914d\u7f6e\u73af\u5883\u53d8\u91cf\uff0c\u9a8c\u8bc1 gcc \u7248\u672c"))))}c.isMDXComponent=!0}}]);