3

Resolved

Version 2.0.0.0 breaks fslex/fsyacc build in VS2010

description

Hi,
 
I have a F# project with a fslex and fsyacc file. With Version 1.9.9.9 it builds fine.
The PowerPack bin directory is not listed in the PATH.
 
Upgrading to 2.0.0.0 the fslex and fsyacc binaries are searched in the wrong place and not found.
Even changing the PATH variable to contain the PowerPack bin directory does not solve this problem.
 
The resulting error code is:
 
C:\Program Files\MSBuild\FSharp\1.0\FSharp.PowerPack.Targets(32,3): Fehler MSB6004: Der Speicherort "C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\fslex.exe" der angegebenen ausführbaren Datei der Aufgabe ist ungültig.
 
After downgrading to 1.9.9.9 the build works flawlessly again.
 
Thanks for the support,
Vince

comments

dmilom wrote May 25, 2010 at 3:57 PM

Hi Vince,
it is indeed a bug in 2.0.0.0 release (I forgot to update a version number in FSharp.PowerPack\CompilerLocationUtil.fs).
As a workaround, you can add a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.NETFramework\AssemblyFolders\FSharp.PowerPack-1.9.9.9 key with a default value pointing to PowerPack 2.0.0.0 installation (C:\Program Files (x86)\FSharpPowerPack-2.0.0.0\bin).

Sorry for the inconvenience,
Hope this helps,
Dmitry

jvangael wrote May 25, 2010 at 7:16 PM

I can't install 1.9.9.9 next to 2.0.0.0. Is there a fix if you just have 2.0.0.0?

dmilom wrote May 26, 2010 at 1:43 AM

Just install 2.0.0.0 and modify the registry

jvangael wrote May 26, 2010 at 9:16 PM

I reinstalled 2.0.0.0 and modified the registry but still get the error:

------ Rebuild All started: Project: Naga, Configuration: Debug x86 ------
    -o NagaLexer.fs --unicode  NagaLexer.fsl
C:\Program Files\MSBuild\FSharp\1.0\FSharp.PowerPack.Targets(32,3): error MSB6004: The specified task executable location "C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\fslex.exe" is invalid.
Done building project "Naga.fsproj" -- FAILED.

RomanKuzmin wrote May 27, 2010 at 6:06 PM

I have written a PowerShell script that does the patch:

Run this after installation of F# PowerPack 2.0.0.0

$path = 'HKLM:\SOFTWARE\Microsoft.NETFramework\AssemblyFolders\FSharp.PowerPack-1.9.9.9'
$null = New-Item $path -Force
$bin = (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft.NETFramework\AssemblyFolders\FSharp.PowerPack-2.0.0.0').'(default)'
Set-ItemProperty $path '(default)' $bin

dmilom wrote May 30, 2010 at 9:02 PM

Folks,
I have updated 2.0.0.0 build with this a fix to this.

Thanks,
Dmitry

jameskerry110 wrote Apr 9, 2011 at 10:29 AM

If the correct answer is that I need to move a DLL from the F# SDK (on Windows), that is fine. But I'd like to know whether anyone else has tried this and discovered any other important dependencies to make the PowerPack work in general. <a href="http://www.realdissertationwriting.com/" rel="dofollow">dissertation help</a> | <a href="http://www.realassignmentwriting.com/" rel="dofollow">assignment help</a> | <a href="http://www.realessaywriting.com/" rel="dofollow">essay help</a>

janelee1 wrote Apr 9, 2013 at 9:27 AM

I update it, and my problem is solve.

My page : essay writing
            [essay writing service](http://www.essaywritingservice.com.au/2012/08/20/essay-writing-brisbane-solutions/)
            [assignment writing](http://www.essaywritingservice.com.au/2012/12/01/learn-how-to-improve-your-assignment-writing/)
            [assignment help](http://www.essaywritingservice.com.au/2012/12/19/improve-your-grades-with-the-online-assignment-help/)