【问题标题】:Why can I build this package (aspectC) in Ubuntu, but not Cygwin?为什么我可以在 Ubuntu 中构建这个包(aspectC),而不是 Cygwin?
【发布时间】:2013-01-15 22:06:58
【问题描述】:

我正在尝试开始使用 this 库并按照该页面上的说明进行操作,Cygwin 返回 this,尽管该项目的页面声称支持 Cygwin。

Makefile 在新的 Ubuntu VM 中工作得很好,我已经运行了 Cygwin 的 setup.exe 以包含 Devel、Interpreters、Perl 等,我认为这可能修复了损坏的依赖项,但它不会在之后构建安装所有相关软件包。

以前有人遇到过这样的问题吗?你有什么建议吗?

更新:之前的输出是我尝试 0.8 的结果。我重新运行了 0.9RC Makefile,问题似乎是:

/usr/local/bin/ACC/src/.acc_dir/matchaa_ac.c:63:1: error: expected specifier-qualifier-list before ‘__ac__type__insert’
/usr/local/bin/ACC/src/.acc_dir/matchaa_ac.c:63:1: error: stray ‘@’ in program

我想不出为什么 Cygwin 对“@”字符感到窒息。 Google 没用,因为它不解析特殊字符。

【问题讨论】:

  • 您遇到什么问题或错误信息? “不会构建”不是很具体。
  • 我已经在我的帖子中链接到 make 脚本的输出,但我也会引用它 here

标签: c makefile cygwin


【解决方案1】:

第一个错误是:

/usr/local/bin/ACC/src/.acc_dir/matchinfo_ac.c:180:39: error: expected specifier-qualifier-list before ‘PointcutType’

我会查看matchinfo_ac.c 的第 180 行第 39 行字符,以了解您的两个构建环境之间的不同之处。由于错误是由tacc 输出的,也许您需要更高版本的tacc 来构建tacc?语法变化? v0.9 RC起(注意是开发版)

struct _IO_FILE_plus ; 

但一定要检查自己的副本。无论如何,这一行没有 39 个字符。

祝你好运。

【讨论】:

  • 对不起,我也试过 0.8,想知道我的问题是否是 0.9RC 特定的,但这是我放在上面的输出。 0.9RC 实际上给出了关于“错误:程序中的流浪‘@’’的消息。我不是 C 专家,但我看不出编译器会对“@”字符有什么问题。不幸的是,谷歌不支持符号,所以我找不到很多文献。
  • tacc 是和 ACC 绑定的,所以不会有正确的版本吧?
  • 查看有错误的行。我的matchaa_ac.c 副本在第 1466 行之前甚至都没有 @。也许存在文件编码问题?
猜你喜欢
  • 1970-01-01
  • 2023-01-07
  • 1970-01-01
  • 2014-01-05
  • 1970-01-01
  • 1970-01-01
  • 2018-11-13
  • 2010-10-10
  • 2021-12-15
相关资源
最近更新 更多