我遵循了本教程 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但是我得到了 “分段错误(核心转储)”
有什么想法吗?
答案 0 :(得分:1)
谢谢你们,我想出了问题所在。 我跑了这个命令 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版本导致了这个问题。出于某种原因,它不适用于上述命令。