Прежде всего я нахожусь на OSX Mojave 10.14, я ранее обновил его с 10.13.Я купил его новым с 10.13.
Я пытаюсь следовать этому руководству:
https://scotch.io/tutorials/build-a-restful-json-api-with-rails-5-part-one
Я хочу убедиться, что у меня есть такая же настройка среды, используята же версия rails и ruby.
Когда я пытаюсь использовать rbenv, чтобы изменить мою версию ruby (в настоящее время 2.6.1) на 2.3.1, я использую следующую команду:
rbenv install 2.3.1
И я получаю следующую ошибку:
file.c:23:10: fatal error: 'CoreFoundation/CFString.h' file not found
Я попытался посмотреть в Интернете, где может быть CFString.h, и янашел эту полезную команду, чтобы вывести список каталогов, где ищет clang:
echo "#include <CoreFoundation/CFString.h>" | clang -v -x c -
Это вывод:
$ echo "#include <CoreFoundation/CFString.h>" | clang -v -x c -
clang version 8.0.0 (tags/RELEASE_800/final)
Target: x86_64-apple-darwin18.0.0
Thread model: posix
InstalledDir: /usr/local/opt/llvm/bin
"/usr/local/Cellar/llvm/8.0.0/bin/clang-8" -cc1 -triple x86_64-apple-macosx10.14.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name - -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu penryn -dwarf-column-info -debugger-tuning=lldb -ggnu-pubnames -target-linker-version 409.12 -v -resource-dir /usr/local/Cellar/llvm/8.0.0/lib/clang/8.0.0 -fdebug-compilation-dir /Users/nfgallimore/Code/todos-api -ferror-limit 19 -fmessage-length 121 -stack-protector 1 -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fobjc-runtime=macosx-10.14.0 -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -o /var/folders/p6/pttqjn_s20g97kv6jxzwdl2m0000gn/T/--65bd40.o -x c -
clang -cc1 version 8.0.0 based upon LLVM 8.0.0 default target x86_64-apple-darwin18.0.0
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/local/Cellar/llvm/8.0.0/lib/clang/8.0.0/include
/usr/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)
End of search list.
<stdin>:1:10: fatal error: 'CoreFoundation/CFString.h' file not found
#include <CoreFoundation/CFString.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
Также я не уверен, что этоиспользуя clang или gcc.Вот вывод gcc:
$ echo "#include <CoreFoundation/CFString.h>" | gcc -v -x c -
Apple LLVM version 10.0.0 (clang-1000.11.45.5)
Target: x86_64-apple-darwin18.0.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple x86_64-apple-macosx10.14.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name - -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fno-strict-return -masm-verbose -munwind-tables -target-cpu penryn -dwarf-column-info -debugger-tuning=lldb -target-linker-version 409.12 -v -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.0 -fdebug-compilation-dir /Users/nfgallimore/Code/todos-api -ferror-limit 19 -fmessage-length 121 -stack-protector 1 -fblocks -fencode-extended-block-signature -fobjc-runtime=macosx-10.14.0 -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -o /var/folders/p6/pttqjn_s20g97kv6jxzwdl2m0000gn/T/--9ee343.o -x c -
clang -cc1 version 10.0.0 (clang-1000.11.45.5) default target x86_64-apple-darwin18.0.0
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.0/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
/usr/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)
End of search list.
<stdin>:1:10: fatal error: 'CoreFoundation/CFString.h' file not found
#include <CoreFoundation/CFString.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
Я попытался переустановить инструменты командной строки xcode с помощью этой команды:
xcode-select --install
Я также попытался использовать rvm для установкистарая версия (2.3.1) ruby.Я следую инструкциям по установке rvm на osx, используя это руководство:
https://usabilityetc.com/articles/ruby-on-mac-os-x-with-rvm/
Я установил ключ pgp и выполнил команду curl для его установки:
\curl -sSL https://get.rvm.io | bash -s stable --ruby
но я получаю следующую ошибку:
emacs: standard input is not a tty
curl: (23) Failed writing body (0 != 2759)
Итак, в общем, я ищу ответы, которые помогут при установке ruby 2.3.1 с использованием rbenv или rvm.Учитывая, что rvm не будет установлен, а rbenv не сможет найти включаемые файлы.
Кажется, я могу использовать новую версию ruby для учебника, но я хочу завершить учебник и беспокоюсь, что, возможно, что-то будетне будет работать гладко, используя более новую версию ruby.