-
Notifications
You must be signed in to change notification settings - Fork 8
Description
Hello. I use openjdk 1.11
I set MakeFile
wraper.so:wraper.cpp
g++ -shared -o wraper.so -L/usr/lib/jvm/java-1.11.0-openjdk-amd64/lib/amd64/server -I/usr/lib/jvm/java-11-openjdk-amd64/include -I/usr/lib/jvm/java-11-openjdk-amd64/include/linux/ ./wraper.cpp -fPIC -ljvm
add var to .bashrc
export LD_LIBRARY_PATH=/usr/lib/jvm/java-1.11.0-openjdk-amd64/lib/server
And get error
g++ -shared -o wraper.so -L/usr/lib/jvm/java-1.11.0-openjdk-amd64/lib/amd64/server -I/usr/lib/jvm/java-11-openjdk-amd64/include -I/usr/lib/jvm/java-11-openjdk-amd64/include/linux/ ./wraper.cpp -fPIC -ljvm
./wraper.cpp: In function ‘int Invokejava(const char*)’:
./wraper.cpp:13:34: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
options[0].optionString = "-Djava.class.path=."; // where to find java .class
^~~~~~~~~~~~~~~~~~~~~
/usr/bin/ld: cannot find -ljvm
collect2: error: ld returned 1 exit status
Makefile:2: recipe for target 'wraper.so' failed
make: *** [wraper.so] Error 1
Why?