[Mono-list] io-layer naming issues on OSX.

Andreas Färber andreas.faerber at web.de
Tue Oct 24 12:24:33 EDT 2006


> Am 17.10.2006 um 23:52 schrieb Robert Jordan:
>> That's rather a cookbook than a self-containing test case ;-)
>> Please provide the complete Xcode project.
>> I tried an own Cocoa app and a Cocoa bundle. Both were working,
>> the latter with the environ 'trick'. So before starting to rename
>> those symbols, I'd like to be convinced that it can't be fixed by
>> removing/adding some smart linker option.
> Attached is a new simplified Xcode project, compiled on PowerPC for  
> ppc, which works on ppc but not on i386 when re-compiled on Intel  
> for i386. Installation instructions still apply but otherwise "self- 
> contained" and hopefully self-explaining!
> Btw, as a side effect changing the linker option indeed resulted in  
> an additional warning for _GetCurrentThread appearing.

So far I haven't received any feedback on the test case I submitted...

I have done the following in the meantime:
- manually applied Allan Hsu's patch to allow compiling on Intel OS X  
w/ Xcode 2.4 (compiled, but test still failed)
- manually applied your symbols.h etc. patch - compiled, but test  
still fails!

(didn't find a way to apply the patch automagically; svn diff only  
creates one and svn help wasn't helpful)

I re-ran autogen.sh, then make, then make install; I removed the  
Mono.framework reference in the Xcode project and replaced it with a  
reference to libmono.dylib in the new Mono. The plugin was cleanly  
compiled for each Mono. And I tried a second time using make clean,  
make, make install.

So all in all until now the patches and suggestions have helped build  
Mono at all on Intel, improve the quality of embedding Mono on OS X  
by eliminating the _environ error and the duplicate symbols warnings  
- but unfortunately my plugin's mono_thread_attach assertion failure  

Your symbols.h patch did appear to rename the functions via #defines,  
no? [what did your remark above about starting to rename mean then?]  
It should no longer be a name clash now, or could it still be? If my  
test case for some reason does work on your system then I'd really  
like to hear about it! Maybe I missed something.


More information about the Mono-list mailing list