Lemon 解析器作为 Xcode 构建规则

2024-05-14

当在 Xcode 中使用柠檬解析器集成为'使用脚本的 Yacc 源文件',由柠檬生成的警告不会显示在 Xcode 警告部分中。


柠檬警告输出与 Xcode 期望的格式不兼容。 Lemon 输出的格式如下:

filename.y:NR: message

Note:Lemon 似乎还在其警告输出中将文件名限制为 20 个字符。

虽然 Xcode 期望:

path:NR: warning: message

这可以用 awk 来完成lemon $INPUT_FILE_BASE.y | awk -F ': ' -v base="${BASE}" '{ print base "/" $1 ": warning: " $2}'

这是我的完整脚本:

LEMON=$(printf %q "$BUILT_PRODUCTS_DIR/lemon")
LEMPAR=$(printf %q "$SRCROOT/../Vendor/lemon/lempar.c")
BASE=$(dirname "$INPUT_FILE_PATH.y")

cd $DERIVED_FILES_DIR
cp $INPUT_FILE_PATH $INPUT_FILE_BASE.y
cp $LEMPAR $DERIVED_FILES_DIR/lempar.c
$LEMON $INPUT_FILE_BASE.y | awk -F ': ' -v base="${BASE}" '{ print base "/" $1 ": warning: " $2}'

mv $INPUT_FILE_BASE.c $INPUT_FILE_BASE.m

Xcode 'Yacc source file using Script': Xcode Yacc source file using Script

