从源代码编译 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"
运行命令 dmake
和 dmake install
来构建和安装模块。
将文件从 C:\nwrfcsdk_x64\lib
复制到 C:\Strawberry\perl\site\lib\auto\SAPNW\Connection
。