Я следовал этому уроку
http://www.ibm.com/developerworks/java/tutorials/j-jni/section3.html
и я скомпилировал программу cpp, используя
g ++ -o libSample2 -fPIC -shared -I / usr / lib / jvm / java-1.7.0-openjdk-amd64 / include -I / usr / lib / jvm / java-1.7.0-openjdk-amd64 / include / linux / Sample2.cpp
Я пытался запустить ./libSample2, но я получил
«Ошибка сегментации (ядро сброшено)»
Любая идея?
Спасибо, ребята, я разобрался с проблемой.
Я запускал эту команду
g ++ -I / usr / lib / jvm / java-7-openjdk-amd64 / include -I / usr / lib / jvm / java-7-openjdk-amd64 / include / linux / -L / usr / lib / jvm / java -7-openjdk-amd64 / jre / lib / amd64 / server -l jvm Sample2.cpp
и это не сработало. Затем я запустил его как показано ниже
g ++ -I / usr / lib / jvm / java-7-openjdk-amd64 / include -I / usr / lib / jvm / java-7-openjdk-amd64 / include / linux / -L / usr / lib / jvm / java -7-openjdk-amd64 / jre / lib / amd64 / server Sample2.cpp -l jvm -Wl, -rpath, / usr / lib / jvm / java-7-openjdk-amd64 / jre / lib / amd64 / server -o sample2
и, хотите верьте, хотите нет, но именно версия Ubuntu вызвала проблему. По какой-то причине это не будет работать для вышеуказанной команды.
Других решений пока нет …