hello,
i have just subscribed to that list in order to help advancing
in my mono based duties and for helping mono people in their targets.

my setup:
at present i am having an ARM Cortex-A8 (TI OMAP3) based portable system as my 
development target. most of the compilation is based on an x86 Linux host 
whilst having the option for using a wider bunch of development tools on the 
target. i am using the OpenEmbedded config flavour DISTRO="angstrom-2008.1" as 
my development base. some packages got specifically added or upgraded for good 
reasons to the most recent release ones (or what was latest at time of setup, 
<4 weeks), e.g. xli, busybox, cairo and gdiplus.

problem:
right now i am using the daily snapshot of mono dated 2010-08-02 in a custom 
bitbake setup (made this work on my own) for cross compilation using this set 
of switches:
EXTRA_OECONF_arm += " --disable-mcs-build --with-mcs-docs=no --with-sgen 
--enable-small-config --with-tls=pthread --with-sigaltstack=no 
CFLAGS=-DARM_FPU_NONE"

question:
what would be the recommended best FPU settings for my case?
(there is not much of documentation on how to detect the FPU type on the target 
and what options are would match it)

problem (cont'ed):
when copying the very same mono tarball to the target and using its contents by 
a "./configure" and "make check" sequence i first had to remove all "/lib/*.la" 
files (found that hint somewhere on the web) and i had further to create a 
symlink using this "ln -s /usr/lib /usr/local/lib" to make this invocation 
basically run. (maybe i did a bit more trivia, cant remember...)

when doing the check now i am seeing this:

mono: pthread_getattr_np.c:74: pthread_getattr_np: Assertion `abs (thread->pid) 
== thread->tid' failed.

agreed that pid and tid should be the same in many cases e.g. for most of 
current Linux targets, but might not be true when its above the mono layer or 
when the hosting platform is different, e.g. Win32. (i might be wrong with that 
my understanding for the case, i have not digged into that that enough for 
now.) my best /guess/ so far was "man 3 pthread_getattr_np". hmm.

question:
whats wrong here?
* can it be in my setup of mono? (i have not added any option to configure - if 
yes, what should i add and why?)
* is it in the test suite itself? (is the mono suite manipulating too much 
thread items it should never touch at all?)
* is it in the specific pairing of mono check with the rest of the operating 
system? (might there be something odd with the pthreads lib or similar? is mono 
not matching the pthreads setup? is the path leading to the desired mono check 
missing some important system aspect? normally i would expect a configured 
native build taking good care of the attributes of the embedding environment.)

in any case i would rather prefer a fix that by a change in the test suite or 
its configuration than altering the distributions cross build (even if there is 
no hard need for that, just a preference). at least for now hesitate a bit to 
permanently disable those pid/tid check in pthreads.

hoping for your valuable hints,
Alex.

PS: here is a snippet from a "make -i check" with a bit more context
 
make test-local
make[8]: Entering directory `/mnt_data/mono-20100802/mcs/class/System'
MCS     [net_2_0] System.dll
mono: pthread_getattr_np.c:74: pthread_getattr_np: Assertion `abs (thread->pid) 
== thread->tid' failed.
make[8]: [../../class/lib/net_2_0/tmp/System.dll] Error 127 (ignored)
:  -R ../../class/lib/net_2_0/tmp/System.dll ./../../class/mono.snk
cp: can't stat './../../class/lib/net_2_0/tmp/System.dll': No such file or 
directory
make[8]: [../../class/lib/net_2_0/System.dll] Error 1 (ignored)
:  -v ../../class/lib/net_2_0/System.dll
-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome

_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list

Reply via email to