【问题标题】:how to remedy mno cygwin error?如何纠正 mno cygwin 错误?
【发布时间】:2017-05-15 06:27:33
【问题描述】:

我正在使用 GCC 和 Make 在 Windows 中编译一个库。 当我运行make 时,出现以下错误:

unrecognized command line option '-mno-cygwin'

我在 SO 上看到了this post,但它看起来不一定是同一个问题,而且我不明白如何将我的系统降级到支持我需要的标志的 GCC(或 Make)版本用于编译。

有人可以尝试为我指出正确的方向,或者如果您遇到此问题,请提供解决方案?

我正在运行 Windows 8.1 pro、GCC 5.4.0、make 4.2.1。 如果有必要帮助我,我可以发布更多信息。

【问题讨论】:

  • 您链接到的帖子建议删除标志,您尝试过吗?
  • 我没试过,谢谢。如果这能解决我的问题,我会回复。

标签: gcc windows-8 cygwin gnu-make


【解决方案1】:

当前的 cygwin gcc 只为 cygwin 本身编译。

-mno-cygwin 是 gcc 3.x 时代的一个过时标志,它允许 cygwin 编译器编译 mingw(不是 cygwin)程序。

这个开关很久以前就被移除了,真正的交叉编译器

mingw64-x86_64-gcc-core
mingw64-i686-gcc-core
cygwin-mingw

已提供

最新更新:
https://sourceware.org/ml/cygwin-announce/2016-11/msg00020.html

【讨论】:

  • 谢谢。我使用的编译器是i686-w64-mingw32-gcc
  • 我在使用 Makefile 按名称调用较新的核心编译器时遇到问题。您能否将我链接到有关如何在 Makefile 中执行此操作的介绍?
  • 应该足以定义CC=i686-w64-mingw32-gcc
  • 要明确:在全 cygwin 环境中简单地删除该命令行选项应该没问题?如果您在 cygwin 中为 mingw 编译 ,这只是一个问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-25
  • 2010-10-18
  • 1970-01-01
  • 2014-06-03
  • 2013-04-23
相关资源
最近更新 更多