dlopen 在 Rhel 7.2 上失败,64 位为 libjvm.so
dlopen failing on Rhel 7.2, 64 bit for libjvm.so
我在 64 位 Java 进程中调用 RHEL 64 上的 dlopen ("libjvm.so", RTLD_NOLOAD)
。 并且失败并显示错误:
libjvm.so: invalid mode for dlopen(): Invalid argument
我做了lsof -p <pid of java process>
,它 libjvm.so 显示为加载的模块。 libjvm.so 从路径 jre1.8.0_121/lib/amd64/server/libjvm.so
加载。无法找到有关该错误的更多信息。使用 32 位版本的 java 时,同样的事情可以正常工作。从目录中加载 libjvm.so 的位置lib/i386/client
。感谢有关在哪里查找原因或此错误真正含义的任何指示。谢谢。
invalid mode for dlopen()
这是正确的错误:您以无效模式调用了dlopen
。
从 dlopen 手册页
One of the following two values must be included in flags:
RTLD_LAZY ...
RTLD_NOW ...
相关文章:
- 将浮动的heightmap数组导出为16位原始值
- 将尾部调用void(i32,..)位转换为llvm::函数以获取FnAttribute
- 为什么C++逐位AND运算符在不同大小的操作数中表现为这样
- 将按位if条件转换为普通if条件
- 一位朋友将模板函数缩写为clang和gcc
- 宽度为奇数的16位纹理为片状
- 为什么将双精度转换为 int 似乎在第 16 位数字之后将其四舍五入?
- C++ 函数,用于检查每个位是否为 0 或 1
- 如何为字符串生成唯一但一致的 N 位哈希(小于 64 位)?
- 如何通过UDP接收QByteArray并将其解析为位字段结构?
- CreateDIBSection为同一图像返回不一致的位图位值
- 位设置为浮点数或双精度值 c++
- 在 C++ 中将整数数组转换为位集表示形式的最佳方法?
- 浮点数为 32 位和 64 位二进制表示形式
- 如何为位集找到/实现一个好的哈希函数
- 如何以滑动窗口方式从 std::bitset 读取位并将它们转换为 int?
- C++:使用没有位移位的指针将无符号字符转换为无符号 int
- 整数数据如何以位为单位存储在内存中?不是右对齐吗?
- dlopen 在 Rhel 7.2 上失败,64 位为 libjvm.so
- C++-获取以整数位为单位的大小