我有一个具有 C++ 和 perl 模块的应用程序。我有一个自定义的 xs 模块 crypt.xs(不是 perl 提供的模块) 以前我们的 perl 模块是用 5.16.0 perl 版本构建的。
我有另一个 C# 应用程序,它通过 System.Diagnostics.Process 执行一些 perl 命令。
在我将 perl 版本升级到 5.26.2 之前,所有这些都运行良好
升级后,相同的 System.Diagnostics.Process 出现标准错误
"crypt.c: loadable library and perl binaries are mismatched (got handshake key 0000000011800080, needed 0000000011C00080)"
我用谷歌搜索并发现许多线程都解决了同样的问题,但问题出在标准 perl 模块上,使用 cpan 或 pacman 重建可以解决问题。
但这里它是一个自定义的用户定义的 xs 模块。
此外,我使用 cmake 来查找 perl 库,并且我已经更新了它的版本。所以不知道为什么仍然会出现这个错误。
我将如何进行调试?
任何帮助表示赞赏