#macos #visual-studio-code #f# #mono
#macos #visual-studio-code #f# #mono
Вопрос:
Терминал в моей Visual Studio продолжает говорить F# Interactive for F# 3.1 (Open Source Edition)
Как мне указать Visual Studio использовать FSI для F # 4?
PS: код Visual Studio и все расширения уже обновлены.
PPS: я использую mac
Ответ №1:
Терминал внутри VSC
использует вашу оболочку по умолчанию и, следовательно, получит тот же путь и, следовательно fsharpi
, будет таким же, как если бы вы запустили его через Terminal.app
или iTerm2.app
.
Если у вас установлена последняя версия Mono, она поместит сценарий fsharpi
оболочки в:
>which fsharpi
/usr/local/bin/fsharpi
Который, в свою очередь, использует mono для выполнения в fsi.exe
CIL-сборке из:
/Library/Frameworks/Mono.framework/Versions/4.6.0/lib/mono/4.5
Версия Mono 4.6.0 в настоящее время устанавливает F # Interactive для F # 4.1
Возьмите последнюю версию OS-X Mono здесь.
Выполнить:
cat `which fsharpi`
Мой возвращает:
#!/bin/sh
EXEC="exec "
if test x"$1" = x--debug; then
DEBUG=--debug
shift
fi
if test x"$1" = x--gdb; then
shift
EXEC="gdb --eval-command=run --args "
fi
if test x"$1" = x--valgrind; then
shift
EXEC="valgrind $VALGRIND_OPTIONS"
fi
# Beware this line must match the regular expression " (/.*)/fsi.exe" when fsi.exe is fsi.exe.
# That's because the FSharp MonoDevelop addin looks inside the text of this script to determine the installation
# location of the default FSharp install in order to find the FSharp compiler binaries (see
# fsharpbinding/MonoDevelop.FSharpBinding/Services/CompilerLocationUtils.fs). That's a pretty unfortunate
# way of finding those binaries. And really should be changed.
$EXEC /Library/Frameworks/Mono.framework/Versions/4.6.0/bin/mono $DEBUG $MONO_OPTIONS /Library/Frameworks/Mono.framework/Versions/4.6.0/lib/mono/4.5/fsi.exe --exename:$(basename "$0") "$@"