如何为F#编译器(Fsc.exe)创建快捷方式?

时间:2013-02-28 23:49:34

标签: windows f#

我有一个愚蠢的问题要问。我刚开始学习F#,我正在尝试编译一些基础示例(例如HelloWorld.fs)。

我创建了一个简单的F#文件,其路径为:C:\FSharp\HelloWorld.fs

为了编译它,我使用了F#编译器的完整路径,如下所示:

C:\FSharp>"C:\Program Files\Microsoft F#\v4.0\fsc.exe" HelloWorld.fs

效果很好。

但是,我不想继续编写编译器的完整路径:C:\Program Files\Microsoft F#\v4.0\fsc.exe。我尝试将其添加到Windows路径,但我不断收到错误fsc is not recognized as internal or external command

如何为F#编译器创建一个快捷方式,这样我每次需要编译程序时都不必使用完整路径?

4 个答案:

答案 0 :(得分:3)

您无需为此创建快捷方式,只需将包含fsc.exe的文件夹添加到PATH变量即可。

当您打开命令提示符时,请运行:

set PATH=%PATH%;"C:\Program Files\Microsoft F#\v4.0\"

或者,如果您使用的是64位版本的Windows:

set PATH=%PATH%;"C:\Program Files (x86)\Microsoft F#\v4.0\"

可以在以下位置找到最新版本的fsc.exe:

  • “C:\ Program Files(x86)\ Microsoft SDKs \ F#\ 3.1 \ Framework \ v4.0”//截至2014年8月

  • “C:\ Program Files(x86)\ Microsoft SDKs \ F#\ 3.0 \ Framework \ v4.0”// 2013

答案 1 :(得分:1)

我可以确认将目录添加到PATH变量应该可以解决问题(在我的机器上运行!)请注意,您可能需要重新启动任何打开的命令行(或者,只是为了确保系统)如果更改了系统属性中的PATH变量,则会将更改考虑在内。

您还可以使用以下内容创建bat文件:

echo off
"C:\Program Files (x86)\Microsoft F#\v4.0\fsc.exe" %*

然后确保bat文件位于PATH中的某个位置。但bat文件可以有不同的名称(例如fsharpc.bat),以防标准名称fsc与您系统上的其他内容之间存在名称冲突......

答案 2 :(得分:1)

我尝试将它设置到我的路径,但不幸的是它没有用。尝试注销/重新启动等。我认为这是因为我的工作计算机上存在安全措施。

对于有类似问题的其他人,我发现设置别名不仅有效,而且比其他方法更优选。

set-alias fsi "C:\Program Files (x86)\Microsoft SDKs\F#\3.1\Framework\v4.0\fsi.exe"
set-alias fsc "C:\Program Files (x86)\Microsoft SDKs\F#\3.1\Framework\v4.0\fsc.exe"

现在这些命令没有恼人的.exe文件扩展名。

有关获取设置的文章是关于为PowerShell创建持久别名的文章。 http://www.powershellpro.com/powershell-tutorial-introduction/tutorial-powershell-aliases/

答案 3 :(得分:1)

对于那些在2019年到达这里并已将F#作为Visual Studio 2017组件的人。F#编译器的位置如下:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsc.exe
  

请注意版本类型(在这种情况下为Community),并相应地进行调整。

相关问题