Skip to content

Conversation

@luminescent
Copy link
Contributor

Hi

I have Ubuntu installed and F# 4.0 running on Mono on it. I have managed to run build.sh sucessfully after fixing a series of paths typos - case sensitive sort - in build.sh and build.fsx. While on Windows these would not pose problems, I'm sure you know that Linux is not that flexible.

Might be worth merging this pull request, it won't affect Windows builds but will help Linux ones.

Linux is case sensitive, hence had to change .NuGet to .nuget, as the latter is the name of the folder in source control.
@cgravill
Copy link
Member

cgravill commented Apr 9, 2016

Thanks I'll definitely merge this. We very much want to support running on Linux.

@bluenex
Copy link

bluenex commented Apr 9, 2016

I also run on Ubuntu 14.04 with F# 4.0. I tried running build.sh but I got an error as following.
How should I solve this? Thanks in advance.

Building project with version: LocalBuild
Shortened DependencyGraph for Target All:
<== All
   <== RunTests
      <== Build
         <== AssemblyInfo
            <== RestorePackages
               <== Clean

The resulting target order is:
 - Clean
 - RestorePackages
 - AssemblyInfo
 - Build
 - RunTests
 - All
Starting Target: Clean 
Deleting contents of bin
Deleting contents of temp
Finished Target: Clean
Starting Target: RestorePackages (==> Clean)
mono  /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe  "install" "/home/bluenex/LocalProjects/IfSharp/.nuget/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
mono  /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe  "install" "/home/bluenex/LocalProjects/IfSharp/docs/tools/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
mono  /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe  "install" "/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
mono  /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe  "install" "/home/bluenex/LocalProjects/IfSharp/src/IfSharpConsole/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
mono  /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe  "install" "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
Finished Target: RestorePackages
Starting Target: AssemblyInfo (==> RestorePackages)
Created AssemblyInfo file "src/IfSharp.Kernel/AssemblyInfo.fs".
Finished Target: AssemblyInfo
Starting Target: Build (==> AssemblyInfo)
Building project: /home/bluenex/LocalProjects/IfSharp/IfSharp.sln
  xbuild  /home/bluenex/LocalProjects/IfSharp/IfSharp.sln /t:Rebuild    /p:RestorePackages="False" /p:Configuration="Release" /logger:Fake.MsBuildLogger+ErrorLogger,"/home/bluenex/LocalProjects/IfSharp/packages/FAKE/tools/FakeLib.dll"
xbuild  /home/bluenex/LocalProjects/IfSharp/IfSharp.sln /t:Rebuild    /p:RestorePackages="False" /p:Configuration="Release" /logger:Fake.MsBuildLogger+ErrorLogger,"/home/bluenex/LocalProjects/IfSharp/packages/FAKE/tools/FakeLib.dll"
XBuild Engine Version 12.0
Mono, Version 4.2.3.0
Copyright (C) 2005-2013 Various Mono authors

