This project has moved and is read-only. For the latest updates, please go here.

Linux: Build failure / Filesystem case sensitivity issue


Depending upon case sensitivity of the filesystem you are using in Linux, there is a file naming mismatch contained within the 010.Irony.2012 project file for two source files being referenced. This is not an issue on OS-X/Windows/Samba/UNC/.. based filesystems using Mono/Xbuild or Monodevelop, just Linux filesystems like 'ext4'.

Either the two source files need renamed, or two lines in the project file need changed to allow the build to complete.
010.Irony.2012 project file ->
<Compile Include="Parsing\Terminals\RegexLiteral.cs" />
<Compile Include="Parsing\Terminals\RegexBasedTerminal.cs" />
ubuntu:~/Documents/Projects/Irony2/Irony/Parsing/Terminals$ ls -l Reg*
-rw-r--r-- 1 niteware niteware 2541 Dec 19 19:45 RegExBasedTerminal.cs
-rw-r--r-- 1 niteware niteware 5913 Dec 19 19:45 RegExLiteral.cs
/home/niteware/Documents/Projects/Irony2/Irony/010.Irony.2012.csproj (Build) ->
/home/niteware/opt/mono/lib/mono/4.0/Microsoft.CSharp.targets (CoreCompile target) ->

    : error CS2001: Source file `Parsing/Terminals/RegexLiteral.cs' could not be found
    : error CS2001: Source file `Parsing/Terminals/RegexBasedTerminal.cs' could not be found

     0 Warning(s)
     2 Error(s)

Time Elapsed 00:00:01.8838520

---------------------- Done ----------------------

Build: 2 errors, 0 warnings