当前位置: 技术问答>linux和unix
64位机器上使用32位动态库的
来源: 互联网 发布时间:2016-04-21
本文导语: LINUX环境下:现在有一个GCC编译完成的32位动态库(*.so文件),想要在64位的机器中用JAVA使用此动态库,用到JNI,需要再生成一个*.so文件,在编译时如果不使用-m32参数,则会报文件格式错误,使用-m32后生成的*.so是32...
LINUX环境下:现在有一个GCC编译完成的32位动态库(*.so文件),想要在64位的机器中用JAVA使用此动态库,用到JNI,需要再生成一个*.so文件,在编译时如果不使用-m32参数,则会报文件格式错误,使用-m32后生成的*.so是32位的了,但是在java中调用此库时会报错:打不开动态库(可能的原因:字宽度不匹配),也就是在64位的虚拟机是不能调用32位的动态库的,如何解决?
|
64位调用32位库,似乎不可能完成,要么全64位或全32位。