Build started 4/9/2016 10:40:26 PM.
__________________________________________________
Project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln" (Rebuild target(s)):
    Target ValidateSolutionConfiguration:
        Building solution configuration "Release|x64".
    Target Rebuild:
        Project "/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/IfSharp.Kernel.fsproj" (Rebuild target(s)):
            Target CoreClean:
                Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharpResources.resources'
                Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll'
                Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll.mdb'
                Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.fsproj.FilesWrittenAbsolute.txt'
            Target PrepareForBuild:
                Configuration: Release Platform: x64
            Target CopyFilesMarkedCopyLocal:
                Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/FSharp.Charting.0.90.5/lib/net40/FSharp.Charting.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/FSharp.Charting.dll'
                Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/FSharp.Compiler.Service.0.0.81/lib/net45/FSharp.Compiler.Service.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/FSharp.Compiler.Service.dll'
                Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/NetMQ.dll'
                Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/Newtonsoft.Json.5.0.8/lib/net45/Newtonsoft.Json.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/Newtonsoft.Json.dll'
                Copying file from '/home/bluenex/LocalProjects/IfSharp/lib/NuGet.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/NuGet.dll'
                Copying file from '/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/FSharp.Core.dll'
            Target GenerateResources:
                Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "IfSharpResources.resx,obj/x64/Release/IfSharpResources.resources" 
            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/cli/fsharp/fsc.exe execution started with arguments: -o:obj/x64/Release/IfSharp.Kernel.dll --debug:pdbonly --noframework --define:TRACE --doc:../../bin/IfSharp.Kernel.XML --optimize+ --platform:x64 --resource:obj/x64/Release/IfSharpResources.resources -r:../../packages/FSharp.Charting.0.90.5/lib/net40/FSharp.Charting.dll -r:../../packages/FSharp.Compiler.Service.0.0.81/lib/net45/FSharp.Compiler.Service.dll -r:/usr/lib/mono/4.5/mscorlib.dll -r:../../packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll -r:../../packages/Newtonsoft.Json.5.0.8/lib/net45/Newtonsoft.Json.dll -r:../../lib/NuGet.dll -r:/usr/lib/mono/4.5/System.dll -r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll -r:/usr/lib/mono/4.5/System.Configuration.dll -r:/usr/lib/mono/4.5/System.Drawing.dll -r:/usr/lib/mono/4.5/System.Numerics.dll -r:/usr/lib/mono/4.5/System.Web.dll -r:/usr/lib/mono/4.5/System.Windows.Forms.dll -r:/usr/lib/mono/4.5/System.Windows.Forms.DataVisualization.dll -r:/usr/lib/mono/4.5/System.Xml.Linq.dll -r:/usr/lib/mono/4.5/System.Core.dll --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors --highentropyva- Config.fs IfSharpResources.fs NuGetManager.fs FsCompiler.fs Util.fs MainTypes.fs ShellMessages.fs Evaluation.fs Printers.fs Kernel.fs App.fs Globals.fs 
                F# Compiler for F# 4.0 (Open Source Edition)
                Freely distributed under the Apache 2.0 Open Source License
            Target _CopyDeployFilesToOutputDirectoryPreserveNewest:
                Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/Include.fsx' to '/home/bluenex/LocalProjects/IfSharp/bin/Include.fsx'
            Target _CopyAppConfigFile:
                Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/app.config' to '/home/bluenex/LocalProjects/IfSharp/bin/IfSharp.Kernel.dll.config'
            Target DeployOutputFiles:
                Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll.mdb' to '/home/bluenex/LocalProjects/IfSharp/bin/IfSharp.Kernel.dll.mdb'
                Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/IfSharp.Kernel.dll'
        Done building project "/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/IfSharp.Kernel.fsproj".
        Project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj" (Rebuild target(s)):
            Target CoreClean:
                Deleting file '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/FSharp.Core.dll'
                Deleting file '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/NetMQ.dll'
                Deleting file '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/obj/x64/Release/IfSharp.Kernel.Tests.fsproj.FilesWrittenAbsolute.txt'
            Target PrepareForBuild:
                Configuration: Release Platform: x64
            Target CopyFilesMarkedCopyLocal:
                Copying file from '/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll' to '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/FSharp.Core.dll'
                Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll' to '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/NetMQ.dll'
            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/cli/fsharp/fsc.exe execution started with arguments: -o:obj/x64/Release/IfSharp.Kernel.Tests.dll --debug:pdbonly --noframework --define:TRACE --doc:bin/Release/IfSharp.Kernel.Tests.XML --optimize+ --platform:x64 -r:/usr/lib/mono/4.5/mscorlib.dll -r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll -r:../../packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll -r:/usr/lib/mono/4.5/System.dll -r:/usr/lib/mono/4.5/System.Numerics.dll -r:/usr/lib/mono/4.5/System.Core.dll --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors --highentropyva-  
                F# Compiler for F# 4.0 (Open Source Edition)
                Freely distributed under the Apache 2.0 Open Source License
FSC: error FS0207: No inputs specified
            Task "Fsc" execution -- FAILED
            Done building target "CoreCompile" in project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
        Done building project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
    Task "MSBuild" execution -- FAILED
    Done building target "Rebuild" in project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED
Done building project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED

Build FAILED.
Errors:

/home/bluenex/LocalProjects/IfSharp/IfSharp.sln (Rebuild) ->
(Rebuild target) ->
/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj (Rebuild) ->
/usr/lib/mono/4.5/Microsoft.FSharp.Targets (CoreCompile target) ->

    FSC: error FS0207: No inputs specified

     0 Warning(s)
     1 Error(s)

Time Elapsed 00:00:10.9980750

---------------------------------------------------------------------
Build Time Report
---------------------------------------------------------------------
Target            Duration
------            --------
Clean             00:00:00.0063728
RestorePackages   00:00:02.1127379
AssemblyInfo      00:00:00.0154339
Total:            00:00:13.6223998
---------------------------------------------------------------------
---------------------------------------------------------------------

