[Mono-ue] Mono for UE build issues

Kei Nakazawa muo at muo.jp
Fri Oct 31 22:02:56 UTC 2014


Michael,

thanks for posting workaround. I tried this way:
First, removed the copy of libmonosgen-2.0.dylib and its symlink:
$ rm /usr/local/lib/libmonosgen-2.0.*

Then:
$ pwd
/Users/keinakazawa/Documents/workspace/UnrealEngine
$ install_name_tool -id '@rpath/libmonosgen-2.0.dylib'
Engine/Binaries/ThirdParty/EMono/bin/Mac/libmonosgen-2.0.dylib
$ cp Engine/Binaries/ThirdParty/EMono/bin/Mac/libmonosgen-2.0.dylib
Engine/Plugins/XamarinUE4/MonoRuntime/Source/ThirdParty/mono/lib/Mac/libmonosgen-2.0.dylib

And I switched back to Xcode and performed Cmd+R. But start-up sequence
failed with the same error I got previously:
dyld: can't resolve symbol _mono_set_signal_chaining in
/Users/keinakazawa/Documents/workspace/UnrealEngine/Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
because dependent dylib #10 could not be loaded

I did a quick survey to know what's going on and to find out quick fix.

$ otool -L
Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
| grep libmono
    /Users/michael/Mono/mono/../build/lib/libmonosgen-2.0.1.dylib
(compatibility version 2.0.0, current version 2.0.0)

So, it seems that changing hard coded libpath inside
UE4Editor-MonoRuntime-Mac-Debug.dylib would just be a workaround.
$ install_name_tool -change
"/Users/michael/Mono/mono/../build/lib/libmonosgen-2.0.1.dylib"
"@rpath/libmonosgen-2.0.dylib"
Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
$ cp Engine/Binaries/ThirdParty/EMono/bin/Mac/libmonosgen-2.0.dylib
Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/

After performing this tweak, It's working on my Mac. I still suspect
UE4Editor-MonoRuntime-Mac-Debug.dylib will be replace every time I build,
but putting `install_name_tool` on post-build script doesn't seem to be a
reasonable option..

Or am I missing something? i.e. Do I need to clean & rebuild after
`install_name_tool -id ...` command?

Regards, Kei.


2014-11-01 5:39 GMT+09:00 Michael Hutchinson <m.j.hutchinson at gmail.com>:

> As a workaround, try this:
>
> install_name_tool -id '@rpath/libmonosgen-2.0.dylib'
> Engine/Binaries/ThirdParty/EMono/bin/Mac/libmonosgen-2.0.dylib
> cp Engine/Binaries/ThirdParty/EMono/bin/Mac/libmonosgen-2.0.dylib
>
> Engine/Plugins/XamarinUE4/MonoRuntime/Source/ThirdParty/mono/lib/Mac/libmonosgen-2.0.dylib
>
> On 31 October 2014 16:22, Michael Hutchinson <m.j.hutchinson at gmail.com>
> wrote:
> > Looking into this right now, it looks like some local paths got baked
> > into the Mono dylibs we're shipping in the zip file.
> >
> > On 31 October 2014 16:14, Kei Nakazawa <muo at muo.jp> wrote:
> >> Hi,
> >>
> >> with UnrealAgent.cs & UnrealAgentConnection.cs, building UE 4 Editor
> >> finished w/o errors. Great forward step.
> >>
> >> But I ran into the error below once I perform Product -> Run (Cmd+R)
> and got
> >> UE4 splash screen (not reached to Unreal Project Browser).
> >>
> >> [2014.10.31-19.56.36:569][  0]BlueprintLog: New page: Editor Load
> >> dyld: lazy symbol binding failed: Symbol not found:
> >> _mono_trace_set_log_handler
> >>   Referenced from:
> >>
> /Users/keinakazawa/Documents/workspace/UnrealEngine/Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
> >>   Expected in: /usr/local/lib/libmonosgen-2.0.1.dylib
> >>
> >> dyld: Symbol not found: _mono_trace_set_log_handler
> >>   Referenced from:
> >>
> /Users/keinakazawa/Documents/workspace/UnrealEngine/Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
> >>   Expected in: /usr/local/lib/libmonosgen-2.0.1.dylib
> >>
> >>
> >> I have Mono 3.4.0 installed on /usr/local/Cellar/mono/3.4.0 and
> symlinked to
> >> /usr/local/lib/libmonosgen-2.0.1.dylib.
> >>
> >> I just temporarily unlinked this binary (because I won't get any
> troubles
> >> w/o this because I also have installed Mono by installer binary).
> >> $ brew unlink mono
> >>
> >> I performed Cmd+R again and got:
> >>
> >> dyld: lazy symbol binding failed: can't resolve symbol
> >> _mono_set_signal_chaining in
> >>
> /Users/keinakazawa/Documents/workspace/UnrealEngine/Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
> >> because dependent dylib #10 could not be loaded
> >> dyld: can't resolve symbol _mono_set_signal_chaining in
> >>
> /Users/keinakazawa/Documents/workspace/UnrealEngine/Engine/Plugins/XamarinUE4/MonoRuntime/Binaries/Mac/UE4Editor-MonoRuntime-Mac-Debug.dylib
> >> because dependent dylib #10 could not be loaded
> >>
> >> it seems UE4 Editor simply can't find Mono runtime lib (which is placed
> at
> >>
> Engine/Plugins/XamarinUE4/MonoRuntime/Source/ThirdParty/mono/lib/Mac/libmonosgen-2.0.dylib)
> >> this time.
> >>
> >> So I copied Mono for UE bundled libmonosgen-2.0.dylib to lib dir:
> >> $ cp ./MonoRuntime/Source/ThirdParty/mono/lib/Mac/libmonosgen-2.0.dylib
> >> /usr/local/lib/
> >> and symlinked as 2.0.1
> >> $ ln -s /usr/local/lib/libmonosgen-2.0.dylib
> >> /usr/local/lib/libmonosgen-2.0.1.dylib
> >> then performing Cmd+R to finally get to "Unreal Project Browser" screen.
> >>
> >> Hope it helps somebody and maybe improve build process :)
> >>
> >> Regards, Kei.
> >>
> >> 2014-11-01 1:00 GMT+09:00 Kei Nakazawa <muo at muo.jp>:
> >>>
> >>> Michael,
> >>> thanks for uploading gist.
> >>>
> >>> I changed
> >>>
> >>>
> Engine/Plugins/XamarinUE4/MonoMainDomain/UnrealEngine.MainDomain.csproj:
> >>> >  57     <Compile
> >>> >
> Include="..\XamarinStudio\XamarinStudio.Unreal\Projects\UnrealAgentConnection.cs">
> >>> >  67     <Compile
> >>> >
> Include="..\XamarinStudio\XamarinStudio.Unreal\Projects\UnrealAgent.cs">
> >>> to
> >>> >  57     <Compile Include="UnrealAgentConnection.cs">
> >>> >  67     <Compile Include="UnrealAgent.cs">
> >>> then put the files on
> https://gist.github.com/mhutch/8513c1893c8b61eb4d24
> >>> into the same directory and it seems build process continued (not yet
> >>> finished, but no error so far).
> >>>
> >>> Regards, Kei.
> >>>
> >>>
> >>> 2014-11-01 0:48 GMT+09:00 Michael Hutchinson <m.j.hutchinson at gmail.com
> >:
> >>>>
> >>>> In the meantime, here are the two missing files:
> >>>>
> >>>> https://gist.github.com/mhutch/8513c1893c8b61eb4d24
> >>>>
> >>>> On 31 October 2014 11:35, Michael Hutchinson <
> m.j.hutchinson at gmail.com>
> >>>> wrote:
> >>>> > Sorry, looks like we accidentally omitted a file. Working on a new
> >>>> > package right now.
> >>>> >
> >>>> > On 31 October 2014 11:21, Peter Petermann <ppetermann80 at gmail.com>
> >>>> > wrote:
> >>>> >> Alright, so i tried to follow the installation guide at
> >>>> >> http://mono-ue.github.io/installation.html
> >>>> >>
> >>>> >> and when i come to rebuilding with the patches applied, i get the
> >>>> >> error:
> >>>> >> Error 1 error : Expected C# dependency
> >>>> >>
> >>>> >>
> E:\dev\unreal\UnrealEngine\Engine\Intermediate\Build\Win64\Mono\..\..\..\..\Plugins\XamarinUE4\MonoMainDomain\..\XamarinStudio\XamarinStudio.Unreal\Projects\UnrealAgentConnection.cs
> >>>> >> to exist.
> >>>> >>
> >>>> >> looking closer at that path, that whole path doesn't exist
> >>>> >>
> >>>> >> It will find the \dev\unreal\UnrealEngine\Engine\Plugins\XamarinUE4
> >>>> >> path,
> >>>> >> but within that there is no subdirectory named XamarinStudio, thus
> no
> >>>> >> further subdirectories and no UnrealAgentConnections.cs
> >>>> >>
> >>>> >> i had a look at the zip that i could download after last nights
> mail,
> >>>> >> and it
> >>>> >> doesnt contain that folder either.
> >>>> >>
> >>>> >> best regards,
> >>>> >> PP
> >>>> >>
> >>>> >> 2014-10-31 16:19 GMT+01:00 Miguel de Icaza <miguel at xamarin.com>:
> >>>> >>>
> >>>> >>> Please do post the error messages.
> >>>> >>>
> >>>> >>> On Fri, Oct 31, 2014 at 7:26 AM, Peter Petermann
> >>>> >>> <ppetermann80 at gmail.com>
> >>>> >>> wrote:
> >>>> >>>>
> >>>> >>>> Hi,
> >>>> >>>>
> >>>> >>>> I'm having a build issue on windows (it seems there are files
> >>>> >>>> missing),
> >>>> >>>> can i post the error message here?
> >>>> >>>>
> >>>> >>>> regards,
> >>>> >>>> PP
> >>>> >>>>
> >>>> >>>> 2014-10-31 11:40 GMT+01:00 Kei Nakazawa <muo at muo.jp>:
> >>>> >>>>>
> >>>> >>>>> Hi,
> >>>> >>>>>
> >>>> >>>>> like many of you subscribed here, I received a download link of
> >>>> >>>>> preview
> >>>> >>>>> today. Then I gave a shot of building and see certain build
> error
> >>>> >>>>> on OSX.
> >>>> >>>>>
> >>>> >>>>> I just wanted to paste the error lines on this list but I
> stopped:
> >>>> >>>>>
> >>>> >>>>> I'm wondering about NDA I agreed for downloading the preview
> >>>> >>>>> package. It
> >>>> >>>>> prevents us from disclosing internal information publicly
> (because
> >>>> >>>>> of
> >>>> >>>>> course, it's a NDA). This list (mono-ue at lists.ximian.com ) is
> an
> >>>> >>>>> open one
> >>>> >>>>> and anybody w/o NDA can access archives. So, if we strictly
> follow
> >>>> >>>>> the NDA,
> >>>> >>>>> we shouldn't post details about build errors here. Instead, we
> >>>> >>>>> should post
> >>>> >>>>> error reports to some bugzilla or mailing lists privately.
> >>>> >>>>>
> >>>> >>>>> Do you have some guidelines?
> >>>> >>>>>
> >>>> >>>>> Regards, Kei.
> >>>> >>>>>
> >>>> >>>>> _______________________________________________
> >>>> >>>>> Mono-ue mailing list
> >>>> >>>>> Mono-ue at lists.ximian.com
> >>>> >>>>> http://lists.ximian.com/mailman/listinfo/mono-ue
> >>>> >>>>>
> >>>> >>>>
> >>>> >>>>
> >>>> >>>>
> >>>> >>>> --
> >>>> >>>> Peter Petermann
> >>>> >>>> Email: ppetermann80 at gmail.com - get my public PGP key from SKS
> >>>> >>>> Keyservers
> >>>> >>>> PGP Key:
> >>>> >>>>
> >>>> >>>>
> http://pool.sks-keyservers.net:11371/pks/lookup?op=get&search=0x0E6DBD675836A5C7
> >>>> >>>>
> >>>> >>>>
> >>>> >>>>
> >>>> >>>> --
> >>>> >>>> Peter Petermann
> >>>> >>>> Email: ppetermann80 at gmail.com - get my public PGP key from SKS
> >>>> >>>> Keyservers
> >>>> >>>> PGP Key:
> >>>> >>>>
> >>>> >>>>
> http://pool.sks-keyservers.net:11371/pks/lookup?op=get&search=0x0E6DBD675836A5C7
> >>>> >>>>
> >>>> >>>> 2014-10-31 11:40 GMT+01:00 Kei Nakazawa <muo at muo.jp>:
> >>>> >>>>>
> >>>> >>>>> Hi,
> >>>> >>>>>
> >>>> >>>>> like many of you subscribed here, I received a download link of
> >>>> >>>>> preview
> >>>> >>>>> today. Then I gave a shot of building and see certain build
> error
> >>>> >>>>> on OSX.
> >>>> >>>>>
> >>>> >>>>> I just wanted to paste the error lines on this list but I
> stopped:
> >>>> >>>>>
> >>>> >>>>> I'm wondering about NDA I agreed for downloading the preview
> >>>> >>>>> package. It
> >>>> >>>>> prevents us from disclosing internal information publicly
> (because
> >>>> >>>>> of
> >>>> >>>>> course, it's a NDA). This list (mono-ue at lists.ximian.com ) is
> an
> >>>> >>>>> open one
> >>>> >>>>> and anybody w/o NDA can access archives. So, if we strictly
> follow
> >>>> >>>>> the NDA,
> >>>> >>>>> we shouldn't post details about build errors here. Instead, we
> >>>> >>>>> should post
> >>>> >>>>> error reports to some bugzilla or mailing lists privately.
> >>>> >>>>>
> >>>> >>>>> Do you have some guidelines?
> >>>> >>>>>
> >>>> >>>>> Regards, Kei.
> >>>> >>>>>
> >>>> >>>>> _______________________________________________
> >>>> >>>>> Mono-ue mailing list
> >>>> >>>>> Mono-ue at lists.ximian.com
> >>>> >>>>> http://lists.ximian.com/mailman/listinfo/mono-ue
> >>>> >>>>>
> >>>> >>>>
> >>>> >>>>
> >>>> >>>>
> >>>> >>>> --
> >>>> >>>> Peter Petermann
> >>>> >>>> Email: ppetermann80 at gmail.com - get my public PGP key from SKS
> >>>> >>>> Keyservers
> >>>> >>>> PGP Key:
> >>>> >>>>
> >>>> >>>>
> http://pool.sks-keyservers.net:11371/pks/lookup?op=get&search=0x0E6DBD675836A5C7
> >>>> >>>>
> >>>> >>>> _______________________________________________
> >>>> >>>> Mono-ue mailing list
> >>>> >>>> Mono-ue at lists.ximian.com
> >>>> >>>> http://lists.ximian.com/mailman/listinfo/mono-ue
> >>>> >>>>
> >>>> >>>
> >>>> >>
> >>>> >>
> >>>> >>
> >>>> >> --
> >>>> >> Peter Petermann
> >>>> >> Email: ppetermann80 at gmail.com - get my public PGP key from SKS
> >>>> >> Keyservers
> >>>> >> PGP Key:
> >>>> >>
> >>>> >>
> http://pool.sks-keyservers.net:11371/pks/lookup?op=get&search=0x0E6DBD675836A5C7
> >>>> >>
> >>>> >> _______________________________________________
> >>>> >> Mono-ue mailing list
> >>>> >> Mono-ue at lists.ximian.com
> >>>> >> http://lists.ximian.com/mailman/listinfo/mono-ue
> >>>> >>
> >>>> >
> >>>> >
> >>>> >
> >>>> > --
> >>>> > Michael Hutchinson ~ https://mhut.ch
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> Michael Hutchinson ~ https://mhut.ch
> >>>> _______________________________________________
> >>>> Mono-ue mailing list
> >>>> Mono-ue at lists.ximian.com
> >>>> http://lists.ximian.com/mailman/listinfo/mono-ue
> >>>
> >>>
> >>
> >
> >
> >
> > --
> > Michael Hutchinson ~ https://mhut.ch
>
>
>
> --
> Michael Hutchinson ~ https://mhut.ch
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-ue/attachments/20141101/34c023f8/attachment-0001.html>


More information about the Mono-ue mailing list