SUSE Linux上源碼安裝libssh2

緣起

  • 要給測試支持一下,在SUSE Linux上安裝libssh2,環境上有了openssl-1.0.1g和libssh2-1.8.0。linux

    • uname -a還看不了發行版本。只能使用cat /etc/issuelsb_release -a查看。

解決過程

第一步

  • 以前沒有安裝過,因而搜索一番。linux環境編譯libssh2shell

    • 有且只找到一個合適的,當時一直卡在 -fPIC 參數的問題,雖解決./config的問題,但make時又報錯。
  • 沒招了,跟同事反饋了一下,給了一份簡要的指導ssh

第二步

  • 移交給測試後,她試了一下仍是報錯。fatal error:libssh2_config.h:No such file or directory測試

    • 這個大機率就是路徑沒有配置正確。-I/src -I/include
    • .profileexport LIBSSH2_HOME=/usr/local/libssh2,執行source .profile後,編譯代碼路徑下的Makefile.incl.platform就能得值,執行就OK。

第三步

  • 說是HP和SUSE的還不太同樣,HP的還須要再修改值。被勉勵了 要本身多思考和定位,而不要總想着現成的
  • 想到了以前升級GCC6的時候,其實也這麼配過,但沒想過這麼多,當時就是照着抄了。
  • 源代碼編譯時,要抽象出一些方法論來,確實思路都差很少。

內容

cd openssl-1.0.1s/
  ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl/ssl
  make && make install
  ./config shared --prefix=/usr/local/openssl --openssldir=/usr/local/openssl/ssl
  make clean
  make && make install


cd libssh2-1.8.0/
  ./configure --prefix=/usr/local/libssh2 --with-openssl CPPFLAGS="-I/usr/local/openssl/include" LDFLAGS="-L/usr/local/openssl/lib"
  make clean
  make && make install

其它

  • 20190128安裝的,20190129整理。
相關文章
相關標籤/搜索