c++ - mno-cygwin 在构建 C++ 库时出现无法识别的命令行选项错误

标签 c++ c gcc java-native-interface cygwin

我是 C++ 的新手,正在实现一个使用 Java native 接口(interface)调用 C++ 库方法的 Java 应用程序。我正在使用 Cygwin64。

操作系统:Windows 8 64 位 JDK:1.7 64 位 海合会 4.8.2


但是当我尝试构建我的项目时出现此错误


"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf make[1]: Entering directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/LibraryTest'
cd ../DataProcessor && /usr/bin/make  -f Makefile CONF=Debug
make[2]: Entering directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/DataProcessor'
"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[3]: Entering directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/DataProcessor'
"/usr/bin/make"  -f nbproject/Makefile-Debug.mk dist/LocationDataProcessor.dll
make[4]: Entering directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/DataProcessor'
mkdir -p build/Debug/Cygwin_4.x-Windows
rm -f build/Debug/Cygwin_4.x-Windows/CppConnector.o.d


gcc -mno-cygwin -Wl,--add-stdcall-alias -shared -m32   -c -g  -MMD -MP -MF build/Debug/Cygwin_4.x-Windows/CppConnector.o.d -o build/Debug/Cygwin_4.x-Windows/CppConnector.o CppConnector.c
gcc: error: unrecognized command line option ‘-mno-cygwin’


nbproject/Makefile-Debug.mk:69: recipe for target 'build/Debug/Cygwin_4.x-Windows/CppConnector.o' failed
make[4]: *** [build/Debug/Cygwin_4.x-Windows/CppConnector.o] Error 1
make[4]: Leaving directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/DataProcessor'
nbproject/Makefile-Debug.mk:60: recipe for target '.build-conf' failed
make[3]: *** [.build-conf] Error 2
make[3]: Leaving directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/DataProcessor'
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
make[2]: *** [.build-impl] Error 2
make[2]: Leaving directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/DataProcessor'
nbproject/Makefile-Debug.mk:74: recipe for target '.build-subprojects' failed
make[1]: *** [.build-subprojects] Error 2
make[1]: Leaving directory '/cygdrive/c/Users/User/Documents/NetBeansProjects/LibraryTest'
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
make: *** [.build-impl] Error 2

我已经用这个 java c++ 集成东西堆积了 4 天。需要一些帮助来解决这个问题。 提前致谢

最佳答案

Cygwin 和 gcc 已经移除了对 -mno-cygwin 标志的支持。因此,您必须在删除标志后构建源代码。

另一件事是由于删除标志,您必须将 cygwin1.dll 与您的二进制文件一起使用。

如果您不想附加 cygwin1.dll,请下载 Mingw 编译器并通过它进行编译。

关于c++ - mno-cygwin 在构建 C++ 库时出现无法识别的命令行选项错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22075601/

相关文章:

c++ - 在着色器中同时在同一纹理单元中使用不同的纹理类型

c - 使用 C 从 HTML 文档中提取信息

c - GCC内联汇编中的 "=w"是什么意思?

c - 可执行文件在编译机上运行,​​而不是在第二台机器上运行

c++ - 对象创建异常

c++ - 使用 C++ 发布到服务器时,欧洲字符切换为奇怪的字符作为响应

c++ - 重做安装程序(Linux)

c - Ubuntu 10 中的实验性缓冲区溢出(汇编)

编译为 C99 时 CRTSCTS 未定义

gcc - 链接 ffmpeg 示例源代码时遇到问题