jaquadro / NBTExplorer

A graphical NBT editor for all Minecraft NBT data sources
http://www.minecraftforum.net/topic/840677-nbtexplorer-nbt-editor-for-windows-and-mac/
MIT License
2.24k stars 277 forks source link

Build documentation/problems building on Linux #114

Open charliegreen opened 3 years ago

charliegreen commented 3 years ago

Hello! I'm on Ubuntu 18.04 and having troubles building. I'm completely unfamiliar with Mono, but familiar with other build systems.

As per #5 I tried xbuild NBTExplorer.csproj after installing mono-devel, to these results:

$ xbuild NBTExplorer.csproj 
XBuild Engine Version 14.0
Mono, Version 4.6.2.0
Copyright (C) 2005-2013 Various Mono authors

Build started 4/9/2021 12:13:34 PM.
__________________________________________________
Project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer/NBTExplorer.csproj" (default target(s)):
    Target PrepareForBuild:
        Configuration: Debug Platform: x86
    Target ResolveProjectReferences:
        Project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj" (default target(s)):
            Target PrepareForBuild:
                Configuration: Debug Platform: AnyCPU
            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /debug:full /debug+ /optimize- /out:obj/Debug/NBTModel.dll Data/CompoundTagContainer.cs Data/Nodes/CubicRegionDataNode.cs Data/CubicRegionFile.cs Data/Nodes/DataNode.cs Data/DataNodeCollection.cs Data/Nodes/DirectoryDataNode.cs Data/FileTypeRegistry.cs Data/Nodes/TagLongArrayDataNode.cs Data/Nodes/TagShortArrayDataNode.cs FilterExpressionParser.cs Interop/FormRegistry.cs Interop/NbtClipboardController.cs Interop/NbtClipboardData.cs Data/ListTagContainer.cs Data/Nodes/NbtFileDataNode.cs Data/Nodes/NodeCapabilities.cs NbtPath.cs Properties/AssemblyInfo.cs Data/Nodes/RegionChunkDataNode.cs Data/Nodes/RegionFileDataNode.cs Search/SearchRule.cs Data/Nodes/TagByteArrayDataNode.cs Data/Nodes/TagByteDataNode.cs Data/Nodes/TagCompoundDataNode.cs Data/TagContainerInterface.cs Data/Nodes/TagDataNode.cs Data/Nodes/TagDoubleDataNode.cs Data/Nodes/TagFloatDataNode.cs Data/Nodes/TagIntArrayDataNode.cs Data/Nodes/TagIntDataNode.cs Data/TagKey.cs Data/Nodes/TagListDataNode.cs Data/Nodes/TagLongDataNode.cs Data/Nodes/TagShortDataNode.cs Data/Nodes/TagStringDataNode.cs Utility/NaturalComparer.cs Utility/SnapshotList.cs /target:library /define:"TRACE;DEBUG;WINDOWS" /nostdlib /reference:../References/Substrate.dll /reference:/usr/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll /reference:/usr/lib/mono/gac/System.Data/4.0.0.0__b77a5c561934e089/System.Data.dll /reference:/usr/lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.dll /warn:4
CSC: error CS0518: The predefined type `System.Object' is not defined or imported
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
CSC: error CS0518: The predefined type `System.Single' is not defined or imported
CSC: error CS0518: The predefined type `System.Double' is not defined or imported
CSC: error CS0518: The predefined type `System.Char' is not defined or imported
CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
CSC: error CS0518: The predefined type `System.String' is not defined or imported
CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
CSC: error CS0518: The predefined type `System.Void' is not defined or imported
CSC: error CS0518: The predefined type `System.Array' is not defined or imported
CSC: error CS0518: The predefined type `System.Type' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.Exception' is not defined or imported
            Task "Csc" execution -- FAILED
            Done building target "CoreCompile" in project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj".-- FAILED
        Done building project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj".-- FAILED
    Task "MSBuild" execution -- FAILED
    Done building target "ResolveProjectReferences" in project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer/NBTExplorer.csproj".-- FAILED
Done building project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer/NBTExplorer.csproj".-- FAILED

Build FAILED.
Errors:

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer/NBTExplorer.csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets (ResolveProjectReferences target) ->
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->

    CSC: error CS0518: The predefined type `System.Object' is not defined or imported
    CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
    CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
    CSC: error CS0518: The predefined type `System.Single' is not defined or imported
    CSC: error CS0518: The predefined type `System.Double' is not defined or imported
    CSC: error CS0518: The predefined type `System.Char' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
    CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
    CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
    CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
    CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
    CSC: error CS0518: The predefined type `System.String' is not defined or imported
    CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
    CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.Void' is not defined or imported
    CSC: error CS0518: The predefined type `System.Array' is not defined or imported
    CSC: error CS0518: The predefined type `System.Type' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.Exception' is not defined or imported

     0 Warning(s)
     31 Error(s)

Time Elapsed 00:00:00.3366420

After this I saw this issue in another project and tried xbuild NBTExplorer.sln:

XBuild Engine Version 14.0
Mono, Version 4.6.2.0
Copyright (C) 2005-2013 Various Mono authors

Build started 4/9/2021 12:20:18 PM.
__________________________________________________
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.Installer/NBTExplorer.Installer.wixproj:  warning : Could not find project file /usr/lib/mono/xbuild/Microsoft/WiX/v3.x/Wix.targets, to import. Ignoring.
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln:  warning : Project file /home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj referenced in the solution file, not found. Ignoring.
Project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln" (default target(s)):
    Target ValidateSolutionConfiguration:
        Building solution configuration "AppStore|Mixed Platforms".
    Target Build:
        Project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj" (default target(s)):
            Target PrepareForBuild:
                Configuration: Release Platform: AnyCPU
            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /debug:pdbonly /optimize+ /out:obj/Release/NBTModel.dll Data/CompoundTagContainer.cs Data/Nodes/CubicRegionDataNode.cs Data/CubicRegionFile.cs Data/Nodes/DataNode.cs Data/DataNodeCollection.cs Data/Nodes/DirectoryDataNode.cs Data/FileTypeRegistry.cs Data/Nodes/TagLongArrayDataNode.cs Data/Nodes/TagShortArrayDataNode.cs FilterExpressionParser.cs Interop/FormRegistry.cs Interop/NbtClipboardController.cs Interop/NbtClipboardData.cs Data/ListTagContainer.cs Data/Nodes/NbtFileDataNode.cs Data/Nodes/NodeCapabilities.cs NbtPath.cs Properties/AssemblyInfo.cs Data/Nodes/RegionChunkDataNode.cs Data/Nodes/RegionFileDataNode.cs Search/SearchRule.cs Data/Nodes/TagByteArrayDataNode.cs Data/Nodes/TagByteDataNode.cs Data/Nodes/TagCompoundDataNode.cs Data/TagContainerInterface.cs Data/Nodes/TagDataNode.cs Data/Nodes/TagDoubleDataNode.cs Data/Nodes/TagFloatDataNode.cs Data/Nodes/TagIntArrayDataNode.cs Data/Nodes/TagIntDataNode.cs Data/TagKey.cs Data/Nodes/TagListDataNode.cs Data/Nodes/TagLongDataNode.cs Data/Nodes/TagShortDataNode.cs Data/Nodes/TagStringDataNode.cs Utility/NaturalComparer.cs Utility/SnapshotList.cs /target:library /define:"TRACE;WINDOWS" /nostdlib /reference:../References/Substrate.dll /reference:/usr/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll /reference:/usr/lib/mono/gac/System.Data/4.0.0.0__b77a5c561934e089/System.Data.dll /reference:/usr/lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.dll /warn:4
CSC: error CS0518: The predefined type `System.Object' is not defined or imported
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
CSC: error CS0518: The predefined type `System.Single' is not defined or imported
CSC: error CS0518: The predefined type `System.Double' is not defined or imported
CSC: error CS0518: The predefined type `System.Char' is not defined or imported
CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
CSC: error CS0518: The predefined type `System.String' is not defined or imported
CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
CSC: error CS0518: The predefined type `System.Void' is not defined or imported
CSC: error CS0518: The predefined type `System.Array' is not defined or imported
CSC: error CS0518: The predefined type `System.Type' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.Exception' is not defined or imported
            Task "Csc" execution -- FAILED
            Done building target "CoreCompile" in project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj".-- FAILED
        Done building project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj".-- FAILED
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln: error : Could not find the project file '/home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj'
    Task "MSBuild" execution -- FAILED
    Done building target "Build" in project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln".-- FAILED
Done building project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln".-- FAILED

Build FAILED.

Warnings:

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.Installer/NBTExplorer.Installer.wixproj:  warning : Could not find project file /usr/lib/mono/xbuild/Microsoft/WiX/v3.x/Wix.targets, to import. Ignoring.
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln:  warning : Project file /home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj referenced in the solution file, not found. Ignoring.

Errors:

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln (default targets) ->
(Build target) ->
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->

    CSC: error CS0518: The predefined type `System.Object' is not defined or imported
    CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
    CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
    CSC: error CS0518: The predefined type `System.Single' is not defined or imported
    CSC: error CS0518: The predefined type `System.Double' is not defined or imported
    CSC: error CS0518: The predefined type `System.Char' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
    CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
    CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
    CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
    CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
    CSC: error CS0518: The predefined type `System.String' is not defined or imported
    CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
    CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.Void' is not defined or imported
    CSC: error CS0518: The predefined type `System.Array' is not defined or imported
    CSC: error CS0518: The predefined type `System.Type' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.Exception' is not defined or imported

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln (default targets) ->
(Build target) ->

    /home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln: error : Could not find the project file '/home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj'

     2 Warning(s)
     32 Error(s)

Time Elapsed 00:00:00.3945790

It seems I'm missing something called Substrate, as well as another called WiX? Does anyone know where I can get it, if this is the issue? If that isn't the problem, what is?

Thank you for your help!

Related issue: #109

charliegreen commented 3 years ago

Ah, I found Substrate! Cloning it into the same folder as I cloned this repo fixes one issue, but WiX seems to be the bigger problem:

$ xbuild NBTExplorer.sln 
XBuild Engine Version 14.0
Mono, Version 4.6.2.0
Copyright (C) 2005-2013 Various Mono authors

Build started 4/9/2021 12:34:23 PM.
__________________________________________________
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.Installer/NBTExplorer.Installer.wixproj:  warning : Could not find project file /usr/lib/mono/xbuild/Microsoft/WiX/v3.x/Wix.targets, to import. Ignoring.
Project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln" (default target(s)):
    Target ValidateSolutionConfiguration:
        Building solution configuration "AppStore|Mixed Platforms".
    Target Build:
        Project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj" (default target(s)):
            Target PrepareForBuild:
                Configuration: Release Platform: AnyCPU
            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /debug:pdbonly /optimize+ /out:obj/Release/NBTModel.dll Data/CompoundTagContainer.cs Data/Nodes/CubicRegionDataNode.cs Data/CubicRegionFile.cs Data/Nodes/DataNode.cs Data/DataNodeCollection.cs Data/Nodes/DirectoryDataNode.cs Data/FileTypeRegistry.cs Data/Nodes/TagLongArrayDataNode.cs Data/Nodes/TagShortArrayDataNode.cs FilterExpressionParser.cs Interop/FormRegistry.cs Interop/NbtClipboardController.cs Interop/NbtClipboardData.cs Data/ListTagContainer.cs Data/Nodes/NbtFileDataNode.cs Data/Nodes/NodeCapabilities.cs NbtPath.cs Properties/AssemblyInfo.cs Data/Nodes/RegionChunkDataNode.cs Data/Nodes/RegionFileDataNode.cs Search/SearchRule.cs Data/Nodes/TagByteArrayDataNode.cs Data/Nodes/TagByteDataNode.cs Data/Nodes/TagCompoundDataNode.cs Data/TagContainerInterface.cs Data/Nodes/TagDataNode.cs Data/Nodes/TagDoubleDataNode.cs Data/Nodes/TagFloatDataNode.cs Data/Nodes/TagIntArrayDataNode.cs Data/Nodes/TagIntDataNode.cs Data/TagKey.cs Data/Nodes/TagListDataNode.cs Data/Nodes/TagLongDataNode.cs Data/Nodes/TagShortDataNode.cs Data/Nodes/TagStringDataNode.cs Utility/NaturalComparer.cs Utility/SnapshotList.cs /target:library /define:"TRACE;WINDOWS" /nostdlib /reference:../References/Substrate.dll /reference:/usr/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll /reference:/usr/lib/mono/gac/System.Data/4.0.0.0__b77a5c561934e089/System.Data.dll /reference:/usr/lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.dll /warn:4