Warnings are also shown inline in the gramma file now: Warning : This rule can not be reduced.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Lemon 解析器作为 Xcode 构建规则 的相关文章

  • 如何修复TabView中NavigationView中List下的灰色条?

    所以我遇到一个问题 在我的列表下方出现一个灰色条 当我单击一个单元格转到另一个视图时 会出现一个更大的灰色条 这是列表视图的代码 VStack NavigationView VStack List ForEach answersArray
  • Xcode 问题导航器中不显示警告

    我的项目构建时出现警告 但它没有显示在 问题导航器 中 我怎样才能收到此警告并解决它 我尝试单击窗口顶部的警告 但没有任何作用 我正在使用 Xcode 4 3 我遇到了同样的问题 我发现它只是因为下面的过滤器输入有问题 您可以通过在下面的过
  • 错误 itms-90451“CFBundleIdentifier 冲突错误”

    我上传了我的应用程序的一个版本 弹出此错误 并且我的应用程序的 Google 地图部分没有任何更改 我第一次上传时没有任何问题 只需从您的扩展中删除嵌入框架构建阶段即可 单击目标部分中的扩展 gt 构建阶段 gt 删除嵌入 Pod 框架 见
  • XCode 4 中硬编码的本地化文件路径 - 当项目移动到新文件夹时消失

    我们最近使用 Xcode 将一个项目本地化为 15 种语言 但我注意到当我将该项目带回家时 一些本地化文件的路径都被硬编码到我工作 Mac 的完整路径 我们只本地化了两个文件 InfoPlist strings Localizable st
  • 错误域 = NSCocoaErrorDomain 代码 = 3840 “字符 0 周围的值无效

    嗨 我是 swift 的新手 我遇到了问题 我用 post 方法向服务器发出了请求 我得到了良好的 Json 响应 之后我用 get 方法发出了另一个请求 但我收到了这个错误 Error responseSerializationFaile
  • 如何更改 FileMerge 的字体/设置/首选项?

    一段时间以来 我无法更改 FileMerge 的字体 然后它突然开始对它无法识别的文件 如打字稿源文件 使用类似 Helvetica 的字体 无衬线 可变宽度 通过将字体更改为 Helvetica 可以暂时更改为 monaco 是的 这很奇
  • ShareKit 集成期间出现奇怪的编译器错误

    我尝试将 ShareKit 集成到我的项目中 但遇到了问题 当我将 ShareKit 类包含在我的类项目文件夹中时 编译器会出现如下错误 解析问题 未知类型名称 NSUInteger 或 解析问题 未知类型名称 NSString 在 MyP
  • 已删除的测试仍保留在 Xcode 测试导航器中

    我最近从我的项目中删除了一些旧的测试类并删除了这些文件 正如预期的那样 文件被移至垃圾箱并在 git 中显示为已删除 不幸的是 它们定义的测试类和测试用例继续出现在测试导航器中 我尝试过常见的方法 例如清理和重建 以及退出并重新打开 Xco
  • 如何了解xcode调试中的CPU和内存消耗

    在 Xcode 5 中 有一个新的调试面板 分别以 和 MB 为单位显示 CPU 和内存消耗 我们如何利用这个 我应该尝试保持在以下 CPU 百分比阈值吗 我有时会看到我的应用程序达到 100 或以上 这是否意味着我在应用程序中进行了太多处
  • Xamarin.iOS 目标 iOS 6 SDK

    我们已升级到 XCode 5 和 Xamarin iOS 7 x 但有一个应用程序尚未准备好支持 iOS 7 有没有办法以 iOS 6 0 SDK 为目标 并编译应用程序 使其具有旧的 iOS 6 键盘等 我们尝试更改 iOS Build
  • 使用 iOS 分布式应用程序时 Google Cloud Messaging 显示“notRegistered”

    我在 iOS 应用程序上实现了 GCM 服务 我使用 PHP 在服务器上发送 GCM 当应用程序由开发配置文件签名时 它可以完美运行 也就是说 当应用程序使用 GCM 配置注册自身时 它始终返回一个正常运行的设备令牌 我可以使用令牌向设备发
  • Xcode 推送通知:用于生产模式的 APNS 服务器

    我正在实现我的第一个带有推送通知的应用程序 我已经完成了以下所有调试雷 万德利奇教程 http www raywenderlich com 3443 apple push notification services tutorial par
  • iPad 照片选择器崩溃

    我正在使用以下函数根据 UIActionSheet 的结果激活设备相机或图像选择器 如果 fromCamera YES 那么它适用于 iPhone 和 iPad 如果 fromCamera NO 那么它可以在 iPhone 上运行并出现图像
  • 检查定位服务是否开启

    我一直在对 CoreLocation 进行一些研究 最近 我遇到了一个在其他地方 但在 Objective C 和 iOS 8 中 已经讨论过的问题 我觉得问这个问题有点傻 但是如何在 iOS 9 上使用 swift 检查是否启用了位置服务
  • 本地化现有的 iOS 应用程序

    我不敢相信以前没有人问过这个问题 要么是我的编码实践太无组织性 要么是我没有使用正确的关键字 How can I localize an existing iOS app that does not use NSLocalizedStrin
  • XCode 无法将 iPhone 应用程序部署到 iPhone 3GS

    因此 我构建了我的 iPhone 应用程序 它在模拟器中运行良好 因此我想将其部署到我的 iPhone 上进行最后一轮测试 然后再使用我的分发配置文件进行公开 Beta 测试 我已经这样做过很多次了 从来没有出现过问题 然而 自从上次测试运
  • 在 XCode 中链接静态 ObjC 库的过程

    我正在尝试链接到静态库 但不断收到链接器错误 我发现了一些发布示例的网站 但我无法看到我做错了什么 首先 我创建一个链接到我的库的项目 添加 gt 现有文件找到我的 xcodeproj 文件选择 将项目复制到目标组文件夹 选择我的宿主项目作
  • 升级到 Xcode 4.3.1 后,自动设备配置选项消失了?

    自从升级到 Xcode 4 3 1 以来 这是我第一次发布版本 在查看我的配置文件是否是最新的时 我还注意到不再显示自动更新设备配置 即 它应该出现在该屏幕截图中的位置对我来说没有出现 如何将新设备添加到团队配置文件中 https stac
  • 如何将 ios7 通用应用程序升级到基于 Xcode 6 的通用故事板应用程序?

    我目前有一个基于 xcode 5 ios 7 的通用应用程序 因此有两个故事板 我正在考虑将其更新到 ios 8 有没有办法 最佳方法将两个故事板迁移到通用的单个故事板 我在 xcode 6 中看不到转换选项 None
  • 什么是 WKWebView 中的 WKErrorDomain 错误 4

    fatal error LPWebView encounters an error Error Domain WKErrorDomain Code 4 A JavaScript exception occurred UserInfo 0x7

随机推荐