[Mono-osx] Dumbarton and C# subclasses

Hawston LLH hawston at gmail.com
Thu May 17 22:51:15 EDT 2007


Hi Allan,

I happen to look at an earlier post, and found out a "work around", that is
on top of setting "Cross Develop Target ( main project name - Cmd-I -
General Tab) to Current Mac OS ", also, add "-undefined dynamic_lookup" flag
in the "Other Linker Flags" build setting. (
http://lists.ximian.com/pipermail/mono-osx/2007-February/000828.html)

Although dumbarton is successfully built with mono1.2.4, however, it seems
that Generic List is not supported. What I did is simply add a declaration
of "List<string> str;" in the CurrencyConverter class in the standard
dumbarton example. The example project build successfully but run with
following error:

** (process:284): WARNING **: The class
System.Collections.Generic.List`1could not be loaded, used in
mscorlib, Version=
2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

In summary, my own observations are:
(1) mono1.2.3.1 and mono1.2.4 supports Generic List : I tried compile a test
program with 'gmcs' and run it with 'mono' in Terminal, it works fine.

(2) Dumbarton is successfully built with official mono release 1.2.3.1 and
1.2.4, if I did what I mentioned of 'work around' on top. However, by using
dumbarton as bridge, Generic List "could not be loaded". Even with the
customized "svn-r64487-universal" version of mono, the same problem exists.

Allan, I know you are currently busy, and might not able to look into this
issue immediately. However, with your expertise, you may provide me some
possible approaches to tackle this problem on my own. Any help is greatly
appreciated.

Hawston


On 5/17/07, Hawston LLH <hawston at gmail.com> wrote:
>
> Doing so, can solve the locating the libglib-2.0.0.dylib issue, however,
> there are still 2 errors remained:
>
> Undefined symbols:
> _environ
> internal link edit command failed
>
> hawston
>
>
>  On 5/17/07, Eoin Norris <e.norris at mac.com> wrote:
> >
> >
> > It is a bit strange that the linker is expecting libglib-2.0.0.dylib
> > to be  in /Developer/SDKs/MacOSX10.4u.sdk/Library/Frameworks/
> > Mono.framework/Versions/1.2.4/lib/libglib-2.0.0.dylib rather than
> >
> > Library/Frameworks/Mono.framework/Versions/1.2.4/lib/libglib-2.0.0.dylib
> >
> >
> > You could try change the Cross Develop Target ( main project name -
> > Cmd-I - General Tab) to Current Mac OS rather than the MacOSX!014.4u.sdk
> >
> >
> > -- Eoin
> >
> >
> > On 17 May 2007, at 04:43, Hawston LLH wrote:
> >
> > > hi Allan,
> > >
> > > thanks for your prompt reply, below are the error message when i was
> > > trying to compile dumbarton with mono1.2.4, in fact, i face the same
> > > problem with mono1.2.3.1. Compilation is ok, but the linking got
> > > error.
> > >
> > > ld: warning can't open dynamic library:
> > > /Developer/SDKs/MacOSX10.4u.sdk/Library/Frameworks/Mono.framework/
> > > Versions/1.2.4/lib/libglib-2.0.0.dylib
> > > referenced from:
> > > /Library/Frameworks/Mono.framework/Versions/Current/lib/
> > > libgmodule-2.0.dylib
> > > (checking for undefined symbols may be affected) (No such file or
> > > directory, errno = 2)
> > > ld: warning multiple definitions of symbol _catch_exception_raise
> > > /Users/LingHao/Desktop/Dumbarton/src/build/Dumbarton.build/Release/
> > > Dumbarton.build/Objects-normal/ppc/DBMonoEnvironment.o
> > > definition of _catch_exception_raise in section (__TEXT,__text)
> > > /Library/Frameworks/Mono.framework/Mono(mini.o) definition of
> > > _catch_exception_raise
> > > ld: warning multiple definitions of symbol _GetCurrentThread
> > > /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/
> > > CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/
> > > Versions/A/CarbonCore( ProjectBuilderMasterObjectFile.o)
> > > definition of _GetCurrentThread
> > > /Library/Frameworks/Mono.framework/Mono(threads.o) definition of
> > > _GetCurrentThread
> > > ld: warning multiple definitions of symbol ___freedtoa
> > > /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/powerpc-apple-
> > > darwin8/4.0.1/../../../libm.dylib(gdtoa-dmisc.So)
> > > definition of ___freedtoa
> > > /Library/Frameworks/Mono.framework/Mono(strtod.o) definition of
> > > ___freedtoa
> > > ld: warning multiple definitions of symbol _locale_charset
> > > /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/powerpc-apple-
> > > darwin8/4.0.1/../../../libiconv.dylib(localcharset.o)
> > > definition of _locale_charset
> > > /Library/Frameworks/Mono.framework/Versions/Current/lib/
> > > libintl.dylib(localcharset.o)
> > > definition of _locale_charset
> > > ld: Undefined symbols:
> > > _environ
> > > _g_free referenced from libgthread-2.0.0.600 expected to be defined in
> > > /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_log referenced from libgthread-2.0.0.600 expected to be defined in
> > > /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_malloc referenced from libgthread-2.0.0.600 expected to be defined
> > > in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_malloc0 referenced from libgthread-2.0.0.600 expected to be defined
> > > in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_realloc referenced from libgthread-2.0.0.600 expected to be defined
> > > in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_return_if_fail_warning referenced from libgthread-2.0.0.600
> > > expected to be defined in
> > > /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_set_error referenced from libgthread-2.0.0.600 expected to be
> > > defined in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_strerror referenced from libgthread-2.0.0.600 expected to be
> > > defined in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_thread_error_quark referenced from libgthread-2.0.0.600 expected to
> > > be defined in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_thread_functions_for_glib_use referenced from libgthread-2.0.0.600
> > > expected to be defined in
> > > /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_thread_init_glib referenced from libgthread-2.0.0.600 expected to
> > > be defined in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_thread_self referenced from libgthread-2.0.0.600 expected to be
> > > defined in /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_thread_use_default_impl referenced from libgthread-2.0.0.600
> > > expected to be defined in
> > > /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > _g_threads_got_initialized referenced from libgthread-2.0.0.600
> > > expected to be defined in
> > > /Library/Frameworks/Mono.framework/Versions/1.2.4/lib/
> > > libglib-2.0.0.dylib
> > > /usr/bin/libtool: internal link edit command failed
> > >
> > > hawston
> > >
> > >
> > >
> > > On 5/17/07, Allan Hsu <allan at counterpop.net > wrote:
> > >> I'll try to look into this sometime soon, but I'm a little busy right
> > >> now. You should be able to compile Dumbarton out of SVN against the
> > >> 1.2.3.1 Mono release; my custom universal builds should no longer be
> > >> necessary.
> > >>
> > >> What sort of build errors are you getting with 1.2.4?
> > >>
> > >>         -Allan
> > >> --
> > >> Allan Hsu <allan at counterpop dot net>
> > >> 1E64 E20F 34D9 CBA7 1300  1457 AC37 CBBB 0E92 C779
> > >>
> > >>
> > >> On May 16, 2007, at 1:16 AM, Hawston LLH wrote:
> > >>
> > >>> anyone successfully build Dumbarton with latest Mono 1.2.4?
> > >>> Apparently, I can only manage to compile Dumbarton with the Allen
> > >>> Hsu given version svn-r64487-universal of mono http://
> > >>> lists.ximian.com/pipermail/mono-osx/2006-September/000601.html.
> > >>> However, this version of mono seem not work on Generic List. any
> > >>> clue?
> > >>>
> > >>> hawston
> > >>>
> > >>>
> > >>> On 5/13/07, Hawston LLH <hawston at gmail.com> wrote:
> > >>> First, i noticed 2 possible errors.
> > >>>
> > >>> 1) you miss out namespace for the class
> > >>> MonoClass *monoClass = [DBMonoEnvironment
> > >>> monoClassWithName:"<missing namespace>.B" fromAssembly:myAssembly];
> > >>>
> > >>> 2) you miss out brackets for the function
> > >>> MonoString *name = (MonoString*)[self invokeMethod:"Name()"
> > >>> withNumArgs:
> > >>> 0];
> > >>>
> > >>> regards
> > >>> hawston
> > >>>
> > >>>
> > >>> On 5/13/07, Will Cosgrove <will at everydaysoftware.net > wrote: Hi
> > >>> All,
> > >>> I'm new to the list so I apologize in advance if this topic has been
> > >>> covered.  I'm currently prototyping some C#/Cocoa code for
> > >>> feasibility and I have run into a bit of a snag.  I have a C# class
> > >>> which I subclass.  Let's call them class A and class B : A.  I
> > >>> create
> > >>> the bridge class using code from the Dumbarton sample code like so:
> > >>>
> > >>> [...]
> > >>> MonoClass *monoClass = [DBMonoEnvironment monoClassWithName:"B"
> > >>> fromAssembly:myAssembly];
> > >>>
> > >>> The problem I'm having is when I try to invoke any methods in the
> > >>> super class, A, Dumbarton can't find those methods and I get the
> > >>> following error:
> > >>>
> > >>> 2007-05-12 22:58:29.267 MyTestApplication[15491] Dumbarton could not
> > >>> find the method Name
> > >>> 2007-05-12 22:58:29.267 MyTestApplication[15491] *** Uncaught
> > >>> exception: <DBMethodNotFound> Dumbarton could not find the method
> > >>> Name
> > >>>
> > >>> The way I'm invoking the method Name is like so:
> > >>>
> > >>> MonoString *name = (MonoString*)[self invokeMethod:"Name"
> > >>> withNumArgs:
> > >>> 0];
> > >>>
> > >>> So I guess my question is, is this possible using Dumbarton and if
> > >>> so, how does one go about getting it to work. =)
> > >>>
> > >>> Thanks in advance,
> > >>> Will C.
> > >>> _______________________________________________
> > >>> Mono-osx mailing list
> > >>> Mono-osx at lists.ximian.com
> > >>> http://lists.ximian.com/mailman/listinfo/mono-osx
> > >>>
> > >>>
> > >>> _______________________________________________
> > >>> Mono-osx mailing list
> > >>> Mono-osx at lists.ximian.com
> > >>> http://lists.ximian.com/mailman/listinfo/mono-osx
> > >>
> > >>
> > > _______________________________________________
> > > Mono-osx mailing list
> > > Mono-osx at lists.ximian.com
> > > http://lists.ximian.com/mailman/listinfo/mono-osx
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-osx/attachments/20070518/3b1cfff9/attachment-0001.html 


More information about the Mono-osx mailing list