Closed michealmueller closed 6 years ago
You'll need to build with msbuild and a full set of mono libraries. See https://github.com/InWorldz/halcyon/wiki/Development for the recommended build environment.
msbuild gives 67 errors, and it seems to be releated to this (this has nothign to do with halcyon but its the closest to the same issue i can find quickly)
every error is this, the file exists, so perhaps a path issue?(fresh ubuntu 16) that path is correct 100% but it still cant seem to find it....
error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Microsoft.CSHARP.Targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
Ok, figured it out
if you want to try and duplicate this is what i am running
ubuntu 16.04
monodevelop - 5.10
mono - 5.8.0.108
The Halcyon.sln (built with msbuild) is looking for Microsoft.CSHARP.Targets, but the files actual name is Microsoft.CSharp.targets so i just renamed that file to what the solution expects and it goes on.
however now i am at this error (this is the same error that i got with xbuild, so xbuild apparently is ok with capitalization issue where msbuild was not)
Build FAILED.
"/root/halcyonpak/halcyon-0.9.36.6427/Halcyon.sln" (default target) (1) ->
"/root/halcyonpak/halcyon-0.9.36.6427/InWorldz/Halcyon/Halcyon.csproj" (default target) (2) ->
"/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Base/OpenSim.Base.csproj" (default target) (3:2) ->
"/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Data/OpenSim.Data.csproj" (default target) (4:3) ->
"/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj" (default target) (5:4) ->
(ResolveAssemblyReferences target) ->
/usr/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(2057,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "System.DirectoryServices.AccountManagement". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj]
"/root/halcyonpak/halcyon-0.9.36.6427/Halcyon.sln" (default target) (1) ->
"/root/halcyonpak/halcyon-0.9.36.6427/InWorldz/Halcyon/Halcyon.csproj" (default target) (2) ->
"/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Base/OpenSim.Base.csproj" (default target) (3:2) ->
"/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Data/OpenSim.Data.csproj" (default target) (4:3) ->
"/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj" (default target) (5:4) ->
(CoreCompile target) ->
Util.cs(57,14): error CS0234: The type or namespace name 'DirectoryServices' does not exist in the namespace 'System' (are you missing an assembly reference?) [/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj]
1 Warning(s)
1 Error(s)
After helping Micheal, that one was resolved via some code removals. Mono 5 switched to the Roslyn csc compiler, which doesn't define the MonoCS precompile flag. Thus there's some build issues that were an exercise in code surgery.
On Mon, Feb 12, 2018 at 1:56 PM Micheal Mueller notifications@github.com wrote:
Ok, figured it out
if you want to try and duplicate this is what i am running
ubuntu 16.04 monodevelop - 5.10 mono - 5.8.0.108
The Halcyon.sln (built with msbuild) is looking for Microsoft.CSHARP.Targets, but the files actual name is Microsoft.CSharp.targets so i just renamed that file to what the solution expects and it goes on.
however now i am at this error (this is the same error that i got with xbuild, so xbuild apparently is ok with capitalization issue where msbuild was not)
Build FAILED.
"/root/halcyonpak/halcyon-0.9.36.6427/Halcyon.sln" (default target) (1) -> "/root/halcyonpak/halcyon-0.9.36.6427/InWorldz/Halcyon/Halcyon.csproj" (default target) (2) -> "/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Base/OpenSim.Base.csproj" (default target) (3:2) -> "/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Data/OpenSim.Data.csproj" (default target) (4:3) -> "/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj" (default target) (5:4) -> (ResolveAssemblyReferences target) -> /usr/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(2057,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "System.DirectoryServices.AccountManagement". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj]
"/root/halcyonpak/halcyon-0.9.36.6427/Halcyon.sln" (default target) (1) -> "/root/halcyonpak/halcyon-0.9.36.6427/InWorldz/Halcyon/Halcyon.csproj" (default target) (2) -> "/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Base/OpenSim.Base.csproj" (default target) (3:2) -> "/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Data/OpenSim.Data.csproj" (default target) (4:3) -> "/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj" (default target) (5:4) -> (CoreCompile target) -> Util.cs(57,14): error CS0234: The type or namespace name 'DirectoryServices' does not exist in the namespace 'System' (are you missing an assembly reference?) [/root/halcyonpak/halcyon-0.9.36.6427/OpenSim/Framework/OpenSim.Framework.csproj]
1 Warning(s) 1 Error(s)
— You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/InWorldz/halcyon/issues/420#issuecomment-365076062, or mute the thread https://github.com/notifications/unsubscribe-auth/ABGoaEqQ--LBRSB5YA5EXlx_SSAOoHJ5ks5tULOLgaJpZM4SCQgq .
yes got it built, then decided to switch it up and go with windows :D so this is resolved.
Specifics, since the CSC compile does not define the MonoCS flag, you have 2 options,
1.define it yourself( not sure how to do that)
this link has the fixes for the Util.cs file. (thanks to Kf6jg for the help with this) https://github.com/Arthmael8610/halcyon/commit/c4da91b580bd4a24902d20ee8ccd0400cd52d772
basically you remove the first MonoCS block completely and invert the other.
Ok, so i did the prebuild and then xbuild Halcyon.sln and this is what i got, not sure but assuming this is a windows specific issue, and im building on / for linux.
is there a way around this?
XBuild Engine Version 14.0 Mono, Version 5.8.0.108 Copyright (C) 2005-2013 Various Mono authors
Build started 2/12/2018 2:30:27 PM.
Project "/root/halcyon/Halcyon.sln" (default target(s)): Target ValidateSolutionConfiguration: Building solution configuration "Debug|x64". Target Build: Project "/root/halcyon/OpenSim/Framework/OpenSim.Framework.csproj" (default target(s)): Target PrepareForBuild: Configuration: Debug Platform: x64 Target ResolveAssemblyReferences: /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : Reference 'System.DirectoryServices.AccountManagement' not resolved For searchpath {CandidateAssemblyFiles} Warning: {CandidateAssemblyFiles} not supported currently For searchpath /root/halcyon/bin/ Considered '/root/halcyon/bin/System.DirectoryServices.AccountManagement' as a file, but the file does not exist Considered '/root/halcyon/bin/System.DirectoryServices.AccountManagement.exe' as a file, but the file does not exist Considered '/root/halcyon/bin/System.DirectoryServices.AccountManagement.dll' as a file, but the file does not exist For searchpath {HintPathFromItem} HintPath attribute not found For searchpath {TargetFrameworkDirectory} Considered target framework dir /usr/lib/mono/4.5-api/, assembly named 'System.DirectoryServices.AccountManagement' not found. Considered target framework dir /usr/lib/mono/4.5-api//Facades/, assembly named 'System.DirectoryServices.AccountManagement' not found. For searchpath {PkgConfig} Considered System.DirectoryServices.AccountManagement, but could not find in any pkg-config files. For searchpath {GAC} Considered System.DirectoryServices.AccountManagement, but could not find in the GAC. For searchpath {RawFileName} Considered 'System.DirectoryServices.AccountManagement' as a file, but the file does not exist For searchpath ../../bin/ Considered '/root/halcyon/bin/System.DirectoryServices.AccountManagement' as a file, but the file does not exist Considered '/root/halcyon/bin/System.DirectoryServices.AccountManagement.exe' as a file, but the file does not exist Considered '/root/halcyon/bin/System.DirectoryServices.AccountManagement.dll' as a file, but the file does not exist Target GenerateSatelliteAssemblies: No input files were specified for target GenerateSatelliteAssemblies, skipping. Target _GenerateTargetFrameworkMonikerAttribute: Skipping target "_GenerateTargetFrameworkMonikerAttribute" because its outputs are up-to-date. Target CoreCompile: Tool /usr/lib/mono/4.5/csc.exe execution started with arguments: /noconfig /delaysign- /debug:portable /optimize- /out:obj/x64/Debug/OpenSim.Framework.dll ACL.cs AgentCircuitData.cs AgentCircuitManager.cs AgentPreferencesData.cs AgentUpdateArgs.cs Animation.cs AssemblyInfo.cs AssetAlreadyExistsException.cs AssetBase.cs AssetConfig.cs AssetLandmark.cs AssetRequest.cs AssetRequestInfo.cs AssetRequestToClient.cs AssetServerException.cs AssetStorage.cs AssetsCommon.cs AuthenticateResponse.cs AvatarAppearance.cs AvatarAttachment.cs AvatarConnectionState.cs AvatarPickerAvatar.cs AvatarPickerReplyAgentDataArgs.cs AvatarPickerReplyDataArgs.cs AvatarWearable.cs AvatarWearingArgs.cs BlockingMultiQueue.cs BlockingQueue.cs ByteBufferPool.cs Cache.cs CapsUtil.cs ChatTypeEnum.cs ChildAgentDataUpdate.cs ClientInfo.cs ClientManager.cs ColliderData.cs ConfigBase.cs ConfigSettings.cs ConfigurationMember.cs ConfigurationOption.cs Constants.cs Crypto.cs Culture.cs EstateBan.cs EstateSettings.cs EventData.cs FileCompressor.cs FixedSizeMRU.cs ForeignUserProfileData.cs FriendListItem.cs FriendRegionInfo.cs GridConfig.cs GridInstantMessage.cs GroupData.cs HGNetworkServersInfo.cs HttpExtensions.cs IAssetCache.cs IAssetLoader.cs IAssetReceiver.cs IAssetServer.cs IAvatarConnection.cs IChatMessageLogBackend.cs IClientAPI.cs IClientFileTransfer.cs ICommandConsole.cs IConsole.cs IGenericConfig.cs IImprovedAssetCache.cs IInventoryItem.cs ILoginServiceToRegionsConnector.cs IMoneyModule.cs IObjectCache.cs IPlugin.cs IRegionCommsListener.cs IRegionCreator.cs IRegionLoader.cs IRegistryCore.cs IScene.cs ISceneEntity.cs ISceneObject.cs ImmutableTimestampedItem.cs IndexedPriorityQueue.cs InventoryCollection.cs InventoryConfig.cs InventoryFolderBase.cs InventoryFolderImpl.cs InventoryItemBase.cs InventoryNodeBase.cs InventoryObjectMissingException.cs InventorySecurityException.cs InventoryStorageException.cs InventorySubFolderBase.cs ItemPermissionBlock.cs KeyframeAnimation.cs LLSDSerializationDictionary.cs LRUCache.cs LandData.cs LandStatReportItem.cs LandUpdateArgs.cs Location.cs LocklessQueue.cs Login.cs MainConsole.cs MapBlockData.cs MapItemReplyStruct.cs MessageServerConfig.cs MovingIntegerAverage.cs NeighbourInfo.cs NetworkServersInfo.cs OSChatMessage.cs ObjectPool.cs PIDFileManager.cs PacketPool.cs ParcelMediaCommandEnum.cs PluginLoader.cs PrimitiveBaseShape.cs PriorityQueue.cs ProviderRegistry.cs ProxyCodec.cs RateLimitingDetector.cs RegionCommsListener.cs RegionEnvironmentData.cs RegionHandshakeArgs.cs RegionInfo.cs RegionInfoForEstateMenuArgs.cs RegionSettings.cs RegionUpData.cs RegistryCore.cs RemotePresenceInfo.cs Remoting.cs RenderMaterials.cs ReplaceItemArgs.cs RequestAssetArgs.cs SerializableInventory.cs SimStats.cs SimpleRegionInfoSnapshot.cs SurfaceTouchEventArgs.cs TaskInventoryDictionary.cs TaskInventoryItem.cs Telehub.cs TextureRequestArgs.cs ThreadTracker.cs ThrottleOutPacketType.cs TimestampedItem.cs TrustManager.cs UndoStack.cs UnrecoverableAssetServerException.cs UnrecoverableInventoryStorageException.cs UpdateItemResponse.cs UpdateShapeArgs.cs UserAgentData.cs UserConfig.cs UserPreferencesData.cs UserProfileData.cs Util.cs ViewerEffectEventHandlerArg.cs Watchdog.cs sLLVector3.cs Client/IClientChat.cs Client/IClientCore.cs Client/IClientIM.cs Client/IClientIPEndpoint.cs Geom/Box.cs obj/x64/Debug/.NETFramework,Version=v4.5.AssemblyAttribute.cs /target:library /warnaserror- /unsafe- /checked- /define:"TRACE;DEBUG" /nostdlib /platform:x64 /reference:/root/halcyon/bin/BclExtras35.dll /reference:/root/halcyon/bin/C5.dll /reference:/root/halcyon/bin/LibreMetaverse.dll /reference:/root/halcyon/bin/LibreMetaverse.StructuredData.dll /reference:/root/halcyon/bin/LibreMetaverse.Types.dll /reference:/root/halcyon/bin/log4net.dll /reference:/root/halcyon/bin/Mono.Addins.dll /reference:/root/halcyon/bin/Nini.dll /reference:/root/halcyon/bin/protobuf-net.dll /reference:/root/halcyon/bin/SmartThreadPool.dll /reference:/usr/lib/mono/4.5-api/System.dll /reference:/usr/lib/mono/4.5-api/System.Data.dll /reference:/usr/lib/mono/4.5-api/System.Drawing.dll /reference:/usr/lib/mono/4.5-api/System.Web.dll /reference:/usr/lib/mono/4.5-api/System.Xml.dll /reference:/root/halcyon/bin/XmlRpcCS.dll /reference:/usr/lib/mono/4.5-api/System.Core.dll /reference:/usr/lib/mono/4.5-api//mscorlib.dll /warn:4 Microsoft (R) Visual C# Compiler version 2.3.2.61928 (ec1cde8b) Copyright (C) Microsoft Corporation. All rights reserved. Util.cs(57,14): error CS0234: The type or namespace name 'DirectoryServices' does not exist in the namespace 'System' (are you missing an assembly reference?) Task "Csc" execution -- FAILED Done building target "CoreCompile" in project "/root/halcyon/OpenSim/Framework/OpenSim.Framework.csproj".-- FAILED Done building project "/root/halcyon/OpenSim/Framework/OpenSim.Framework.csproj".-- FAILED Project "/root/halcyon/OpenSim/Region/Interfaces/OpenSim.Region.Interfaces.csproj" (default target(s)): Target PrepareForBuild: Configuration: Debug Platform: x64 Target GenerateSatelliteAssemblies: No input files were specified for target GenerateSatelliteAssemblies, skipping. Target _GenerateTargetFrameworkMonikerAttribute: Skipping target "_GenerateTargetFrameworkMonikerAttribute" because its outputs are up-to-date. Target CoreCompile: Skipping target "CoreCompile" because its outputs are up-to-date. Done building project "/root/halcyon/OpenSim/Region/Interfaces/OpenSim.Region.Interfaces.csproj". Project "/root/halcyon/OpenSim/ScriptEngine/Shared.Script/OpenSim.ScriptEngine.Shared.Script.csproj" (default target(s)): Target PrepareForBuild: Configuration: Debug Platform: x64 Target GenerateSatelliteAssemblies: No input files were specified for target GenerateSatelliteAssemblies, skipping. Target _GenerateTargetFrameworkMonikerAttribute: Skipping target "_GenerateTargetFrameworkMonikerAttribute" because its outputs are up-to-date. Target CoreCompile: Skipping target "CoreCompile" because its outputs are up-to-date. Done building project "/root/halcyon/OpenSim/ScriptEngine/Shared.Script/OpenSim.ScriptEngine.Shared.Script.csproj". Task "MSBuild" execution -- FAILED Done building target "Build" in project "/root/halcyon/Halcyon.sln".-- FAILED Done building project "/root/halcyon/Halcyon.sln".-- FAILED
Build FAILED.
Warnings:
/root/halcyon/Halcyon.sln (default targets) -> (Build target) -> /root/halcyon/OpenSim/Framework/OpenSim.Framework.csproj (default targets) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets (ResolveAssemblyReferences target) ->
Errors:
/root/halcyon/Halcyon.sln (default targets) -> (Build target) -> /root/halcyon/OpenSim/Framework/OpenSim.Framework.csproj (default targets) -> /usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->
Time Elapsed 00:00:03.4351690