I would like to know if someone here already try to do CI for a MonoGame project for iOS builds.
I don’t have any Mac to compile my project on iOS but some of my friends have iPhones and I would like to let them play to my Android game too.
Searching on the net, I found Bitrise that seems pretty good (better interface than Travis or AppVeyor IMO) and allow us to make iOS builds for free. It even supports Xamarin directly!
I tried to compile a vanilla MonoGame iOS project using Bitrise, but it fails because of missing MonoGame library.
I know that I need to setup a bunch of things before to make it works (I did it for Android some months ago), and I know it’s a very time consuming task. That’s why I would like to know if any of you has already tried to do that.
I’ve used BitRise for android & iOS Xamarin projects, but not MonoGame… have you tried using the MonoGame nuget packages instead of the installation?
I’ve just tested to install MonoGame iOS through NuGet, but it doesn’t seem to work, I got this error:
+------------------------------------------------------------------------------+
| (5) xamarin-archive@1.5.0 |
+------------------------------------------------------------------------------+
| id: xamarin-archive |
| version: 1.5.0 |
| collection: https://github.com/bitrise-io/bitrise-steplib.git |
| toolkit: go |
| time: 2017-10-13T14:56:31-07:00 |
+------------------------------------------------------------------------------+
| |
INFO[14:56:31] * [OK] Step dependency (go) installed, available.
Configs:
- XamarinSolution: MonoGame-iOS/MonoGame-iOS.sln
- XamarinConfiguration: Release
- XamarinPlatform: iPhone
- ProjectTypeWhitelist: ios
Experimental Configs:
- AndroidCustomOptions:
- IOSCustomOptions:
- TvOSCustomOptions:
- MacOSCustomOptions:
- BuildTool: msbuild
Other Configs:
- DeployDir: /Users/vagrant/deploy
Building all projects in solution: MonoGame-iOS/MonoGame-iOS.sln
Building project: MonoGame-iOS
$ "/Library/Frameworks/Mono.framework/Versions/Current/Commands/msbuild" "/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS.sln" "/target:Build" "/p:SolutionDir=/Users/vagrant/git/MonoGame-iOS" "/p:Configuration=Release" "/p:Platform=iPhone" "/p:ArchiveOnBuild=true" "/p:BuildIpa=true"
Microsoft (R) Build Engine version 15.3.0.0 (d15.3/17f02c2 Thu Jul 20 17:17:06 EDT 2017) for Mono
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 10/13/2017 2:56:35 PM.
Project "/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS.sln" on node 1 (Build target(s)).
ValidateSolutionConfiguration:
Building solution configuration "Release|iPhone".
Project "/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS.sln" (1) is building "/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS/MonoGame-iOS.csproj" (2) on node 1 (default targets).
/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS/MonoGame-iOS.csproj(128,11): error MSB4226: The imported project "/Library/Frameworks/Mono.framework/Versions/5.2.0/lib/mono/xbuild/MonoGame/v3.0/MonoGame.Content.Builder.targets" was not found. Also, tried to find "MonoGame/v3.0/MonoGame.Content.Builder.targets" in the fallback search path(s) for $(MSBuildExtensionsPath) - "/Library/Frameworks/Mono.framework/External/xbuild/" . These search paths are defined in "/Library/Frameworks/Mono.framework/Versions/5.2.0/lib/mono/msbuild/15.0/bin/MSBuild.dll.config". Confirm that the path in the <Import> declaration is correct, and that the file exists on disk in one of the search paths.
Done Building Project "/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS/MonoGame-iOS.csproj" (default targets) -- FAILED.
Done Building Project "/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS.sln" (Build target(s)) -- FAILED.
Build FAILED.
"/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS.sln" (Build target) (1) ->
"/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS/MonoGame-iOS.csproj" (default target) (2) ->
/Users/vagrant/git/MonoGame-iOS/MonoGame-iOS/MonoGame-iOS.csproj(128,11): error MSB4226: The imported project "/Library/Frameworks/Mono.framework/Versions/5.2.0/lib/mono/xbuild/MonoGame/v3.0/MonoGame.Content.Builder.targets" was not found. Also, tried to find "MonoGame/v3.0/MonoGame.Content.Builder.targets" in the fallback search path(s) for $(MSBuildExtensionsPath) - "/Library/Frameworks/Mono.framework/External/xbuild/" . These search paths are defined in "/Library/Frameworks/Mono.framework/Versions/5.2.0/lib/mono/msbuild/15.0/bin/MSBuild.dll.config". Confirm that the path in the <Import> declaration is correct, and that the file exists on disk in one of the search paths.
0 Warning(s)
1 Error(s)
It’s like if the Content builder was not installed with the NuGet package.