CSC: error CS0518: The predefined type `System.Object' is not defined or imported
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
CSC: error CS0518: The predefined type `System.Single' is not defined or imported
CSC: error CS0518: The predefined type `System.Double' is not defined or imported
CSC: error CS0518: The predefined type `System.Char' is not defined or imported
CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
CSC: error CS0518: The predefined type `System.String' is not defined or imported
CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
CSC: error CS0518: The predefined type `System.Void' is not defined or imported
CSC: error CS0518: The predefined type `System.Array' is not defined or imported
CSC: error CS0518: The predefined type `System.Type' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.Exception' is not defined or imported
            Task "Csc" execution -- FAILED
            Done building target "CoreCompile" in project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj".-- FAILED
        Done building project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj".-- FAILED
        Project "/home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj" (default target(s)):
            Target PrepareForBuild:
                Configuration: Release Platform: AnyCPU
            Target GenerateSatelliteAssemblies:
            No input files were specified for target GenerateSatelliteAssemblies, skipping.
            Target CoreCompile:
                Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /debug:pdbonly /optimize+ /out:obj/Release/Substrate.dll Source/AlphaWorld.cs Source/AnvilBiomeCollection.cs Source/AnvilChunk.cs Source/AnvilRegion.cs Source/AnvilRegionManager.cs Source/AnvilSection.cs Source/AnvilWorld.cs Source/BetaRegionManager.cs Source/Core/CompositeDataArray.cs Source/Core/FusedDataArray.cs Source/Nbt/SchemaNodeShortArray.cs Source/Nbt/TagNodeShortArray.cs Source/Nbt/SchemaNodeLongArray.cs Source/Nbt/TagNodeLongArray.cs Source/RegionChunkManager.cs Source/BetaRegion.cs Source/BetaWorld.cs Source/BiomeInfo.cs Source/Core/BlockTileTicks.cs Source/Core/BoundedBlockInterface.cs Source/Core/ItemInterface.cs Source/Data/BetaDataManager.cs Source/Data/DataExceptions.cs Source/Data/MapFile.cs Source/Core/OpenWorldEvent.cs Source/Core/RegionInterface.cs Source/Core/UnboundedBlockInterface.cs Source/Data/DataManager.cs Source/Data/Map.cs Source/Data/MapConverter.cs Source/Data/MapManager.cs Source/Data/MapManagerInterface.cs Source/Enchantment.cs Source/EnchantmentInfo.cs Source/Entities/EntityAnimal.cs Source/Entities/EntityBlaze.cs Source/Entities/EntityCaveSpider.cs Source/Entities/EntityEnderDragon.cs Source/Entities/EntityEnderEye.cs Source/Entities/EntityEnderman.cs Source/Entities/EntityEnderPearl.cs Source/Entities/EntityFireball.cs Source/Entities/EntityMagmaCube.cs Source/Entities/EntityMooshroom.cs Source/Entities/EntitySilverfish.cs Source/Entities/EntitySmallFireball.cs Source/Entities/EntitySnowman.cs Source/Entities/EntityVillager.cs Source/Entities/EntityXPOrb.cs Source/ImportExport/Schematic.cs Source/ItemCollection.cs Source/LevelIOException.cs Source/AlphaBlock.cs Source/AlphaBlockRef.cs Source/CacheTable.cs Source/Core/BlockFluid.cs Source/Core/PlayerManagerInterface.cs Source/Data.cs Source/ItemInfo.cs Source/Core/ChunkCache.cs Source/Entities/EntitySquid.cs Source/EntityCollection.cs Source/AlphaBlockCollection.cs Source/Core/BlockLight.cs Source/Core/BlockTileEntities.cs Source/Level.cs Source/NbtWorld.cs Source/Nbt/INbtObject.cs Source/Nbt/NbtIOException.cs Source/Nbt/NbtTree.cs Source/Nbt/NbtVerifier.cs Source/Nbt/SchemaNode.cs Source/Nbt/SchemaNodeArray.cs Source/Nbt/SchemaNodeCompound.cs Source/Nbt/SchemaNodeIntArray.cs Source/Nbt/SchemaNodeList.cs Source/Nbt/SchemaNodeScaler.cs Source/Nbt/SchemaNodeString.cs Source/Nbt/SchemaOptions.cs Source/Nbt/TagNode.cs Source/Nbt/TagNodeByteArray.cs Source/Nbt/TagNodeCompound.cs Source/Nbt/TagNodeDouble.cs Source/Nbt/TagNodeFloat.cs Source/Nbt/TagNodeInt.cs Source/Nbt/TagNodeIntArray.cs Source/Nbt/TagNodeList.cs Source/Nbt/TagNodeLong.cs Source/Nbt/TagNodeShort.cs Source/Nbt/TagNodeString.cs Source/Nbt/TagType.cs Source/Nbt/TagNodeByte.cs Source/Nbt/TagNodeNull.cs Source/Nbt/VerifierLogger.cs Source/Orientation.cs Source/PlayerIOException.cs Source/PlayerManager.cs Source/Core/PlayerFile.cs Properties/AssemblyInfo.cs Source/BlockInfo.cs Source/Core/BlockInterface.cs Source/Core/BlockKey.cs Source/BlockManager.cs Source/AlphaChunk.cs Source/Core/ChunkFile.cs Source/AlphaChunkManager.cs Source/Core/ChunkInterface.cs Source/Core/ChunkKey.cs Source/ChunkRef.cs Source/Entities/EntityArrow.cs Source/Entities/EntityBoat.cs Source/Entities/EntityChicken.cs Source/Entities/EntityCow.cs Source/Entities/EntityCreeper.cs Source/Entities/EntityEgg.cs Source/Entities/EntityFallingSand.cs Source/Entities/EntityGhast.cs Source/Entities/EntityGiant.cs Source/Entities/EntityItem.cs Source/Entities/EntityMinecart.cs Source/Entities/EntityMinecartChest.cs Source/Entities/EntityMinecartFurnace.cs Source/Entities/EntityMob.cs Source/Entities/EntityMonster.cs Source/Entities/EntityPainting.cs Source/Entities/EntityPig.cs Source/Entities/EntityPigZombie.cs Source/Entities/EntityPrimedTnt.cs Source/Entities/EntitySheep.cs Source/Entities/EntitySkeleton.cs Source/Entities/EntitySlime.cs Source/Entities/EntitySnowball.cs Source/Entities/EntitySpider.cs Source/Entities/EntityThrowable.cs Source/Entities/EntityWolf.cs Source/Entities/EntityZombie.cs Source/Entity.cs Source/EntityFactory.cs Source/Item.cs Source/Core/NBTFile.cs Source/Nbt/JSONSerializer.cs Source/Player.cs Source/Core/Region.cs Source/Core/RegionFile.cs Source/Core/RegionKey.cs Source/Core/RegionManager.cs Source/SpawnPoint.cs Source/SubstrateException.cs Source/TileEntities/TileEntityBeacon.cs Source/TileEntities/TileEntityBrewingStand.cs Source/TileEntities/TileEntityChest.cs Source/TileEntities/TileEntityControl.cs Source/TileEntities/TileEntityEnchantmentTable.cs Source/TileEntities/TileEntityEndPortal.cs Source/TileEntities/TileEntityFurnace.cs Source/TileEntities/TileEntityMobSpawner.cs Source/TileEntities/TileEntityPiston.cs Source/TileEntities/TileEntityMusic.cs Source/TileEntities/TileEntityRecordPlayer.cs Source/TileEntities/TileEntitySign.cs Source/TileEntities/TileEntityTrap.cs Source/TileEntity.cs Source/TileEntityFactory.cs Source/Core/Base.cs Source/Core/ByteArray.cs Source/Core/IndexedLinkedList.cs Source/Core/Interface.cs Source/Core/LRUCache.cs Source/Core/NibbleArray.cs Source/TileTick.cs Source/Vector.cs Source/World.cs Vendor/DotNetZip/Zlib/Crc32.cs Vendor/DotNetZip/Zlib/Deflate.cs Vendor/DotNetZip/Zlib/DeflateStream.cs Vendor/DotNetZip/Zlib/GZipStream.cs Vendor/DotNetZip/Zlib/Inflate.cs Vendor/DotNetZip/Zlib/InfTree.cs Vendor/DotNetZip/Zlib/ParallelDeflateOutputStream.cs Vendor/DotNetZip/Zlib/Tree.cs Vendor/DotNetZip/Zlib/Zlib.cs Vendor/DotNetZip/Zlib/ZlibBaseStream.cs Vendor/DotNetZip/Zlib/ZlibCodec.cs Vendor/DotNetZip/Zlib/ZlibConstants.cs Vendor/DotNetZip/Zlib/ZlibStream.cs /target:library /define:TRACE /doc:bin/Release/Substrate.XML /nostdlib /reference:/usr/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll /reference:/usr/lib/mono/gac/System.Drawing/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll /warn:4
