【问题标题】:Compiler failure when compiling SciPy with MinGW+GCC使用 MinGW+GCC 编译 SciPy 时编译器失败
【发布时间】:2015-02-13 19:45:52
【问题描述】:

我正在运行一些 python 代码,其中一些代码需要 gcc 编译(不要问我,我不知道)。我收到 gcc 无法识别的错误。我安装了 Mingw 和 gcc 编译器,所以这是排序的。但是现在汇编器正在创建一个非常大的文件名并出错。请参阅下面的错误:

汇编程序消息: 致命错误:无法创建C:\用户\ kd1234 \应用程序数据\本地\ TEMP \ SciPy的-as07487-7op0cx \ python27_intermediate \ compiler_6cb9c52cab22cd58c3b2a33f029b68476828f4189dc8dd305efd20ec06666d43 \发布\用户\ as07487 \应用程序数据\本地\ TEMP \ kd1234 \ python27_compiled \ sc_ed5391b748bc47781f90305835197df10c5f33c0bbba9a3f5660ab3c277c2b50657.o:没有这样的文件或目录

我看了看,看起来编译器生成的这个文件名对于 Windows 来说太大了,因此无法创建它并出现错误。有没有人知道如何解决这个问题!

干杯

【问题讨论】:

  • 您使用的是本机代码吗?看起来它缺少一个目标文件。
  • 这是汇编消息,我认为这是与编译器创建的非常大的文件名有关的消息,因此无法写入
  • 但它说没有这样的文件,这意味着该文件没有被制作。除非 gcc 不是写得不好的编译器,否则它不应该关心字符串大小
  • 在错误的第一行看到它说“无法创建”。我导航到该目录进行检查。确实,您无法创建那个大文件名和路径。我创建了一个文本文件来测试,我无法用该名称命名文本文件,因为名称变得太大,这可能是 Windows 的限制。 Gcc 没有考虑到这一点,我认为这就是问题所在!您可以通过创建那个大目录结构并命名这样的文件来测试它,Windows 不会让您这样做。有什么办法可以解决这个问题

标签: python gcc assembly compiler-errors mingw32


【解决方案1】:

该路径长度为 290 个字符,确实超过了大多数 Windows API 规定的 260 个字符的限制。

部分路径膨胀似乎是由于 %TEMP%;尝试在运行脚本之前将 %TEMP% 设置为 C:\,看看是否可以正常工作。

【讨论】:

  • 太棒了!你是明星 nneonne,解决了这个问题!不知道为什么人们总是不喜欢我的帖子。这很容易理解,而且你很快就解决了 :) 我会为你竖起大拇指,但我无法达到 15 的声誉,因为人们一直不喜欢大声笑。有一天我会达到 15 个赞!
  • 很高兴我能帮上忙。如果这回答了您的问题,请勾选绿色复选标记接受。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-16
  • 1970-01-01
  • 2014-11-17
  • 1970-01-01
  • 2017-08-28
  • 1970-01-01
  • 2015-04-27
相关资源
最近更新 更多