运行so文件时,出现error while loading shared libraries: libjvm.so: cannot open shared object file...
2012-10-23 16:15
651 查看
出现:error while loading shared libraries: libjvm.so: cannot open shared object file: No such file or directoryI
don't get the errors you report, but there are some things that need
to be fixed:
- main() must return int, not void.
- #include <windows.h> isn't necessary at all, remove it
(anyway I suspect you don't have such a file on linux).
- normally you should include the system header files first, followed
by jni.h and finally your own header files.
- the pragma is unknown to g++
After making the above changes, the code compiles fine using the
following commands:
(compile: invoke.cpp -> invoke.o)
gcc -Wall -D_REENTRANT -I $JAVA_HOME/include -I $JAVA_HOME/include/linux -c invoke.cpp
(link: invoke.o -> invoke)
gcc -L $JAVA_HOME/jre/lib/i386/client invoke.o -lstdc++ -ljvm -lpthread -o invoke
(note that each of these two commands is exactly one line, even though
my newsreader or yours may have broken them)
To run the program you need to have the following directories in your
LD_LIBRARY_PATH:
$JAVA_HOME/jre/lib/i386/client
$JAVA_HOME/jre/lib/i386
don't get the errors you report, but there are some things that need
to be fixed:
- main() must return int, not void.
- #include <windows.h> isn't necessary at all, remove it
(anyway I suspect you don't have such a file on linux).
- normally you should include the system header files first, followed
by jni.h and finally your own header files.
- the pragma is unknown to g++
After making the above changes, the code compiles fine using the
following commands:
(compile: invoke.cpp -> invoke.o)
gcc -Wall -D_REENTRANT -I $JAVA_HOME/include -I $JAVA_HOME/include/linux -c invoke.cpp
(link: invoke.o -> invoke)
gcc -L $JAVA_HOME/jre/lib/i386/client invoke.o -lstdc++ -ljvm -lpthread -o invoke
(note that each of these two commands is exactly one line, even though
my newsreader or yours may have broken them)
To run the program you need to have the following directories in your
LD_LIBRARY_PATH:
$JAVA_HOME/jre/lib/i386/client
$JAVA_HOME/jre/lib/i386
相关文章推荐
- Error: while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
- error while loading shared libraries: libcublas.so.7.5: cannot open shared object file
- error while loading shared libraries: libperl.so: cannot open shared object file: No such file or di
- 错误解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
- ./nginx: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No
- error while loading shared libraries: lib*.so: cannot open shared object file: No such file or direc
- error while loading shared libraries: libXXX.so.x: cannot open shared object file: No such file
- sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
- ./ProjectC: error while loading shared libraries: libProjectC.so: cannot open shared object file: No such file or directory
- error while loading shared libraries: libTradeInterfaceSDK.so: cannot open shared object file: No su
- error while loading shared libraries: libcudart.so.8.0: cannot open shared object file: No such file
- 解决linux运行某程序时提示error while loading shared libraries: abc.so cannot open shared object file
- 解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
- error while loading shared libraries: libmysqlclient.so.16/18: cannot open shared object file
- error while loading shared libraries: libcudart.so.7.5: cannot open shared object file: No such file
- error while loading shared libraries: libXXX.so.x: cannot open shared object file: No such file or d
- 错误解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
- sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No suc
- 错误解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
- caffe出现error while loading shared libraries: libopencv_core.so.3.1: cannot open shared object file: