儘管已安裝,但未找到 RPC 標頭

儘管已安裝,但未找到 RPC 標頭

我正在嘗試安裝MB系統在我的 Arch Linux 機器上。我安裝了全部必要的依賴關係並安裝該軟體包libtirpc
運行configure腳本時,它以以下內容結束:

checking rpc/rpc.h usability... no
checking rpc/rpc.h presence... no
checking for rpc/rpc.h... no
checking tirpc/rpc/rpc.h usability... no
checking tirpc/rpc/rpc.h presence... no
checking for tirpc/rpc/rpc.h... no
checking rpc/types.h usability... no
checking rpc/types.h presence... no
checking for rpc/types.h... no
checking tirpc/rpc/types.h usability... no
checking tirpc/rpc/types.h presence... no
checking for tirpc/rpc/types.h... no
configure: error: Required header <rpc/types.h> not found, check include path and installed development packages

儘管所有文件都已就位:

ls /usr/include/tirpc/rpc
auth_des.h   clnt.h       des.h       pmap_clnt.h  rpc          rpc_com.h  rpcsec_gss.h    svc.h      xdr.h
auth_gss.h   clnt_soc.h   key_prot.h  pmap_prot.h  rpcb_clnt.h  rpcent.h   svc_auth_gss.h  svc_mt.h
auth.h       clnt_stat.h  netdb.h     pmap_rmt.h   rpcb_prot.h  rpc.h      svc_auth.h      svc_soc.h
auth_unix.h  des_crypt.h  nettype.h   raw.h        rpcb_prot.x  rpc_msg.h  svc_dg.h        types.h

我嘗試了以下操作但沒有效果(相同的錯誤訊息,所有可用性/存在訊息返回“否”)

  1. 建立一個符號鏈接,tirpc/rpc以防/usr/include它在錯誤的資料夾中查找
  2. 編輯configure檔案以確保包含 rpc 目錄,如此處所述類似問題從另一個使用 rpc 的程序
  3. 更改#includeMB-system 來源檔案中的命令,但顯然這不起作用,因為錯誤發生在設定步驟中

我不知道如何進一步解決這個問題,並且非常感謝每一個提示。

答案1

檢查 rpc/rpc.h 是否存在...否

/usr/include/rpc/{17 headers}所有主要的「Linux 作業系統」都有glibc / glibc-devel / libc6-dev 提供的舊 Oracle 等 rpc 標頭。拱門錯誤報告https://bugs.archlinux.org/task/62561……Arch、Manjaro 等 Arch 克隆中可能會丟失,因為 Arch 被宣佈為輕量級作業系統?

快速/安全的修復:從任何 glibc (-devel) 套件取得標頭,例如ftp://ftp.slackware.org.uk/slackware/slackware64-14.2/slackware64/l/glibc-2.23-x86_64-1.txz

tar xvf glibc-2.23-x86_64-1.txz
cd /usr/include/rpc/
# cp [path-to-rpc/-with-17-headers]/rpc/* ./

MB 系統建置先決條件# pacman -S openmotif graphicsmagick blas gdal netcdf proj cmake

( gmt-6.0.0 是手動建立的cmake -DCMAKE_INSTALL_PREFIX=/usr ../

git clone https://github.com/dwcaress/MB-System.git
cd MB-System/ && ./configure && make 
# make install
          // No errors

答案2

問題可能會有所幫助。它添加-ltirpcLDFLAGS-I/usr/include/tirpcCFLAGS.

相關內容