- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我已经在终端上使用 gcc 命令来编译 C 程序,但突然间,在更新到我的 Mac 操作系统(到 macOS 10.14 Mojave 和 XCode 10.0)后,我开始收到消息:
test.c:8:10: fatal error: stdio.h: No such file or directory
#include <stdio.h>
^~~~~~~~~
compilation terminated.
/usr/local/bin
中找到它那里确实有一个gcc。我尝试在我的其他 iMac 上运行相同的文件,它没有任何问题。
xcode-select --install
它已经安装了,因此它没有解决我现在遇到的问题。我猜路径乱了,因为它似乎找不到
gcc
在我开始从其他资源复制和粘贴一些命令来解决这个问题之后。
最佳答案
TL; 博士
确保您已下载最新的“命令行工具”包并从终端(命令行)运行它:
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
xcode-select --install
一直是正确的解决方案,但这次似乎没有帮助。您是否尝试过运行主 Xcode GUI 界面?它可能会为您安装一些额外的软件并进行清理。我在安装 Xcode 10.0 后这样做了,但一周或更长时间之前,在升级到 Mojave 之前很久。
/usr/local/bin
,您可能没有使用 Xcode 中的 GCC;通常安装在
/usr/bin
.
/usr/bin/gcc
和系统
/usr/bin/clang
正在为我工作(
Apple LLVM version 10.0.0 (clang-1000.11.45.2) Target: x86_64-apple-darwin18.0.0
两者都适用。)我的自制 GCC 8.2.0 有问题,在
/usr/include
中找不到标题,这与
/usr/local/bin/gcc
的问题相似也没有找到标题。
/usr/include
根本没有
/usr/bin/clang
能够编译OK。标题(
_stdio.h
,带前导下划线)在我的旧
/usr/include
中;它现在不见了(因此我对 GCC 8.2.0 有问题)。我跑了
xcode-select --install
它说“
xcode-select: note: install requested for command line developer tools
”,然后运行一个 GUI 安装程序,它向我展示了我同意的许可证,然后它下载并安装了命令行工具——或者它声称的那样。
/usr/include
.但是我可以用
/usr/bin/clang
编译和
/usr/bin/gcc
— 和
-v
选项表明他们正在使用
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
I've found a way. If we are using Xcode 10, you will notice that if you navigate to the
/usr
in the Finder, you will not see a folder called 'include' any more, which is why the terminal complains of the absence of the header files which is contained inside the 'include' folder. In the Xcode 10.0 Release Notes, it says there is a package:/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
and you should install that package to have the
/usr/include
folder installed. Then you should be good to go.
/usr/include
再次,我的 GCC 8.2.0 再次运行。
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
open
上面显示的命令修复了丢失的标题。将主 Xcode 升级到 10.2,然后重新安装命令行工具和 headers 包,可能仍然会有一些冒险。
/usr/include
完好无损。
/usr/include
,但
open
答案顶部的命令再次恢复了它。我在文件上的日期
open
命令是 2019-07-15。
/usr/include
.安装后立即(在运行应用程序之前),我尝试重新编译并被告知:
Agreeing to the Xcode/iOS license requires admin privileges, please run “sudo xcodebuild -license” and then retry this command.
sudo xcodebuild -license
)允许我运行编译器。从那时起,我运行该应用程序来安装它需要的额外组件;还是没问题。当我升级到 Catalina 本身时会发生什么还有待观察 - 但我的 macOS Mojave 10.14.6 机器目前都可以(2019-09-24)。
关于升级到 Mojave 后无法在 Mac 上编译 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52509602/
升级到 macOS Mojave 后,我尝试从终端运行 GIT,但它一直给我以下错误: xcrun: error: invalid active developer path (/Library/De
我有一个在 10.9 及更高版本上运行的 macOS 应用程序,它允许用户在其联系人(又名地址簿)中“查找”人员,例如:[ABAddressBook 共享AddressBook] 在 10.14 之前
我发现 macOS Mojave Beta 中的默认(也是唯一)动态壁纸位于/Library/Desktop Pictures/中。有问题的文件称为“Mojave (Dynamic).heic” 我想
我正在尝试通过画外音测试我的 MacOS Mojave 上某个页面的可访问性。我必须能够通过快捷键 Command + F5 打开和关闭语音。 但是快捷方式不起作用。 知道为什么吗? 最佳答案 我找到
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 2年前关闭。 Improve thi
我有一个脚本,我定期运行以使用 Applescript 打开/关闭灰度。它在 High Sierra 上运行良好,但当我在 Mojave 使用它时抛出异常。 tell application "Sys
我有一个非常基本的小命令行应用程序,可以在下次单击鼠标时获取鼠标坐标。 #import #import CGEventRef myCGEventCallback(CGEventTapProxy p
Building native extensions. This could take a while... ERROR: Error installing libxml-ruby: ERR
我刚刚做了Brew update mysql,然后关闭了我的mysql。 尝试重新开始,然后砰: ~ » mysql.server start
我知道这不太可能是正确的询问地点,但我不知道应该问哪里。 所以我有一台 2016 年的普通 macbook。我安装了 Android Studio 几个月,并且可以正常使用很长时间。现在升级到 Moj
最近我更新了 Mojave 并在访问 git 命令时收到以下错误消息: xcrun: error: invalid active developer path (/Library/Developer/
我的 mac 经常向我发送磁盘空间不足的警报。当我检查系统存储时,它显示系统占用了 170+gb。我不确定我的空间在哪里被使用? 我也尝试了一些更清洁的工具,但无法获得太多帮助。 请帮忙解决一下? 最
我做了这些步骤: 更新到 Mojave 已安装 Xcode 10 beta3 运行此命令:sudo xcode-select -switch /Applications/Xcode-beta.app/
我正在运行 MacOS 10.14.6 并希望将 XCode 安装到/Applications 文件夹中。 尝试使用 Appstore 下载它时,收到错误消息“无法安装 Xcode,因为需要 macO
我正在编写一个应用程序,允许用户设置 macOS Mojave 的强调色。 我的第一次尝试是使用 AppleScript。但我意识到 API 还不是最新的: 带下划线的 API 可以工作,但它只有 2
以下代码在 Mojave 中不再有效: if let url = URL(string: "https://apple.com"), let listService = NSSharingSe
我正在 macOs Mojave 上安装“THERMUS:ROOT 的热模型包”。其中一个步骤是(解压后)如下:“设置一个环境变量‘THERMUS’指向包含 THERMUS 代码的顶级目录”。我真的不
在 macOS Mojave 10.14.1 中启动 ./build/nodes/deployNodes 时,终端会打开但不会启动与 deployNodes 中定义的每个节点对应的选项卡> Gradl
我在App Store中以如下一行显示所有macOS应用程序: NSString *finalLink = @"http://appstore.com/mac/JiulongZhao" [[NSWor
我正在 macOs Mojave 上安装“THERMUS:ROOT 的热模型包”。其中一个步骤是(解压后)如下:“设置一个环境变量‘THERMUS’指向包含 THERMUS 代码的顶级目录”。我真的不
我是一名优秀的程序员,十分优秀!