CSC: error CS0518: The predefined type `System.Object' is not defined or imported
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
CSC: error CS0518: The predefined type `System.Single' is not defined or imported
CSC: error CS0518: The predefined type `System.Double' is not defined or imported
CSC: error CS0518: The predefined type `System.Char' is not defined or imported
CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
CSC: error CS0518: The predefined type `System.String' is not defined or imported
CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
CSC: error CS0518: The predefined type `System.Void' is not defined or imported
CSC: error CS0518: The predefined type `System.Array' is not defined or imported
CSC: error CS0518: The predefined type `System.Type' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.Exception' is not defined or imported
            Task "Csc" execution -- FAILED
            Done building target "CoreCompile" in project "/home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj".-- FAILED
        Done building project "/home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj".-- FAILED
    Task "MSBuild" execution -- FAILED
    Done building target "Build" in project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln".-- FAILED
Done building project "/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln".-- FAILED

Build FAILED.

Warnings:

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.Installer/NBTExplorer.Installer.wixproj:  warning : Could not find project file /usr/lib/mono/xbuild/Microsoft/WiX/v3.x/Wix.targets, to import. Ignoring.

Errors:

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln (default targets) ->
(Build target) ->
/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTModel/NBTModel.csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->

    CSC: error CS0518: The predefined type `System.Object' is not defined or imported
    CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
    CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
    CSC: error CS0518: The predefined type `System.Single' is not defined or imported
    CSC: error CS0518: The predefined type `System.Double' is not defined or imported
    CSC: error CS0518: The predefined type `System.Char' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
    CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
    CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
    CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
    CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
    CSC: error CS0518: The predefined type `System.String' is not defined or imported
    CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
    CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.Void' is not defined or imported
    CSC: error CS0518: The predefined type `System.Array' is not defined or imported
    CSC: error CS0518: The predefined type `System.Type' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.Exception' is not defined or imported

/home/charlie/Documents/Games/Minecraft/NBTExplorer/NBTExplorer.sln (default targets) ->
(Build target) ->
/home/charlie/Documents/Games/Minecraft/Substrate/SubstrateCS/Substrate (NET2).csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->

    CSC: error CS0518: The predefined type `System.Object' is not defined or imported
    CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
    CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
    CSC: error CS0518: The predefined type `System.Single' is not defined or imported
    CSC: error CS0518: The predefined type `System.Double' is not defined or imported
    CSC: error CS0518: The predefined type `System.Char' is not defined or imported
    CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
    CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
    CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
    CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
    CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
    CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
    CSC: error CS0518: The predefined type `System.String' is not defined or imported
    CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
    CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
    CSC: error CS0518: The predefined type `System.Void' is not defined or imported
    CSC: error CS0518: The predefined type `System.Array' is not defined or imported
    CSC: error CS0518: The predefined type `System.Type' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
    CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
    CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
    CSC: error CS0518: The predefined type `System.Exception' is not defined or imported

     1 Warning(s)
     62 Error(s)

