我正在尝试使用 JNI 调用现有的 COBOL 应用程序。COBOL 应用结构如下。
c-wrapper(main)-->COBOLProgram -> several dyn(.so) and static called modules
现有的 COBOL 应用程序涉及多个静态调用子程序 (COBOL) 和许多动态 (COBOL) 子程序。
应用程序的 Jni 调用正常,但无法定位和调用 COBOL 动态子模块。
修改后的Application结构(针对jni)如下:
java class --> libjni.so --> appl.so
我在 CALL 之前验证了 COB_LIBRARY_PATH 和 LD_LIBRARY_PATH 环境变量,这些似乎没问题。
在案例动态模块中收到以下错误消息。
libcob: ....<module>.so: undefined symbol: cob_save_call_params
我在 linux 上使用 64 位,1.1.0。gcc 用于使用 cobc 命令的 c 输出创建二进制文件