從原始碼編譯 Perl cpan 模組 sapnwrfc

http://strawberryperl.com 安裝當前的 Strawberry Perl 64 位軟體包。就我而言,它是 5.24.1.1。

https://launchpad.support.sap.com/#/softwarecenter 下載當前版本的 SAP NW RFC SDK x64 位

你可以通過以下跟蹤找到它: 支援包和補丁=>按類別=>其他元件=> SAP NW RFC SDK => SAP NW RFC SDK 7.20

在我的情況下,當前版本是 7.20 PL42 x64。

使用 sapcar -xvf NWRFC_42-20004568.SAR 解壓縮下載的檔案

我將資料夾重新命名為 C:\nwrfcsdk_x64

使用目錄 C:\ nwrfcsdk_x64 中的以下命令為 MinGW 編譯器/連結器建立 .def 和 .a 檔案:

gendef *.dll
dlltool --dllname icuin34.dll --def icuin34.def --output-lib icuin34.a
dlltool --dllname icudt34.dll --def icudt34.def --output-lib icudt34.a
dlltool --dllname icuuc34.dll --def icuuc34.def --output-lib icuuc34.a
dlltool --dllname libsapucum.dll --def libsapucum.def --output-lib libsapucum.a
dlltool --dllname libicudecnumber.dll --def libicudecnumber.def --output-lib libicudecnumber.a
dlltool --dllname sapnwrfc.dll --def sapnwrfc.def --output-lib sapnwrfc.a

在 dircectory C:\ nwrfcsdk_x64 \ lib 中,應存在以下檔案:

icudt34.a          
icudt34.def        
icudt34.dll        
icuin34.a          
icuin34.def        
icuin34.dll        
icuuc34.a          
icuuc34.def        
icuuc34.dll        
libicudecnumber.a  
libicudecnumber.def
libicudecnumber.dll
libsapucum.a       
libsapucum.def     
libsapucum.dll     
libsapucum.lib     
sapdecfICUlib.lib  
sapnwrfc.a         
sapnwrfc.def       
sapnwrfc.dll       
sapnwrfc.lib       

使用 cmd.exe 啟動命令提示符並啟動程式 cpan

啟動命令 get sapnwrfc 從 CPAN 下載 Perl 模組 sapnwrfc。

使用 exit 命令保留 cpan 環境。將目錄更改為 C:\Strawberry\cpan\build\sapnwrfc-0.37-0

使用以下命令構建 Makefile。根據你的設定調整資料夾名稱。

perl Makefile.PL --source=C:\nwrfcsdk_x64 --addlibs "C:\nwrfcsdk_x64\lib\sapnwrfc.a C:\nwrfcsdk_x64\lib\libsapucum.a"

執行命令 dmakedmake install 來構建和安裝模組。

將檔案從 C:\nwrfcsdk_x64\lib 複製到 C:\Strawberry\perl\site\lib\auto\SAPNW\Connection