我对MacOS Mojave 10.14.5和Xcode编译器有问题。准确地说,我正在尝试通过Github在R中安装一个软件包,并且编译器正在为缺少的stdlib.h而抱怨。这是错误:
能否请人向我解释如何解决此问题?
clang -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -I/usr/local/include -fPIC -Wall -g -O2 -c bspline.c -o bspline.o
clang: warning: no such sysroot directory: '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk' [-Wmissing-sysroot]
In file included from bspline.c:3:
In file included from ./pomp_internal.h:6:
/Library/Frameworks/R.framework/Resources/include/R.h:55:11: fatal error: 'stdlib.h' file not found
# include <stdlib.h> /* Not used by R itself, but widely assumed in packages */
^~~~~~~~~~
1 error generated.
make: *** [bspline.o] Error 1
ERROR: compilation failed for package ‘pomp’
* removing ‘/Users/Atorneri/Library/R/3.6/library/pomp’
* restoring previous ‘/Users/Atorneri/Library/R/3.6/library/pomp’
Error: Failed to install 'pomp' from GitHub:
(converted from warning) installation of package ‘/var/folders/w7/v79h1vtd38579k18skjw2w280000gn/T//RtmpDSox3s/file3547ba46d4e/pomp_2.2.0.0.tar.gz’ had non-zero exit status
答案 0 :(得分:1)
我通过创建符号链接为同事解决了此问题。
这是我的文件系统:
pi@piPro18 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
> ls -la
total 0
drwxr-xr-x 5 root wheel 160 21 Sep 14:05 .
drwxr-xr-x 6 root wheel 192 11 Sep 12:47 ..
drwxr-xr-x 4 root wheel 128 30 Aug 07:47 DriverKit19.0.sdk
drwxr-xr-x 8 root wheel 256 30 Aug 07:47 MacOSX.sdk
lrwxr-xr-x 1 root wheel 10 21 Sep 14:02 MacOSX10.14.sdk -> MacOSX.sdk
他缺少该符号链接。因此我们创建了它:
sudo ln -s MacOSX.sdk MacOSX10.14.sdk
来自https://github.com/mapnik/python-mapnik/issues/167
最近(?),Apple决定停止使用版本命名其SDK,而是将其命名为MacOSX.sdk并包括一个别名,该别名的版本名称出于兼容性考虑
我剩下的一个谜是为什么我有符号链接,而我的同事却没有。如果有人可以解释这一点,请发表评论。
答案 1 :(得分:1)
我遇到了同样的问题,我正在做:
sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
答案 2 :(得分:0)
也许找不到/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk。您可以尝试将xcode切换到xcode应用程序。
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
答案 3 :(得分:0)
在xcode-select --install
航站楼跑步为我解决了这个问题。
答案 4 :(得分:0)
我遵循了所有提示来更新R COMPILER TOOLS FOR RCPP ON MACOS。 使用MacOS X Catalina 10.15和R版本3.6.1(2019-07-05)-平台上的“脚趾动作”:x86_64-apple-darwin15.6.0(64位)。
不是我自己的想法/知识,而是https://superuser.com/a/1490988/918146的礼貌
答案 5 :(得分:0)
我在iOS项目中也遇到了这个问题。该项目是针对iOS 13.5构建的(尽管我将目标设置为13.0)。突然,所有内容在后台更新为13.6,并且编译器再也找不到对13.5 SDK的引用。我检查了SDK应该存在的文件夹(基于错误消息),然后发现
drwxrwxr-x 7 root wheel [...] iPhoneSimulator.sdk
lrwxr-xr-x 1 root wheel [...] iPhoneSimulator13.6.sdk -> iPhoneSimulator.sdk
但没有13.5。因此,在Thanh Vu之后,我创建了链接
sudo ln -s iPhoneSimulator.sdk iPhoneSimulator13.5.sdk
那解决了问题。现在所有模拟器都以13.6运行。