@luminescent
Copy link
Contributor Author

Hi

This happens because the test project does not have any compilable files in
it, only one script file. So you can go around it by adding a .fs file to
it with, say, a function declaration in it.

Please see here:
https://github.com/luminescent/IfSharp/tree/jupyter/tests/IfSharp.Kernel.Tests

the changes I had to make to get it to compile. Once I did that and
followed the Jupyter install steps for Windows (look at the jupyter
branch), it sort of worked on Ubuntu.

But, depending on your version of Mono/F#, you might actually have to
take the RunTests step out of the build.fsx, since NUnit will complain
that there are no assemblies available for tests. I say might because, on
my Ubuntu machine, this did not happen, but in a Docker image I am
building, based on Debian, which is using the latest of everything (Mono,
Anaconda, Jupyter), it did. I am not fully done with the Docker image, but
will be around tomorrow.

Now back to sort of worked on my local machine - if I launch the
notebooks via mono ifsharp.exe, it works nicely, and I also get
intellisense. If I open via jupyter notebook, the IfSharp kernel is
available, and I can create a new notebook that works, but intellisense is
not working.

Hope this helps!

On Sat, Apr 9, 2016 at 4:44 PM, Tulakan Ruangrong [email protected]
wrote:

I also run on Ubuntu 14.04 with F# 4.0. I tried running build.sh but I
got an error as following.
How should I solve this? Thanks in advance.

Building project with version: LocalBuild
Shortened DependencyGraph for Target All:
<== All
<== RunTests
<== Build
<== AssemblyInfo
<== RestorePackages
<== Clean

The resulting target order is:

  • Clean
  • RestorePackages
  • AssemblyInfo
  • Build
  • RunTests
  • All
    Starting Target: Clean
    Deleting contents of bin
    Deleting contents of temp
    Finished Target: Clean
    Starting Target: RestorePackages (==> Clean)
    mono /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe "install" "/home/bluenex/LocalProjects/IfSharp/.nuget/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
    mono /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe "install" "/home/bluenex/LocalProjects/IfSharp/docs/tools/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
    mono /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe "install" "/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
    mono /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe "install" "/home/bluenex/LocalProjects/IfSharp/src/IfSharpConsole/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
    mono /home/bluenex/LocalProjects/IfSharp/.nuget/NuGet.exe "install" "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/packages.config" "-OutputDirectory" "/home/bluenex/LocalProjects/IfSharp/packages"
    Finished Target: RestorePackages
    Starting Target: AssemblyInfo (==> RestorePackages)
    Created AssemblyInfo file "src/IfSharp.Kernel/AssemblyInfo.fs".
    Finished Target: AssemblyInfo
    Starting Target: Build (==> AssemblyInfo)
    Building project: /home/bluenex/LocalProjects/IfSharp/IfSharp.sln
    xbuild /home/bluenex/LocalProjects/IfSharp/IfSharp.sln /t:Rebuild /p:RestorePackages="False" /p:Configuration="Release" /logger:Fake.MsBuildLogger+ErrorLogger,"/home/bluenex/LocalProjects/IfSharp/packages/FAKE/tools/FakeLib.dll"
    xbuild /home/bluenex/LocalProjects/IfSharp/IfSharp.sln /t:Rebuild /p:RestorePackages="False" /p:Configuration="Release" /logger:Fake.MsBuildLogger+ErrorLogger,"/home/bluenex/LocalProjects/IfSharp/packages/FAKE/tools/FakeLib.dll"
    XBuild Engine Version 12.0
    Mono, Version 4.2.3.0
    Copyright (C) 2005-2013 Various Mono authors

Build started 4/9/2016 10:40:26 PM.