Time Elapsed 00:00:00.6326900
charliegreen commented 3 years ago

I figured it out! Turns out it's a good idea to read the manual lol. According to the Mono download page, we install Mono by first adding the correct repository:

sudo apt install gnupg ca-certificates
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
sudo apt update

And then we install with sudo apt install mono-complete (you could probably get away with just mono-devel, but I didn't try).

Note that there's another mono-complete that you can install without adding the Mono repo, but it didn't work for me.

After this, I went to NBTExplorer/NBTExplorer and ran xbuild NBTExplorer.csproj, which failed because it couldn't find Substrate. After running xbuild in the Substrate folder it built just fine. We don't need WiX because that's the Windows installer, and we're on Linux, so we can just avoid building it in the first place by directly running xbuild NBTExplorer.csproj instead of xbuild NBTExplorer.sln.

Finally, it built successfully, and I could successfully run mono bin/Release/NBTExplorer.exe to launch NBTExplorer. Moving the executable elsewhere to run it appears to cause problems because it can no longer find Substrate, but I'm happy just launching it from here. After a cursory once-over, it seems the program is working just fine!

mazunki commented 2 years ago

Thanks @charliegreen . Compiling .csproj directly removed the massive lag I was having. I have no idea what caused the lag, but it definitely made a massive difference. I figured I might as well report it as a fix here.

[edit] ... or was that just a lucky shot. The lag is back now.

josephdpurcell commented 1 month ago

Thanks @charliegreen! Here's exactly what I did:

apt-get install mono-runtime
apt-get install mono-devel

mkdir ~/Downloads/nbtedit
cd ~/Downloads/nbtedit

git clone git@github.com:jaquadro/NBTExplorer.git
cd NBTExplorer/

git clone git@github.com:minecraft-dotnet/Substrate.git
cd Substrate/

xbuild ../NBTExplorer/NBTExplorer.csproj

mono bin/Release/NBTExplorer.exe

Voila! I'm shocked that worked!

I was able to open level.dat file, but sadly it doesn't show any props. My level.dat file is from a Bedrock world, perhaps that's why?

Screenshot from 2024-07-30 19-37-27

josephdpurcell commented 1 month ago

I just learned that https://marketplace.visualstudio.com/items?itemName=Misodee.vscode-nbt also supports editing! I've tested it on Linux and it works. As such, I can use the VSCode plugin instead of NBTExplorer.