如何使用Linux从Netbeans创建.dll?

时间:2015-10-22 12:16:16

标签: linux netbeans dll java-native-interface cross-compiling

我正在开发一台Linux机器(debian)64位,并创建了一个涉及JNI的简单项目。该程序在Linux上运行良好,具有创建的Java项目和编译的.so文件。现在的目标是将项目的C ++部分编译为.dll而不是.so,以使其在Windows机器上运行。

我阅读了一些论坛和一些像Article这样的文章,但所有这些文章都是关于从控制台进行编译而且还没有涉及必要的JNI包含。

我还从给定的文章中下载了交叉编译器,并试图让它在Netbeans中运行。因此,我在Netbeans中设置了另一个C/C++ Tool Collection,并告诉它使用x86_64-w64-mingw32-gcc编译器进行C和C ++。但是Netbeans在编译文件时给了我一些错误,告诉我找不到x86_64-w64-mingw32-gcc编译器,我觉得这很随机,因为我是从文件选择器中选择的。你有没有做过这样的事情,从Linux上运行的Netbeans构建.ddl?如果是的话,你是如何让它发挥作用的?

x86_64-w64-mingw32-gcc: not found
bproject/Makefile-Debug.mk:66: recipe for target 'build/Debug/GNU_1-Linux-x86/WrapperCpp.o' failed
make[2]: *** [build/Debug/GNU_1-Linux-x86/WrapperCpp.o] Error 127
make[2]: Leaving directory
nbproject/Makefile-Debug.mk:59: recipe for target '.build-conf' failed
make[1]: *** [.build-conf] Error 2
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
make: *** [.build-impl] Error 2

@Edit:我现在更进一步:我安装了正确的mingw32工具:sudo apt-get install mingw32。程序现在使用i586-mingw32msvc-g++编译器进行编译而没有错误,但它仍然导致.so而不是.dll。我想这与make command有关,但我还没有找到任何相关内容。

0 个答案:

没有答案