Project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln" (Rebuild target(s)):
Target ValidateSolutionConfiguration:
Building solution configuration "Release|x64".
Target Rebuild:
Project "/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/IfSharp.Kernel.fsproj" (Rebuild target(s)):
Target CoreClean:
Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharpResources.resources'
Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll'
Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll.mdb'
Deleting file '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.fsproj.FilesWrittenAbsolute.txt'
Target PrepareForBuild:
Configuration: Release Platform: x64
Target CopyFilesMarkedCopyLocal:
Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/FSharp.Charting.0.90.5/lib/net40/FSharp.Charting.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/FSharp.Charting.dll'
Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/FSharp.Compiler.Service.0.0.81/lib/net45/FSharp.Compiler.Service.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/FSharp.Compiler.Service.dll'
Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/NetMQ.dll'
Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/Newtonsoft.Json.5.0.8/lib/net45/Newtonsoft.Json.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/Newtonsoft.Json.dll'
Copying file from '/home/bluenex/LocalProjects/IfSharp/lib/NuGet.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/NuGet.dll'
Copying file from '/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/FSharp.Core.dll'
Target GenerateResources:
Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "IfSharpResources.resx,obj/x64/Release/IfSharpResources.resources"
Target GenerateSatelliteAssemblies:
No input files were specified for target GenerateSatelliteAssemblies, skipping.
Target CoreCompile:
Tool /usr/lib/cli/fsharp/fsc.exe execution started with arguments: -o:obj/x64/Release/IfSharp.Kernel.dll --debug:pdbonly --noframework --define:TRACE --doc:../../bin/IfSharp.Kernel.XML --optimize+ --platform:x64 --resource:obj/x64/Release/IfSharpResources.resources -r:../../packages/FSharp.Charting.0.90.5/lib/net40/FSharp.Charting.dll -r:../../packages/FSharp.Compiler.Service.0.0.81/lib/net45/FSharp.Compiler.Service.dll -r:/usr/lib/mono/4.5/mscorlib.dll -r:../../packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll -r:../../packages/Newtonsoft.Json.5.0.8/lib/net45/Newtonsoft.Json.dll -r:../../lib/NuGet.dll -r:/usr/lib/mono/4.5/System.dll -r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll -r:/usr/lib/mono/4.5/System.Configuration.dll -r:/usr/lib/mono/4.5/System.Drawing.dll -r:/usr/lib/mono/4.5/System.Numerics.dll -r:/usr/lib/mono/4.5/System.Web.dll -r:/usr/lib/mono/4.5/System.Windows.Forms.dll -r:/usr/lib/mono/4.5/System.Windows.Forms.DataVisualization.dll -r:/usr/lib/mono/4.5/System.Xml.Linq.dll -r:/usr/lib/mono/4.5/System.Core.dll --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors --highentropyva- Config.fs IfSharpResources.fs NuGetManager.fs FsCompiler.fs Util.fs MainTypes.fs ShellMessages.fs Evaluation.fs Printers.fs Kernel.fs App.fs Globals.fs
F# Compiler for F# 4.0 (Open Source Edition)
Freely distributed under the Apache 2.0 Open Source License
Target _CopyDeployFilesToOutputDirectoryPreserveNewest:
Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/Include.fsx' to '/home/bluenex/LocalProjects/IfSharp/bin/Include.fsx'
Target _CopyAppConfigFile:
Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/app.config' to '/home/bluenex/LocalProjects/IfSharp/bin/IfSharp.Kernel.dll.config'
Target DeployOutputFiles:
Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll.mdb' to '/home/bluenex/LocalProjects/IfSharp/bin/IfSharp.Kernel.dll.mdb'
Copying file from '/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/obj/x64/Release/IfSharp.Kernel.dll' to '/home/bluenex/LocalProjects/IfSharp/bin/IfSharp.Kernel.dll'
Done building project "/home/bluenex/LocalProjects/IfSharp/src/IfSharp.Kernel/IfSharp.Kernel.fsproj".
Project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj" (Rebuild target(s)):
Target CoreClean:
Deleting file '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/FSharp.Core.dll'
Deleting file '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/NetMQ.dll'
Deleting file '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/obj/x64/Release/IfSharp.Kernel.Tests.fsproj.FilesWrittenAbsolute.txt'
Target PrepareForBuild:
Configuration: Release Platform: x64
Target CopyFilesMarkedCopyLocal:
Copying file from '/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll' to '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/FSharp.Core.dll'
Copying file from '/home/bluenex/LocalProjects/IfSharp/packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll' to '/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/bin/Release/NetMQ.dll'
Target GenerateSatelliteAssemblies:
No input files were specified for target GenerateSatelliteAssemblies, skipping.
Target CoreCompile:
Tool /usr/lib/cli/fsharp/fsc.exe execution started with arguments: -o:obj/x64/Release/IfSharp.Kernel.Tests.dll --debug:pdbonly --noframework --define:TRACE --doc:bin/Release/IfSharp.Kernel.Tests.XML --optimize+ --platform:x64 -r:/usr/lib/mono/4.5/mscorlib.dll -r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll -r:../../packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll -r:/usr/lib/mono/4.5/System.dll -r:/usr/lib/mono/4.5/System.Numerics.dll -r:/usr/lib/mono/4.5/System.Core.dll --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors --highentropyva-
F# Compiler for F# 4.0 (Open Source Edition)
Freely distributed under the Apache 2.0 Open Source License
FSC: error FS0207: No inputs specified
Task "Fsc" execution -- FAILED
Done building target "CoreCompile" in project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
Done building project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
Task "MSBuild" execution -- FAILED
Done building target "Rebuild" in project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED
Done building project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED

Build FAILED.
Errors:

/home/bluenex/LocalProjects/IfSharp/IfSharp.sln (Rebuild) ->
(Rebuild target) ->
/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj (Rebuild) ->
/usr/lib/mono/4.5/Microsoft.FSharp.Targets (CoreCompile target) ->

FSC: error FS0207: No inputs specified

 0 Warning(s)
 1 Error(s)

Time Elapsed 00:00:10.9980750


Build Time Report

Target Duration


Clean 00:00:00.0063728
RestorePackages 00:00:02.1127379
AssemblyInfo 00:00:00.0154339

Total: 00:00:13.6223998



You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#57 (comment)

@bluenex
Copy link

bluenex commented Apr 9, 2016

Thanks for the very fast response @luminescent.

I added .fs file with function declaration following your suggestion but it didn't seem to work. I also take the RunTests step out but the output still be the same. Here is the part I wonder about, what the Target GenerateSatelliteAssemblies: exactly is and is it the cause of this issue?

            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/cli/fsharp/fsc.exe execution started with arguments: -o:obj/x64/Release/IfSharp.Kernel.Tests.dll --debug:pdbonly --noframework --define:TRACE --doc:bin/Release/IfSharp.Kernel.Tests.XML --optimize+ --platform:x64 -r:/usr/lib/mono/4.5/mscorlib.dll -r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll -r:../../packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll -r:/usr/lib/mono/4.5/System.dll -r:/usr/lib/mono/4.5/System.Numerics.dll -r:/usr/lib/mono/4.5/System.Core.dll --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors --highentropyva-  
                F# Compiler for F# 4.0 (Open Source Edition)
                Freely distributed under the Apache 2.0 Open Source License
FSC: error FS0207: No inputs specified
            Task "Fsc" execution -- FAILED
            Done building target "CoreCompile" in project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
        Done building project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
    Task "MSBuild" execution -- FAILED
    Done building target "Rebuild" in project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED
Done building project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED

Build FAILED.
Errors:

/home/bluenex/LocalProjects/IfSharp/IfSharp.sln (Rebuild) ->
(Rebuild target) ->
/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj (Rebuild) ->
/usr/lib/mono/4.5/Microsoft.FSharp.Targets (CoreCompile target) ->

    FSC: error FS0207: No inputs specified

     0 Warning(s)
     1 Error(s)

Time Elapsed 00:00:11.7098900

---------------------------------------------------------------------

@luminescent
Copy link
Contributor Author

Looks like you are still getting the same error. The
GenerateSatelliteAssemblies is not failing, it is skipped, and the build
still fails while trying to build IfSharp.Kernel.Tests.fsproj.

Have you changed the .fsproj to include the new .fs file and do you have
something like the line below in there? You have to make sure that the file
is in a compile XML node.

https://github.com/luminescent/IfSharp/blob/jupyter/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj#L76

On Sat, Apr 9, 2016 at 5:51 PM, Tulakan Ruangrong [email protected]
wrote:

Thanks for the very fast response @luminescent
https://github.com/luminescent.

I added .fs file with function declaration following your suggestion but
it didn't seem to work. I also take the RunTests step out but the output
still be the same. Here is the part I wonder about, what the Target
GenerateSatelliteAssemblies: exactly is and is it the cause of this issue?

        Target GenerateSatelliteAssemblies:
        No input files were specified for target GenerateSatelliteAssemblies, skipping.
        Target CoreCompile:
            Tool /usr/lib/cli/fsharp/fsc.exe execution started with arguments: -o:obj/x64/Release/IfSharp.Kernel.Tests.dll --debug:pdbonly --noframework --define:TRACE --doc:bin/Release/IfSharp.Kernel.Tests.XML --optimize+ --platform:x64 -r:/usr/lib/mono/4.5/mscorlib.dll -r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll -r:../../packages/NetMQ.3.3.0.11/lib/net40/NetMQ.dll -r:/usr/lib/mono/4.5/System.dll -r:/usr/lib/mono/4.5/System.Numerics.dll -r:/usr/lib/mono/4.5/System.Core.dll --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors --highentropyva-
            F# Compiler for F# 4.0 (Open Source Edition)
            Freely distributed under the Apache 2.0 Open Source License

