新來到公司,需要我部署一套公司應用的環境,具體干啥就不說了,直接看操作,這里主要想和大家分享下部署環境時遇到的問題,希望大家遇到同樣的問題是,可以在這里快速找到答案
第一步,系統准備
- 安裝軟件列表
sshfs
sshpass
cifs-utils - 其他對接系統 硬盤庫,光盤庫,磁帶庫等系統安裝單獨處理,此處不涉及
- 部分系統無法直接安裝sshfs,請參考下文
https://www.cnblogs.com/levi125/p/13685733.html
第二步,開始准備安裝達夢數據庫
先部署一下基礎的環境,參照如下腳本
#!/bin/bash # host添加 源地址 echo '199.232.96.133 raw.githubusercontent.com' >> /etc/hosts # 下載nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> /etc/profile source /etc/profile nvm --version # 下載node.js nvm install v10.12.0 node -v # 下載unixodbc yum install unixodbc # 配置odbc cp odbc.ini /etc/ cp odbcinst.ini /etc/ #配置達夢環境變量 echo "export LD_LIBRARY_PATH=/usr/local/lib:/opt/dmdbms/bin:\$LD_LIBRARY_PATH" >> /etc/profile echo "export PATH=/opt/dmdbms/bin:\$PATH" >> /etc/profile source /etc/profile odbcinst -j isql -v DM8
進入環境部署的第二階段
##更新yum源,ubuntu可以忽略 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo sed -i 's/$releasever/7/g' /etc/yum.repos.d/CentOS-Base.repo #清空緩存:yum clean all #生成緩存:yum makecache #更新源:sudo yum update 更新gcc版本到5.4 下載: Wget http://mirror.hust.edu.cn/gnu/gcc/gcc-5.4.0/gcc-5.4.0.tar.bz2(國內鏡像) gcc ftp下載地址: ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-4.7.2/ 下載完成后,執行命令: tar -jxvf gcc-5.4.0.tar.bz2 獲得gcc-5.4.0文件夾 mkdir build (以后的操作目錄) cd gcc-5.4.0/ ./contrib/download_prerequisites(這里在下載一些安裝gcc會用到的文件,如果沒配置wget則會失敗。) cd ../build/ (來到工作目錄) 接下來要安裝gmp、mpfr、mpc gmp: ../gcc-5.4.0/gmp-4.3.2/configure sudo make sudo make install mpfr: ../gcc-5.4.0/mpfr-2.4.2/configure sudo make sudo make install ../gcc-5.4.0/mpc-0.8.1/configure sudo make sudo make install 現在再安裝gcc就可以了 ../gcc-5.4.0/configure –enable-threads=posix –disable-checking –disable-multilib –enable-languages=c,c++ sudo make (及其耗時,將近兩個小時) sudo make install gcc –version (驗證gcc版本是否為5.4.0) 參考:https://www.qedev.com/linux/91867.html
../gcc-5.4.0/configure –enable-threads=posix –disable-checking –disable-multilib –enable-languages=c,c++ -disable-libsanitizer #需要加上最后一段,不然會出現問題3 ####### 遇到的問題 1 ./md-unwind-support.h:61:47: 錯誤: dereferencing pointer to incomplete type ‘struct ucontext’ sc = (struct sigcontext *) (void *) &uc_->uc_mcontext ———————————————— 問題參考鏈接 https://blog.csdn.net/juan190755422/article/details/103709300 ####### 問題2 ../../../../gcc-5.4.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc:146:23: 致命錯誤: sys/ustat.h:沒有那個文件或目錄 編譯中斷。 make[4]: *** [Makefile:449:sanitizer_platform_limits_posix.lo] 錯誤 1 make[4]: 離開目錄“/home/software/gcc/build/x86_64-unknown-linux-gnu/libsanitizer/sanitizer_common” make[3]: *** [Makefile:437:all-recursive] 錯誤 1 make[3]: 離開目錄“/home/software/gcc/build/x86_64-unknown-linux-gnu/libsanitizer” make[2]: *** [Makefile:307:all] 錯誤 2 make[2]: 離開目錄“/home/software/gcc/build/x86_64-unknown-linux-gnu/libsanitizer” make[1]: *** [Makefile:16925:all-target-libsanitizer] 錯誤 2 make[1]: 離開目錄“/home/software/gcc/build” make: *** [Makefile:913:all] 錯誤 2 參考鏈接 https://zhuanlan.zhihu.com/p/377881136 ############ 問題3 In file included from ../../../../gcc-5.4.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc:179:0: ../../../../gcc-5.4.0/libsanitizer/sanitizer_common/sanitizer_internal_defs.h:272:72: 錯誤: size of array ‘assertion_failed__1090’ is negative 參考鏈接 https://zhuanlan.zhihu.com/p/357264769
在安裝gcc的時候遇到了一些問題,做一下總結