[Mono-osx] OS X mkbundle --static --deps fails

Ulrich Hertlein u.hertlein at gmail.com
Thu May 24 03:58:03 UTC 2012


Hi guys,

this was also reported on Mar 27 2012 by 'rberk', but unfortunately
there was no response at the time...

When trying to build a static bundle of my .exe I'm getting linker errors:

$ export AS="as -arch i386" CC="clang -arch i386"
$ mkbundle -o Copy-bin --deps --static ManagedLibraries/Copy.exe
ManagedLibraries/X*.dll

Compiling:
as -arch i386 -o temp.o temp.s
clang -arch i386 -o Copy-bin -Wall `pkg-config --cflags mono-2` temp.c
 `pkg-config --libs-only-L mono-2` `pkg-config --variable=libdir
mono-2`/libmono-2.0.a `pkg-config --libs-only-l mono-2 | sed -e
"s/\-lmono-2.0 //"` temp.o
temp.c: In function 'install_dll_config_files':
temp.c:153: warning: pointer targets in passing argument 2 of
'mono_register_config_for_assembly' differ in signedness
Undefined symbols for architecture i386:
 "_CFLocaleCopyCurrent", referenced from:
     _ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_current_locale
in libmono-2.0.a(libmonoruntime_la-locales.o)
 "_CFLocaleGetIdentifier", referenced from:
     _ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_current_locale
in libmono-2.0.a(libmonoruntime_la-locales.o)
 "_CFStringGetLength", referenced from:
     _ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_current_locale
in libmono-2.0.a(libmonoruntime_la-locales.o)
 "_CFStringGetMaximumSizeForEncoding", referenced from:
     _ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_current_locale
in libmono-2.0.a(libmonoruntime_la-locales.o)
 "_CFStringGetCString", referenced from:
     _ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_current_locale
in libmono-2.0.a(libmonoruntime_la-locales.o)
 "_CFRelease", referenced from:
     _ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_current_locale
in libmono-2.0.a(libmonoruntime_la-locales.o)
 "_locale_charset", referenced from:
     _monoeg_g_get_charset in libmono-2.0.a(libeglib_la-gunicode.o)
 "_iconv_open", referenced from:
     _monoeg_g_convert in libmono-2.0.a(libeglib_la-gunicode.o)
 "_iconv", referenced from:
     _monoeg_g_convert in libmono-2.0.a(libeglib_la-gunicode.o)
 "_iconv_close", referenced from:
     _monoeg_g_convert in libmono-2.0.a(libeglib_la-gunicode.o)
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
[Fail]

This is on Lion (10.7.4), Xcode 4.3.2, Mono 2.10.9 (tarball Mon May  7
20:25:51 EDT 2012).
Any ideas on how to fix this?

Cheers,
/uli


More information about the Mono-osx mailing list