FSC: error FS0207: No inputs specified
Task "Fsc" execution -- FAILED
Done building target "CoreCompile" in project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
Done building project "/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj".-- FAILED
Task "MSBuild" execution -- FAILED
Done building target "Rebuild" in project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED
Done building project "/home/bluenex/LocalProjects/IfSharp/IfSharp.sln".-- FAILED

Build FAILED.
Errors:

/home/bluenex/LocalProjects/IfSharp/IfSharp.sln (Rebuild) ->
(Rebuild target) ->
/home/bluenex/LocalProjects/IfSharp/tests/IfSharp.Kernel.Tests/IfSharp.Kernel.Tests.fsproj (Rebuild) ->
/usr/lib/mono/4.5/Microsoft.FSharp.Targets (CoreCompile target) ->

FSC: error FS0207: No inputs specified

 0 Warning(s)
 1 Error(s)

Time Elapsed 00:00:11.7098900



You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#57 (comment)

@bluenex
Copy link

bluenex commented Apr 9, 2016

My apologies for the mistake, I didn't know about that.

It's now working but without intellisense. I will figure it out next. Thank you very much for your help :)

@cgravill
Copy link
Member

cgravill commented Apr 9, 2016

Wow, lots of useful information here, thanks! We'd be more than happy to take additional patches that makes a smoother experience for Linux in general. If a fake .fs file in the test project helps, that's welcome.

Related, I've just merged #56 from @npmurphy who's also working on Ubuntu.

@luminescent
Copy link
Contributor Author

You're welcome, glad it is working now. You aren't getting intellisense
even when starting it with mono /your_path/ifsharp.exe? That worked on my
end, albeit I have tried it out for namespaces only, not for
types/variables defined in the notebook itself (e.g. when I type open System. it pops up offering the namespaces prefixed with System.).

@cgravill, I was going to submit a PR with a patch, however I wanted to
spend a bit more time to make it a bit cleaner, like for example adding an
actual test for something from kernel instead of the "fake" file, making
sure I have a nice minimal Dockerfile etc.

But perhaps it won't even be necessary with #56, I will try it out.

Regarding intellisense working in console only, that seems a bit trickier -
the little "fixes" so far were just plumbing, whereas this one looks like a
proper "issue" specific to how Jupyter works.

On 9 Apr 2016 18:46, "Colin Gravill" [email protected] wrote:

Wow, lots of useful information here, thanks! We'd be more than happy to
take additional patches that makes a smoother experience for Linux in
general. If a fake .fs file in the test project helps, that's welcome.

Related, I've just merged #56
#56 from @npmurphy
https://github.com/npmurphy who's also working on Ubuntu.


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#57 (comment)

@npmurphy
Copy link
Contributor

@luminescent @cgravill
Do we want to use NUnit or xUnit?

@luminescent
Copy link
Contributor Author

Hi

From my experience, xUnit has two advantages over NUnit:

  • ability to run async tests which makes testing async methods really easy. However, this is specific to C# and the async await keywords, so this would not provide immediate support for F#'s asynchronous workflows (though there is a one line call to convert them to C#'s);
  • ability to run tests in parallel (either from the same assembly or multiple assemblies at once).

But on the other hand NUnit is way more popular and has better tooling support. E.g. the continuous build server TeamCity has a native plugin for running NUnit, but not for xUnit.

But since this is F#, perhaps a wrapper like FsUnit would allow switching between these two quite easily - if my understanding is correct, if would be just changing a packet reference and the namespaces in the test code files when replacing one with the other, the test methods code/test syntax would stay the same.

@cgravill
Copy link
Member

xUnit is fine with me, I've used it elsewhere with F# projects and it's behaved well.

@cgravill
Copy link
Member

I've added a very simple xUnit test and switched build.fsx over to that. This should avoid the misleading NUnit error you were getting because of no tests.

Hope this helps. Actual tests can come later!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants