Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
I dropped gcc7 two years back and using whatever latest version MacPorts has, they work fine and certainly better than gcc7 (there were a number of ppc-specific bugs fixed recently, and fixes were not back-ported to gcc7).
Right now built gcc15 from the current master and running Fortran test suite :)

I will try building Mono over the weekend. I remember it did not build for me earlier but not sure the failure was identical.

For the record, did you change anything as compared to my branch? (I mean, you could also have fixed something which is unfixed there, that will be useful.)
I have to -I$(top_srcdir)/libatomic_ops/src to the makefile of bdwgc (or whatever the garbage collector is). I also commented out some lines that fail to compile because of pthread_getname_np, which I think is just some logging.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
I have to -I$(top_srcdir)/libatomic_ops/src to the makefile of bdwgc (or whatever the garbage collector is). I also commented out some lines that fail to compile because of pthread_getname_np, which I think is just some logging.

I wonder if we may use instead https://ports.macports.org/port/boehmgc

It originally supported PowerPC, so unless Mono upstream did something specific to break it, it should build.
I made a port earlier for `iv`, which uses its own bundled `bdwgc`, and I only had to patch arm64 support in: https://github.com/macports/macports-ports/blob/master/devel/iv/files/patch-gc-arm64.diff
PowerPC was fine as-is.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
I should probably not do this in the middle of my lunch break at work... I was using your project on github but I didn't have the right branch selected.

Ok... I tried again with the right branch this time..

Just to see how far the compilation would go I changed


Code:
static void G_GNUC_UNUSED
sgen_client_binary_protocol_empty (gpointer start, size_t size)
{
#if 0
    if (sgen_ptr_in_nursery (start))
        MONO_GC_NURSERY_SWEPT ((mword)start, size);
    else
        MONO_GC_MAJOR_SWEPT ((mword)start, size);
#endif
}

and in


Code:
static void
dump_threads (void)
{
    MonoThreadInfo *cur = mono_thread_info_current ();

    g_async_safe_printf ("STATE CUE CARD: (? means a positive number, usually 1 or 2, * means any number)\n");
    g_async_safe_printf ("\t0x0\t- starting (GOOD, unless the thread is running managed code)\n");
    g_async_safe_printf ("\t0x1\t- detached (GOOD, unless the thread is running managed code)\n");
    g_async_safe_printf ("\t0x2\t- running (BAD, unless it's the gc thread)\n");
    g_async_safe_printf ("\t0x?03\t- async suspended (GOOD)\n");
    g_async_safe_printf ("\t0x?04\t- self suspended (GOOD)\n");
    g_async_safe_printf ("\t0x?05\t- async suspend requested (BAD)\n");
    g_async_safe_printf ("\t0x6\t- blocking (BAD, unless there's no suspend initiator)\n");
    g_async_safe_printf ("\t0x?07\t- blocking async suspended (GOOD)\n");
    g_async_safe_printf ("\t0x?08\t- blocking self suspended (GOOD)\n");
    g_async_safe_printf ("\t0x?09\t- blocking suspend requested (BAD in coop; GOOD in hybrid)\n");

    FOREACH_THREAD_SAFE_ALL (info) {
#ifdef TARGET_MACH
        //char thread_name [256] = { 0 };
        //pthread_getname_np (mono_thread_info_get_tid (info), thread_name, 255);

        //g_async_safe_printf ("--thread %p id %p [%p] (%s) state %x  %s\n", info, (void *) mono_thread_info_get_tid (info), (void*)(size_t)info->native_handle, thread_name, info->thread_state, info == cur ? "GC INITIATOR" : "" );
#else
        g_async_safe_printf ("--thread %p id %p [%p] state %x  %s\n", info, (void *) mono_thread_info_get_tid (info), (void*)(size_t)info->native_handle, info->thread_state, info == cur ? "GC INITIATOR" : "" );
#endif
    } FOREACH_THREAD_SAFE_END
}

And I get this error:
Code:
/bin/sh ../../libtool  --tag=CC   --mode=link /opt/local/bin/gcc-mp-7 -I../.. -I../../mono/eglib -I../../mono/eglib     -fvisibility=hidden  -Wall -Wunused -Wmissing-declarations -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value -Wno-attributes -I/opt/local/include/LegacySupport -Wmissing-prototypes -Wstrict-prototypes -Wnested-externs -Wno-format-zero-length -Wc++-compat -std=gnu99 -fno-strict-aliasing -fwrapv -DMONO_DLL_EXPORT -Wno-unused-but-set-variable -g -Werror=incompatible-pointer-types -Werror=return-type -Werror-implicit-function-declaration    -framework CoreFoundation -framework Foundation  -L/opt/local/lib -lMacportsLegacySupport -latomic -Wl,-bind_at_load -o mono-boehm  libmain_a-main.o libmini.la libmono-ee-interp.la libmono-dbg.la ../../mono/metadata/libmonoruntime.la ../../mono/utils/libmonoutils.la ../../mono/eglib/libeglib.la ../../external/bdwgc/libgc.la ../../mono/eglib/libeglib.la     -lm  -lpthread
libtool: link: /opt/local/bin/gcc-mp-7 -I../.. -I../../mono/eglib -I../../mono/eglib -fvisibility=hidden -Wall -Wunused -Wmissing-declarations -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value -Wno-attributes -I/opt/local/include/LegacySupport -Wmissing-prototypes -Wstrict-prototypes -Wnested-externs -Wno-format-zero-length -Wc++-compat -std=gnu99 -fno-strict-aliasing -fwrapv -DMONO_DLL_EXPORT -Wno-unused-but-set-variable -g -Werror=incompatible-pointer-types -Werror=return-type -Werror-implicit-function-declaration -Wl,-bind_at_load -o mono-boehm libmain_a-main.o  -framework CoreFoundation -framework Foundation -L/opt/local/lib ./.libs/libmini.a ./.libs/libmono-ee-interp.a ./.libs/libmono-dbg.a ../../mono/metadata/.libs/libmonoruntime.a -lz ../../mono/utils/.libs/libmonoutils.a ../../external/bdwgc/.libs/libgc.a ../../mono/eglib/.libs/libeglib.a -lMacportsLegacySupport /opt/local/lib/gcc7/libatomic.dylib -lm -lpthread -pthread
error: Could not compile reconstructed dtrace script:

typedef int uintptr_t;

provider mono {
    probe ves__init__begin();
    probe ves__init__end();
    probe gc__world__stop__begin();
    probe gc__world__stop__end();
    probe gc__world__restart__begin(int);
    probe gc__world__restart__end(int);
    probe gc__begin(int);
    probe gc__end(int);
    probe gc__finalize__invoke(uintptr_t,uintptr_t,char *,char *);
    probe method__compile__begin(char *,char *,char *);
    probe method__compile__end(char *,char *,char *,int);
};

#pragma D attributes EVOLVING/EVOLVING/COMMON provider mono provider
#pragma D attributes PRIVATE/PRIVATE/UNKNOWN provider mono module
#pragma D attributes PRIVATE/PRIVATE/UNKNOWN provider mono function
#pragma D attributes EVOLVING/EVOLVING/COMMON provider mono name
#pragma D attributes EVOLVING/EVOLVING/COMMON provider mono args


ld: error creating dtrace DOF section
collect2: error: ld returned 1 exit status
make[4]: *** [mono-boehm] Error 1
make[3]: *** [all] Error 2
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

So it seems like a dtrace issue. The commented out lines in sgen-client-mono.h are two macros that are defined in mono-dtrace.h as:
Code:
#define    MONO_GC_MAJOR_SWEPT(arg0, arg1) \
{ \
    __asm__ volatile(".reference " MONO_TYPEDEFS); \
    __dtrace_probe$mono$gc__major__swept$v1$75696e747074725f74$75696e747074725f74(arg0, arg1); \
    __asm__ volatile(".reference " MONO_STABILITY); \
}


#define    MONO_GC_NURSERY_SWEPT(arg0, arg1) \
{ \
    __asm__ volatile(".reference " MONO_TYPEDEFS); \
    __dtrace_probe$mono$gc__nursery__swept$v1$75696e747074725f74$75696e747074725f74(arg0, arg1); \
    __asm__ volatile(".reference " MONO_STABILITY); \
}



and in https://github.com/barracuda156/mono/blob/ppc-fix1/mono/utils/dtrace.h as:
Code:
#define MONO_GC_NURSERY_SWEPT(addr,len)
#define MONO_GC_NURSERY_SWEPT_ENABLED()    (0)


#define MONO_GC_MAJOR_SWEPT(addr,len)
#define MONO_GC_MAJOR_SWEPT_ENABLED()    (0)

If those lines aren't commented out I get this error:

Code:
/bin/sh ../../libtool  --tag=CC   --mode=compile /opt/local/bin/gcc-mp-7 -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../mono -I../../external/bdwgc/include -I../../external/bdwgc/libatomic_ops/src -I../../mono/eglib -I../../mono/eglib -fvisibility=hidden -Wall -Wunused -Wmissing-declarations -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value -Wno-attributes  -D_THREAD_SAFE -DGC_MACOSX_THREADS -DUSE_MMAP -DUSE_MUNMAP -g  -D__mono_ppc__ -DUSE_COMPILER_TLS -DHAVE_SGEN_GC -Wall -Wunused -Wmissing-declarations -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value -Wno-attributes -I/opt/local/include/LegacySupport -Wmissing-prototypes -Wstrict-prototypes -Wnested-externs -Wno-format-zero-length -Wc++-compat -std=gnu99 -fno-strict-aliasing -fwrapv -DMONO_DLL_EXPORT -Wno-unused-but-set-variable -g -Werror=incompatible-pointer-types -Werror=return-type -Werror-implicit-function-declaration  -MT libmonosgen_la-sgen-alloc.lo -MD -MP -MF .deps/libmonosgen_la-sgen-alloc.Tpo -c -o libmonosgen_la-sgen-alloc.lo `test -f 'sgen-alloc.c' || echo './'`sgen-alloc.c
libtool: compile:  /opt/local/bin/gcc-mp-7 -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../mono -I../../external/bdwgc/include -I../../external/bdwgc/libatomic_ops/src -I../../mono/eglib -I../../mono/eglib -fvisibility=hidden -Wall -Wunused -Wmissing-declarations -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value -Wno-attributes -D_THREAD_SAFE -DGC_MACOSX_THREADS -DUSE_MMAP -DUSE_MUNMAP -g -D__mono_ppc__ -DUSE_COMPILER_TLS -DHAVE_SGEN_GC -Wall -Wunused -Wmissing-declarations -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value -Wno-attributes -I/opt/local/include/LegacySupport -Wmissing-prototypes -Wstrict-prototypes -Wnested-externs -Wno-format-zero-length -Wc++-compat -std=gnu99 -fno-strict-aliasing -fwrapv -DMONO_DLL_EXPORT -Wno-unused-but-set-variable -g -Werror=incompatible-pointer-types -Werror=return-type -Werror-implicit-function-declaration -MT libmonosgen_la-sgen-alloc.lo -MD -MP -MF .deps/libmonosgen_la-sgen-alloc.Tpo -c sgen-alloc.c  -fno-common -DPIC -o .libs/libmonosgen_la-sgen-alloc.o
In file included from ../../mono/utils/dtrace.h:15:0,
                 from ../../mono/metadata/sgen-client-mono.h:62,
                 from ../../mono/sgen/sgen-gc.h:847,
                 from sgen-alloc.c:34:
../../mono/metadata/sgen-client-mono.h: In function 'mono_binary_protocol_alloc_generic':
../../mono/metadata/sgen-client-mono.h:390:49: warning: passing argument 3 of '__dtrace_probe$mono$gc__nursery__obj__alloc$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    MONO_GC_NURSERY_OBJ_ALLOC ((mword)obj, size, name_space, name);
                                                 ^
../../mono/utils/mono-dtrace.h:109:125: note: in definition of macro 'MONO_GC_NURSERY_OBJ_ALLOC'
  __dtrace_probe$mono$gc__nursery__obj__alloc$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                             ^~~~
../../mono/utils/mono-dtrace.h:274:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__nursery__obj__alloc$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:390:61: warning: passing argument 4 of '__dtrace_probe$mono$gc__nursery__obj__alloc$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    MONO_GC_NURSERY_OBJ_ALLOC ((mword)obj, size, name_space, name);
                                                             ^
../../mono/utils/mono-dtrace.h:109:131: note: in definition of macro 'MONO_GC_NURSERY_OBJ_ALLOC'
  __dtrace_probe$mono$gc__nursery__obj__alloc$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                   ^~~~
../../mono/utils/mono-dtrace.h:274:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__nursery__obj__alloc$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:394:54: warning: passing argument 3 of '__dtrace_probe$mono$gc__major__obj__alloc__large$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     MONO_GC_MAJOR_OBJ_ALLOC_LARGE ((mword)obj, size, name_space, name);
                                                      ^
../../mono/utils/mono-dtrace.h:85:130: note: in definition of macro 'MONO_GC_MAJOR_OBJ_ALLOC_LARGE'
  __dtrace_probe$mono$gc__major__obj__alloc__large$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                  ^~~~
../../mono/utils/mono-dtrace.h:268:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__major__obj__alloc__large$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:394:66: warning: passing argument 4 of '__dtrace_probe$mono$gc__major__obj__alloc__large$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     MONO_GC_MAJOR_OBJ_ALLOC_LARGE ((mword)obj, size, name_space, name);
                                                                  ^
../../mono/utils/mono-dtrace.h:85:136: note: in definition of macro 'MONO_GC_MAJOR_OBJ_ALLOC_LARGE'
  __dtrace_probe$mono$gc__major__obj__alloc__large$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                        ^~~~
../../mono/utils/mono-dtrace.h:268:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__major__obj__alloc__large$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:396:54: warning: passing argument 3 of '__dtrace_probe$mono$gc__major__obj__alloc__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    MONO_GC_MAJOR_OBJ_ALLOC_PINNED ((mword)obj, size, name_space, name);
                                                      ^
../../mono/utils/mono-dtrace.h:93:131: note: in definition of macro 'MONO_GC_MAJOR_OBJ_ALLOC_PINNED'
  __dtrace_probe$mono$gc__major__obj__alloc__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                   ^~~~
../../mono/utils/mono-dtrace.h:270:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__major__obj__alloc__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:396:66: warning: passing argument 4 of '__dtrace_probe$mono$gc__major__obj__alloc__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    MONO_GC_MAJOR_OBJ_ALLOC_PINNED ((mword)obj, size, name_space, name);
                                                                  ^
../../mono/utils/mono-dtrace.h:93:137: note: in definition of macro 'MONO_GC_MAJOR_OBJ_ALLOC_PINNED'
  __dtrace_probe$mono$gc__major__obj__alloc__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                         ^~~~
../../mono/utils/mono-dtrace.h:270:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__major__obj__alloc__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_alloc_degraded':
../../mono/metadata/sgen-client-mono.h:417:54: warning: passing argument 3 of '__dtrace_probe$mono$gc__major__obj__alloc__degraded$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
  MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED ((mword)obj, size, sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable));
                                                      ^
../../mono/utils/mono-dtrace.h:77:133: note: in definition of macro 'MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED'
  __dtrace_probe$mono$gc__major__obj__alloc__degraded$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                     ^~~~
../../mono/utils/mono-dtrace.h:266:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__major__obj__alloc__degraded$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:417:107: warning: passing argument 4 of '__dtrace_probe$mono$gc__major__obj__alloc__degraded$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
  MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED ((mword)obj, size, sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable));
                                                                                                           ^
../../mono/utils/mono-dtrace.h:77:139: note: in definition of macro 'MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED'
  __dtrace_probe$mono$gc__major__obj__alloc__degraded$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                                           ^~~~
../../mono/utils/mono-dtrace.h:266:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__major__obj__alloc__degraded$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_pin':
../../mono/metadata/sgen-client-mono.h:443:5: warning: passing argument 3 of '__dtrace_probe$mono$gc__obj__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable), gen);
     ^
../../mono/utils/mono-dtrace.h:149:124: note: in definition of macro 'MONO_GC_OBJ_PINNED'
  __dtrace_probe$mono$gc__obj__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(arg0, arg1, arg2, arg3, arg4); \
                                                                                                                            ^~~~
../../mono/utils/mono-dtrace.h:284:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__obj__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(uintptr_t, uintptr_t, char *, char *, int);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:443:58: warning: passing argument 4 of '__dtrace_probe$mono$gc__obj__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable), gen);
                                                          ^
../../mono/utils/mono-dtrace.h:149:130: note: in definition of macro 'MONO_GC_OBJ_PINNED'
  __dtrace_probe$mono$gc__obj__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(arg0, arg1, arg2, arg3, arg4); \
                                                                                                                                  ^~~~
../../mono/utils/mono-dtrace.h:284:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__obj__pinned$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(uintptr_t, uintptr_t, char *, char *, int);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_cement':
../../mono/metadata/sgen-client-mono.h:484:5: warning: passing argument 3 of '__dtrace_probe$mono$gc__obj__cemented$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable));
     ^
../../mono/utils/mono-dtrace.h:133:119: note: in definition of macro 'MONO_GC_OBJ_CEMENTED'
  __dtrace_probe$mono$gc__obj__cemented$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                       ^~~~
../../mono/utils/mono-dtrace.h:280:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__obj__cemented$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:484:58: warning: passing argument 4 of '__dtrace_probe$mono$gc__obj__cemented$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable));
                                                          ^
../../mono/utils/mono-dtrace.h:133:125: note: in definition of macro 'MONO_GC_OBJ_CEMENTED'
  __dtrace_probe$mono$gc__obj__cemented$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3); \
                                                                                                                             ^~~~
../../mono/utils/mono-dtrace.h:280:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__obj__cemented$v1$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_copy':
../../mono/metadata/sgen-client-mono.h:496:71: warning: passing argument 6 of '__dtrace_probe$mono$gc__obj__moved$v1$75696e747074725f74$75696e747074725f74$696e74$696e74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   MONO_GC_OBJ_MOVED ((mword)to, (mword)from, dest_gen, src_gen, size, sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable));
                                                                       ^
../../mono/utils/mono-dtrace.h:141:167: note: in definition of macro 'MONO_GC_OBJ_MOVED'
  __dtrace_probe$mono$gc__obj__moved$v1$75696e747074725f74$75696e747074725f74$696e74$696e74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3, arg4, arg5, arg6); \
                                                                                                                                                                       ^~~~
../../mono/utils/mono-dtrace.h:282:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__obj__moved$v1$75696e747074725f74$75696e747074725f74$696e74$696e74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, int, int, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:496:124: warning: passing argument 7 of '__dtrace_probe$mono$gc__obj__moved$v1$75696e747074725f74$75696e747074725f74$696e74$696e74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   MONO_GC_OBJ_MOVED ((mword)to, (mword)from, dest_gen, src_gen, size, sgen_client_vtable_get_namespace ((GCVTable)vtable), sgen_client_vtable_get_name ((GCVTable)vtable));
                                                                                                                            ^
../../mono/utils/mono-dtrace.h:141:173: note: in definition of macro 'MONO_GC_OBJ_MOVED'
  __dtrace_probe$mono$gc__obj__moved$v1$75696e747074725f74$75696e747074725f74$696e74$696e74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3, arg4, arg5, arg6); \
                                                                                                                                                                             ^~~~
../../mono/utils/mono-dtrace.h:282:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__obj__moved$v1$75696e747074725f74$75696e747074725f74$696e74$696e74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, int, int, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_global_remset':
../../mono/metadata/sgen-client-mono.h:507:5: warning: passing argument 4 of '__dtrace_probe$mono$gc__global__remset__add$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sgen_client_vtable_get_namespace ((GCVTable)value_vtable), sgen_client_vtable_get_name ((GCVTable)value_vtable));
     ^
../../mono/utils/mono-dtrace.h:69:150: note: in definition of macro 'MONO_GC_GLOBAL_REMSET_ADD'
  __dtrace_probe$mono$gc__global__remset__add$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3, arg4); \
                                                                                                                                                      ^~~~
../../mono/utils/mono-dtrace.h:264:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__global__remset__add$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:507:64: warning: passing argument 5 of '__dtrace_probe$mono$gc__global__remset__add$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sgen_client_vtable_get_namespace ((GCVTable)value_vtable), sgen_client_vtable_get_name ((GCVTable)value_vtable));
                                                                ^
../../mono/utils/mono-dtrace.h:69:156: note: in definition of macro 'MONO_GC_GLOBAL_REMSET_ADD'
  __dtrace_probe$mono$gc__global__remset__add$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(arg0, arg1, arg2, arg3, arg4); \
                                                                                                                                                            ^~~~
../../mono/utils/mono-dtrace.h:264:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__global__remset__add$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a(uintptr_t, uintptr_t, uintptr_t, char *, char *);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_dislink_update':
../../mono/metadata/sgen-client-mono.h:541:5: warning: passing argument 4 of '__dtrace_probe$mono$gc__weak__update$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     obj ? sgen_client_vtable_get_namespace (vt) : NULL,
     ^
../../mono/utils/mono-dtrace.h:181:150: note: in definition of macro 'MONO_GC_WEAK_UPDATE'
  __dtrace_probe$mono$gc__weak__update$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(arg0, arg1, arg2, arg3, arg4, arg5); \
                                                                                                                                                      ^~~~
../../mono/utils/mono-dtrace.h:292:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__weak__update$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(uintptr_t, uintptr_t, uintptr_t, char *, char *, int);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../mono/metadata/sgen-client-mono.h:542:5: warning: passing argument 5 of '__dtrace_probe$mono$gc__weak__update$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     obj ? sgen_client_vtable_get_name (vt) : NULL,
     ^
../../mono/utils/mono-dtrace.h:181:156: note: in definition of macro 'MONO_GC_WEAK_UPDATE'
  __dtrace_probe$mono$gc__weak__update$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(arg0, arg1, arg2, arg3, arg4, arg5); \
                                                                                                                                                            ^~~~
../../mono/utils/mono-dtrace.h:292:13: note: expected 'char *' but argument is of type 'const char *'
 extern void __dtrace_probe$mono$gc__weak__update$v1$75696e747074725f74$75696e747074725f74$75696e747074725f74$63686172202a$63686172202a$696e74(uintptr_t, uintptr_t, uintptr_t, char *, char *, int);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../../mono/sgen/sgen-gc.h:847:0,
                 from sgen-alloc.c:34:
../../mono/metadata/sgen-client-mono.h: In function 'sgen_client_binary_protocol_empty':
../../mono/metadata/sgen-client-mono.h:558:2: error: 'else' without a previous 'if'
  else
  ^~~~
make[3]: *** [libmonosgen_la-sgen-alloc.lo] Error 1

This is perhaps not obvious when you build outside of MacPorts, and sorry for not thinking about that.
I have the following args in the portfile:
Code:
configure.args-append   --enable-dtrace=no \
                        --enable-nls \
                        --with-libgdiplus=${prefix}/lib/libgdiplus.dylib \
                        --with-sigaltstack=no

# Temporary fix for broken configure.
# https://trac.macports.org/ticket/67383
platform darwin powerpc {
    configure.args-append \
                        --disable-gss
}

Notice, that these could be no longer relevant. I think I did not bother much with dtrace back then since anything broken but optional can be dealt with later on.

UPD. Apparently GSS bug was not fixed, and the code still does some nonsense which fails:
Code:
:info:build   CCLD     libmono-native.la
:info:build ld: framework not found GSS
 
Last edited:

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
Okay, I got to the failure which I had before:
Code:
if test -w /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mcs; then :; else chmod -R +w /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mcs; fi
cd /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mcs && /usr/bin/make --no-print-directory -s NO_DIR_CHECK=1 PROFILES='binary_reference_assemblies net_4_x xbuild_12 xbuild_14              ' CC='/opt/local/bin/gcc-mp-13' all-profiles
mkdir -p -- build/deps
make[6]: posix_spawn: mcs: No such file or directory
*** Downloading bootstrap required 'monolite-macos/1A5E0066-58DC-428A-B21C-0AD6CDAE2789'
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
Makefile:20: warning: overriding commands for target `test-local'
../../build/library.make:208: warning: ignoring old commands for target `test-local'
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
/bin/sh: mono: command not found
--2024-06-29 11:32:33--  https://download.mono-project.com/monolite/monolite-macos-1A5E0066-58DC-428A-B21C-0AD6CDAE2789-latest.tar.gz
Resolving download.mono-project.com (download.mono-project.com)... 13.107.246.73
Connecting to download.mono-project.com (download.mono-project.com)|13.107.246.73|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5358294 (5.1M) [application/gzip]
Saving to: ‘STDOUT’

     0K .......... .......... .......... .......... ..........  0%  122K 42s
    50K .......... .......... .......... .......... ..........  1% 1.62M 23s
   100K .......... .......... .......... .......... ..........  2%  301K 21s
   150K .......... .......... .......... .......... ..........  3% 11.6M 15s
   200K .......... .......... .......... .......... ..........  4% 9.58M 12s
   250K .......... .......... .......... .......... ..........  5%  884K 11s
   300K .......... .......... .......... .......... ..........  6%  378K 11s
   350K .......... .......... .......... .......... ..........  7% 7.51M 10s
   400K .......... .......... .......... .......... ..........  8% 7.80M 9s
   450K .......... .......... .......... .......... ..........  9% 11.7M 8s
   500K .......... .......... .......... .......... .......... 10% 3.59M 7s
   550K .......... .......... .......... .......... .......... 11% 16.3M 6s
   600K .......... .......... .......... .......... .......... 12% 8.05M 6s
   650K .......... .......... .......... .......... .......... 13% 10.4M 5s
   700K .......... .......... .......... .......... .......... 14% 8.12M 5s
   750K .......... .......... .......... .......... .......... 15% 3.38M 5s
   800K .......... .......... .......... .......... .......... 16% 15.1M 4s
   850K .......... .......... .......... .......... .......... 17% 15.3M 4s
   900K .......... .......... .......... .......... .......... 18% 16.3M 4s
   950K .......... .......... .......... .......... .......... 19% 15.3M 4s
  1000K .......... .......... .......... .......... .......... 20% 5.31M 4s
  1050K .......... .......... .......... .......... .......... 21% 3.62M 3s
  1100K .......... .......... .......... .......... .......... 21% 15.0M 3s
  1150K .......... .......... .......... .......... .......... 22% 9.88M 3s
  1200K .......... .......... .......... .......... .......... 23% 12.7M 3s
  1250K .......... .......... .......... .......... .......... 24% 14.2M 3s
  1300K .......... .......... .......... .......... .......... 25% 1.41M 3s
  1350K .......... .......... .......... .......... .......... 26% 13.8M 3s
  1400K .......... .......... .......... .......... .......... 27% 14.2M 3s
  1450K .......... .......... .......... .......... .......... 28% 14.6M 2s
  1500K .......... .......... .......... .......... .......... 29% 12.7M 2s
  1550K .......... .......... .......... .......... .......... 30%  969K 2s
  1600K .......... .......... .......... .......... .......... 31% 15.9M 2s
  1650K .......... .......... .......... .......... .......... 32% 16.8M 2s
  1700K .......... .......... .......... .......... .......... 33% 15.9M 2s
  1750K .......... .......... .......... .......... .......... 34% 14.3M 2s
  1800K .......... .......... .......... .......... .......... 35% 4.05M 2s
  1850K .......... .......... .......... .......... .......... 36% 14.2M 2s
  1900K .......... .......... .......... .......... .......... 37% 15.3M 2s
  1950K .......... .......... .......... .......... .......... 38% 9.65M 2s
  2000K .......... .......... .......... .......... .......... 39% 13.2M 2s
  2050K .......... .......... .......... .......... .......... 40% 3.66M 2s
  2100K .......... .......... .......... .......... .......... 41% 12.1M 2s
  2150K .......... .......... .......... .......... .......... 42% 16.2M 1s
  2200K .......... .......... .......... .......... .......... 42% 15.7M 1s
  2250K .......... .......... .......... .......... .......... 43% 16.5M 1s
  2300K .......... .......... .......... .......... .......... 44%  597K 1s
  2350K .......... .......... .......... .......... .......... 45% 11.8M 1s
  2400K .......... .......... .......... .......... .......... 46% 14.5M 1s
  2450K .......... .......... .......... .......... .......... 47% 15.3M 1s
  2500K .......... .......... .......... .......... .......... 48% 15.4M 1s
  2550K .......... .......... .......... .......... .......... 49% 3.92M 1s
  2600K .......... .......... .......... .......... .......... 50% 14.2M 1s
  2650K .......... .......... .......... .......... .......... 51% 14.8M 1s
  2700K .......... .......... .......... .......... .......... 52% 13.1M 1s
  2750K .......... .......... .......... .......... .......... 53% 9.99M 1s
  2800K .......... .......... .......... .......... .......... 54% 2.00M 1s
  2850K .......... .......... .......... .......... .......... 55% 14.5M 1s
  2900K .......... .......... .......... .......... .......... 56% 15.4M 1s
  2950K .......... .......... .......... .......... .......... 57% 13.1M 1s
  3000K .......... .......... .......... .......... .......... 58% 13.6M 1s
  3050K .......... .......... .......... .......... .......... 59% 10.6M 1s
  3100K .......... .......... .......... .......... .......... 60% 3.23M 1s
  3150K .......... .......... .......... .......... .......... 61% 8.24M 1s
  3200K .......... .......... .......... .......... .......... 62% 13.9M 1s
  3250K .......... .......... .......... .......... .......... 63% 12.0M 1s
  3300K .......... .......... .......... .......... .......... 64% 12.1M 1s
  3350K .......... .......... .......... .......... .......... 64%  779K 1s
  3400K .......... .......... .......... .......... .......... 65% 15.2M 1s
  3450K .......... .......... .......... .......... .......... 66% 12.6M 1s
  3500K .......... .......... .......... .......... .......... 67% 13.8M 1s
  3550K .......... .......... .......... .......... .......... 68% 6.70M 1s
  3600K .......... .......... .......... .......... .......... 69% 2.85M 1s
  3650K .......... .......... .......... .......... .......... 70% 9.71M 1s
  3700K .......... .......... .......... .......... .......... 71% 8.12M 1s
  3750K .......... .......... .......... .......... .......... 72% 8.71M 1s
  3800K .......... .......... .......... .......... .......... 73% 9.22M 1s
  3850K .......... .......... .......... .......... .......... 74% 2.47M 0s
  3900K .......... .......... .......... .......... .......... 75% 12.3M 0s
  3950K .......... .......... .......... .......... .......... 76% 7.40M 0s
  4000K .......... .......... .......... .......... .......... 77% 12.1M 0s
  4050K .......... .......... .......... .......... .......... 78% 10.3M 0s
  4100K .......... .......... .......... .......... .......... 79% 3.84M 0s
  4150K .......... .......... .......... .......... .......... 80% 8.52M 0s
  4200K .......... .......... .......... .......... .......... 81% 7.81M 0s
  4250K .......... .......... .......... .......... .......... 82% 8.17M 0s
  4300K .......... .......... .......... .......... .......... 83% 5.36M 0s
  4350K .......... .......... .......... .......... .......... 84% 1.60M 0s
  4400K .......... .......... .......... .......... .......... 85% 6.35M 0s
  4450K .......... .......... .......... .......... .......... 85% 10.5M 0s
  4500K .......... .......... .......... .......... .......... 86% 13.3M 0s
  4550K .......... .......... .......... .......... .......... 87% 13.7M 0s
  4600K .......... .......... .......... .......... .......... 88% 3.40M 0s
  4650K .......... .......... .......... .......... .......... 89% 11.6M 0s
  4700K .......... .......... .......... .......... .......... 90% 13.5M 0s
  4750K .......... .......... .......... .......... .......... 91% 11.5M 0s
  4800K .......... .......... .......... .......... .......... 92% 15.7M 0s
  4850K .......... .......... .......... .......... .......... 93%  821K 0s
  4900K .......... .......... .......... .......... .......... 94% 15.2M 0s
  4950K .......... .......... .......... .......... .......... 95% 16.0M 0s
  5000K .......... .......... .......... .......... .......... 96% 15.6M 0s
  5050K .......... .......... .......... .......... .......... 97% 14.3M 0s
  5100K .......... .......... .......... .......... .......... 98% 15.6M 0s
  5150K .......... .......... .......... .......... .......... 99% 3.60M 0s
  5200K .......... .......... .......... ..                   100% 27.3M=1.7s

2024-06-29 11:32:37 (3.08 MB/s) - written to stdout [5358294/5358294]

*** The runtime 'mono' doesn't appear to be usable.
*** Trying the 'monolite-macos/1A5E0066-58DC-428A-B21C-0AD6CDAE2789' directory.
* Assertion at class-accessors.c:99, condition `mono_class_is_gtd (klass)' not met


=================================================================
    Native Crash Reporting
=================================================================
Got a abrt while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

=================================================================
    Native stacktrace:
=================================================================
    0xce144 - /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mono/mini/mono :
    0xce4a8 - /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mono/mini/mono :
    0x8cbc0 - /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mono/mini/mono :
    0xcd8a0 - /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mono/mini/mono :
    0xb4b294 - /usr/lib/libSystem.B.dylib : _sigtramp

=================================================================
    Telemetry Dumper:
=================================================================
Attempted to dump for critical failure when already in dump. Error reporting crashed?
=================================================================
    External Debugger Dump:
=================================================================

=================================================================
    Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0xb4cd48):0xb4cd38  48 00 00 04 38 00 00 25 44 00 00 02 48 00 00 08  H...8..%D...H...
0xb4cd48  48 00 00 24 7c 08 02 a6 42 9f 00 05 7d 88 02 a6  H..$|...B...}...
0xb4cd58  7c 08 03 a6 3d 8c 00 15 81 8c bd 4c 7d 89 03 a6  |...=......L}...
0xb4cd68  4e 80 04 20 4e 80 00 20 7c 08 02 a6 38 60 00 00  N.. N.. |...8`..

=================================================================
    Managed Stacktrace:
=================================================================
      at <unknown> <0xffffffff>
      at System.Collections.Generic.HashSet`1:InternalGetHashCode <0x0006c>
      at System.Collections.Generic.HashSet`1:AddIfNotPresent <0x0006c>
      at System.Collections.Generic.HashSet`1:Add <0x00028>
      at Mono.CSharp.Tokenizer:AddKeyword <0x00050>
      at Mono.CSharp.Tokenizer:.cctor <0x00214>
      at System.Object:runtime_invoke_void <0x000a0>
      at <unknown> <0xffffffff>
      at System.Object:__icall_wrapper_mono_generic_class_init <0x000d8>
      at Mono.CSharp.CSharpParser:.ctor <0x003c0>
      at Mono.CSharp.Driver:Parse <0x000b4>
      at Mono.CSharp.Driver:DoParse <0x00058>
      at Mono.CSharp.Driver:Parse <0x002b0>
      at Mono.CSharp.Driver:Parse <0x001c8>
      at Mono.CSharp.Driver:Compile <0x00254>
      at Mono.CSharp.Driver:Main <0x00204>
      at <Module>:runtime_invoke_int_object <0x00144>
=================================================================
make[8]: *** [build/deps/basic-profile-check.exe] Abort trap
*** The contents of your 'monolite-macos/1A5E0066-58DC-428A-B21C-0AD6CDAE2789' directory may be out-of-date
*** You may want to try 'make get-monolite-latest'
make[8]: *** [do-profile-check-monolite] Error 1
make[7]: *** [do-profile-check] Error 2
make[6]: *** [do-profile-check-monolite] Error 2
make[5]: *** [do-profile-check] Error 2
make[4]: *** [profile-do--build--all] Error 2
make[3]: *** [profiles-do--all] Error 2
make[2]: *** [all-mcs] Error 2
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/runtime'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206'
make: *** [all] Error 2

Have we got anything suspicious here?
Code:
36-25% /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_mono/mono/work/mono-6.12.0.206/mono/mini/mono --version
Mono JIT compiler version 6.12.0 (explicit/0cbf0e290c3 Sat Jun 29 11:29:22 CST 2024)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       normal
    Notification:  kqueue
    Architecture:  ppc
    Disabled:      none
    Misc:          softdebug
    Interpreter:   yes
    Suspend:       preemptive
    GC:            sgen

I never used the thing, so got no idea how to debug. I need to run at least something to see what GDB spits out.

UPD. And does it do a right thing trying to use a pre-built `mcs` binary downloaded from the web?

P. S. Just in case, the issue: https://github.com/mono/mono/issues/21649
 
Last edited:

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
I have to -I$(top_srcdir)/libatomic_ops/src to the makefile of bdwgc (or whatever the garbage collector is). I also commented out some lines that fail to compile because of pthread_getname_np, which I think is just some logging.

FWIW,

Code:
36-25% port -v installed mono
The following ports are currently installed:
  mono @6.12.0.206_0 (active) requested_variants='' platform='darwin 10' archs='ppc' date='2024-06-29T13:51:55+0800'

36-25% mono --version
Mono JIT compiler version 6.12.0 (explicit/0cbf0e290c3 Sat Jun 29 13:46:55 CST 2024)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       normal
    Notification:  kqueue
    Architecture:  ppc
    Disabled:      none
    Misc:          softdebug 
    Interpreter:   yes
    Suspend:       preemptive
    GC:            sgen

36-25% port contents mono
Port mono @6.12.0.206_0 contains:
  /opt/local/bin/al
  /opt/local/bin/al2
  /opt/local/bin/csc
  /opt/local/bin/csi
  /opt/local/bin/gacutil
  /opt/local/bin/gacutil2
  /opt/local/bin/ilasm
  /opt/local/bin/makecert
  /opt/local/bin/mcs
  /opt/local/bin/mdassembler
  /opt/local/bin/mdoc-assemble
  /opt/local/bin/mdoc-export-html
  /opt/local/bin/mdoc-export-msxdoc
  /opt/local/bin/mdoc-update
  /opt/local/bin/mdoc-validate
  /opt/local/bin/mdvalidater
  /opt/local/bin/mkbundle
  /opt/local/bin/mono
  /opt/local/bin/mono-boehm
  /opt/local/bin/mono-configuration-crypto
  /opt/local/bin/mono-find-provides
  /opt/local/bin/mono-find-requires
  /opt/local/bin/mono-gdb.py
  /opt/local/bin/mono-hang-watchdog
  /opt/local/bin/mono-heapviz
  /opt/local/bin/mono-package-runtime
  /opt/local/bin/mono-service
  /opt/local/bin/mono-service2
  /opt/local/bin/mono-sgen
  /opt/local/bin/mono-sgen-gdb.py
  /opt/local/bin/mono-test-install
  /opt/local/bin/monodis
  /opt/local/bin/monodocer
  /opt/local/bin/monodocs2html
  /opt/local/bin/monodocs2slashdoc
  /opt/local/bin/monop
  /opt/local/bin/monop2
  /opt/local/bin/mprof-report
  /opt/local/bin/pedump
  /opt/local/bin/peverify
  /opt/local/bin/resgen
  /opt/local/bin/resgen2
  /opt/local/bin/sgen-grep-binprot
  /opt/local/bin/sn
  /opt/local/bin/vbc
  /opt/local/bin/wsdl
  /opt/local/bin/wsdl2
  /opt/local/etc/mono/2.0/Browsers/Compat.browser
  /opt/local/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx
  /opt/local/etc/mono/2.0/machine.config
  /opt/local/etc/mono/2.0/settings.map
  /opt/local/etc/mono/2.0/web.config
  /opt/local/etc/mono/4.0/Browsers/Compat.browser
  /opt/local/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx
  /opt/local/etc/mono/4.0/machine.config
  /opt/local/etc/mono/4.0/settings.map
  /opt/local/etc/mono/4.0/web.config
  /opt/local/etc/mono/4.5/Browsers/Compat.browser
  /opt/local/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx
  /opt/local/etc/mono/4.5/machine.config
  /opt/local/etc/mono/4.5/settings.map
  /opt/local/etc/mono/4.5/web.config
  /opt/local/etc/mono/browscap.ini
  /opt/local/etc/mono/config
  /opt/local/include/mono-2.0/mono/cil/opcode.def
  /opt/local/include/mono-2.0/mono/jit/jit.h
  /opt/local/include/mono-2.0/mono/metadata/appdomain.h
  /opt/local/include/mono-2.0/mono/metadata/assembly.h
  /opt/local/include/mono-2.0/mono/metadata/attrdefs.h
  /opt/local/include/mono-2.0/mono/metadata/blob.h
  /opt/local/include/mono-2.0/mono/metadata/class.h
  /opt/local/include/mono-2.0/mono/metadata/debug-helpers.h
  /opt/local/include/mono-2.0/mono/metadata/debug-mono-symfile.h
  /opt/local/include/mono-2.0/mono/metadata/environment.h
  /opt/local/include/mono-2.0/mono/metadata/exception.h
  /opt/local/include/mono-2.0/mono/metadata/image.h
  /opt/local/include/mono-2.0/mono/metadata/loader.h
  /opt/local/include/mono-2.0/mono/metadata/metadata.h
  /opt/local/include/mono-2.0/mono/metadata/mono-config.h
  /opt/local/include/mono-2.0/mono/metadata/mono-debug.h
  /opt/local/include/mono-2.0/mono/metadata/mono-gc.h
  /opt/local/include/mono-2.0/mono/metadata/object-forward.h
  /opt/local/include/mono-2.0/mono/metadata/object.h
  /opt/local/include/mono-2.0/mono/metadata/opcodes.h
  /opt/local/include/mono-2.0/mono/metadata/profiler-events.h
  /opt/local/include/mono-2.0/mono/metadata/profiler.h
  /opt/local/include/mono-2.0/mono/metadata/reflection.h
  /opt/local/include/mono-2.0/mono/metadata/row-indexes.h
  /opt/local/include/mono-2.0/mono/metadata/sgen-bridge.h
  /opt/local/include/mono-2.0/mono/metadata/threads.h
  /opt/local/include/mono-2.0/mono/metadata/tokentype.h
  /opt/local/include/mono-2.0/mono/metadata/verify.h
  /opt/local/include/mono-2.0/mono/utils/mono-counters.h
  /opt/local/include/mono-2.0/mono/utils/mono-dl-fallback.h
  /opt/local/include/mono-2.0/mono/utils/mono-error.h
  /opt/local/include/mono-2.0/mono/utils/mono-forward.h
  /opt/local/include/mono-2.0/mono/utils/mono-jemalloc.h
  /opt/local/include/mono-2.0/mono/utils/mono-logger.h
  /opt/local/include/mono-2.0/mono/utils/mono-publib.h
  /opt/local/lib/libMonoPosixHelper.a
  /opt/local/lib/libMonoPosixHelper.dylib
  /opt/local/lib/libMonoPosixHelper.la
  /opt/local/lib/libMonoSupportW.a
  /opt/local/lib/libMonoSupportW.dylib
  /opt/local/lib/libMonoSupportW.la
  /opt/local/lib/libikvm-native.a
  /opt/local/lib/libikvm-native.dylib
  /opt/local/lib/libikvm-native.la
  /opt/local/lib/libmono-2.0.1.dylib
  /opt/local/lib/libmono-2.0.a
  /opt/local/lib/libmono-2.0.dylib
  /opt/local/lib/libmono-2.0.la
  /opt/local/lib/libmono-native.0.dylib
  /opt/local/lib/libmono-native.a
  /opt/local/lib/libmono-native.dylib
  /opt/local/lib/libmono-native.la
  /opt/local/lib/libmono-profiler-aot-static.a
  /opt/local/lib/libmono-profiler-aot-static.la
  /opt/local/lib/libmono-profiler-aot.0.dylib
  /opt/local/lib/libmono-profiler-aot.a
  /opt/local/lib/libmono-profiler-aot.dylib
  /opt/local/lib/libmono-profiler-aot.la
  /opt/local/lib/libmono-profiler-coverage-static.a
  /opt/local/lib/libmono-profiler-coverage-static.la
  /opt/local/lib/libmono-profiler-coverage.0.dylib
  /opt/local/lib/libmono-profiler-coverage.a
  /opt/local/lib/libmono-profiler-coverage.dylib
  /opt/local/lib/libmono-profiler-coverage.la
  /opt/local/lib/libmono-profiler-log-static.a
  /opt/local/lib/libmono-profiler-log-static.la
  /opt/local/lib/libmono-profiler-log.0.dylib
  /opt/local/lib/libmono-profiler-log.a
  /opt/local/lib/libmono-profiler-log.dylib
  /opt/local/lib/libmono-profiler-log.la
  /opt/local/lib/libmonoboehm-2.0.1.dylib
  /opt/local/lib/libmonoboehm-2.0.a
  /opt/local/lib/libmonoboehm-2.0.dylib
  /opt/local/lib/libmonoboehm-2.0.la
  /opt/local/lib/libmonosgen-2.0.1.dylib
  /opt/local/lib/libmonosgen-2.0.a
  /opt/local/lib/libmonosgen-2.0.dylib
  /opt/local/lib/libmonosgen-2.0.la
  /opt/local/lib/mono/lldb/mono.py
  /opt/local/lib/pkgconfig/aspnetwebstack.pc
  /opt/local/lib/pkgconfig/cecil.pc
  /opt/local/lib/pkgconfig/dotnet.pc
  /opt/local/lib/pkgconfig/dotnet35.pc
  /opt/local/lib/pkgconfig/mono-2.pc
  /opt/local/lib/pkgconfig/mono-cairo.pc
  /opt/local/lib/pkgconfig/mono-lineeditor.pc
  /opt/local/lib/pkgconfig/mono-options.pc
  /opt/local/lib/pkgconfig/mono.pc
  /opt/local/lib/pkgconfig/monodoc.pc
  /opt/local/lib/pkgconfig/monosgen-2.pc
  /opt/local/lib/pkgconfig/reactive.pc
  /opt/local/lib/pkgconfig/system.web.extensions.design_1.0.pc
  /opt/local/lib/pkgconfig/system.web.extensions_1.0.pc
  /opt/local/lib/pkgconfig/system.web.mvc.pc
  /opt/local/lib/pkgconfig/system.web.mvc2.pc
  /opt/local/lib/pkgconfig/system.web.mvc3.pc
  /opt/local/lib/pkgconfig/wcf.pc
  /opt/local/lib/pkgconfig/xbuild12.pc
  /opt/local/share/doc/mono/COPYING.LIB
  /opt/local/share/doc/mono/NEWS
  /opt/local/share/doc/mono/README.md
  /opt/local/share/man/man1/al.1.gz
  /opt/local/share/man/man1/aprofutil.1.gz
  /opt/local/share/man/man1/cccheck.1.gz
  /opt/local/share/man/man1/ccrewrite.1.gz
  /opt/local/share/man/man1/cert-sync.1.gz
  /opt/local/share/man/man1/cert2spc.1.gz
  /opt/local/share/man/man1/certmgr.1.gz
  /opt/local/share/man/man1/chktrust.1.gz
  /opt/local/share/man/man1/cilc.1.gz
  /opt/local/share/man/man1/crlupdate.1.gz
  /opt/local/share/man/man1/csharp.1.gz
  /opt/local/share/man/man1/disco.1.gz
  /opt/local/share/man/man1/dtd2xsd.1.gz
  /opt/local/share/man/man1/gacutil.1.gz
  /opt/local/share/man/man1/genxs.1.gz
  /opt/local/share/man/man1/httpcfg.1.gz
  /opt/local/share/man/man1/ilasm.1.gz
  /opt/local/share/man/man1/illinkanalyzer.1.gz
  /opt/local/share/man/man1/lc.1.gz
  /opt/local/share/man/man1/macpack.1.gz
  /opt/local/share/man/man1/makecert.1.gz
  /opt/local/share/man/man1/mconfig.1.gz
  /opt/local/share/man/man1/mcs.1.gz
  /opt/local/share/man/man1/mdassembler.1.gz
  /opt/local/share/man/man1/mdb2ppdb.1.gz
  /opt/local/share/man/man1/mdoc-assemble.1.gz
  /opt/local/share/man/man1/mdoc-export-html.1.gz
  /opt/local/share/man/man1/mdoc-export-msxdoc.1.gz
  /opt/local/share/man/man1/mdoc-update.1.gz
  /opt/local/share/man/man1/mdoc-validate.1.gz
  /opt/local/share/man/man1/mdoc.1.gz
  /opt/local/share/man/man1/mdvalidater.1.gz
  /opt/local/share/man/man1/mkbundle.1.gz
  /opt/local/share/man/man1/mono-api-info.1.gz
  /opt/local/share/man/man1/mono-cil-strip.1.gz
  /opt/local/share/man/man1/mono-configuration-crypto.1.gz
  /opt/local/share/man/man1/mono-profilers.1.gz
  /opt/local/share/man/man1/mono-service.1.gz
  /opt/local/share/man/man1/mono-shlib-cop.1.gz
  /opt/local/share/man/man1/mono-symbolicate.1.gz
  /opt/local/share/man/man1/mono-xmltool.1.gz
  /opt/local/share/man/man1/mono.1.gz
  /opt/local/share/man/man1/monodis.1.gz
  /opt/local/share/man/man1/monodocer.1.gz
  /opt/local/share/man/man1/monodocs2html.1.gz
  /opt/local/share/man/man1/monolinker.1.gz
  /opt/local/share/man/man1/monop.1.gz
  /opt/local/share/man/man1/mozroots.1.gz
  /opt/local/share/man/man1/mprof-report.1.gz
  /opt/local/share/man/man1/pdb2mdb.1.gz
  /opt/local/share/man/man1/permview.1.gz
  /opt/local/share/man/man1/resgen.1.gz
  /opt/local/share/man/man1/secutil.1.gz
  /opt/local/share/man/man1/setreg.1.gz
  /opt/local/share/man/man1/sgen.1.gz
  /opt/local/share/man/man1/signcode.1.gz
  /opt/local/share/man/man1/sn.1.gz
  /opt/local/share/man/man1/soapsuds.1.gz
  /opt/local/share/man/man1/sqlsharp.1.gz
  /opt/local/share/man/man1/wsdl.1.gz
  /opt/local/share/man/man1/xbuild.1.gz
  /opt/local/share/man/man1/xsd.1.gz
  /opt/local/share/man/man5/mdoc.5.gz
  /opt/local/share/man/man5/mono-config.5.gz
  /opt/local/share/mono-2.0/mono/cil/cil-opcodes.xml
  /opt/local/share/mono-2.0/mono/eglib/eglib-config.h
  /opt/local/share/mono-2.0/mono/profiler/mono-profiler-coverage.suppression
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
Last edited:

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
So this builds for me: https://github.com/barracuda156/macports-ports-powerpc/tree/mono_6.12.0.206

Apparently for w/e reason `mscorelib` is not built, but is expected when other software is built with Mono.
I.e. perhaps we need also to built this: https://github.com/mono/mono/tree/main/mcs/class/corlib

(No idea why it does not build, I did nothing special for that.)

P. S. Built port: mono-6.12.0.206_0.darwin_10.ppc.tbz2
Thanks a lot for you work barracuda!!!!!

I think mscorelib does not build because we do not yet have a working mcs (the C# compiler), and mscorelib is written in C#. So we now have the difficult task of bootstrapping the C# compiler. It's a chicken-and-egg issue since we need a C# compiler to build mcs since mcs is also written in C#.

For mscorelib, I wonder if we could move it from a working mono install on modern x86 linux since it's C#/JIT compiled so the host architecture it was built on shouldn't matter (I think).
 

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
Thanks a lot for you work barracuda!!!!!

I think mscorelib does not build because we do not yet have a working mcs (the C# compiler), and mscorelib is written in C#. So we now have the difficult task of bootstrapping the C# compiler. It's a chicken-and-egg issue since we need a C# compiler to build mcs since mcs is also written in C#.

For mscorelib, I wonder if we could move it from a working mono install on modern x86 linux since it's C#/JIT compiled so the host architecture it was built on shouldn't matter (I think).
Come to think of it, I wonder if we could just move a working mcs from linux?

Also, on https://github.com/mono/mono/issues/21649 you mention that the prebuilt mcs is for x86. I think that's normal for mono-compiled exes to be reported as i386/x86 even tho they're JIT compiled. It's annoying because MS decided to use the .exe file extension for .NET assemblies even tho they're different from normal .exe AOT-compiled binaries.
 

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
Come to think of it, I wonder if we could just move a working mcs from linux?

Also, on https://github.com/mono/mono/issues/21649 you mention that the prebuilt mcs is for x86. I think that's normal for mono-compiled exes to be reported as i386/x86 even tho they're JIT compiled. It's annoying because MS decided to use the .exe file extension for .NET assemblies even tho they're different from normal .exe AOT-compiled binaries.
I tried running something but it complains about not being able find pthread_setname_np... I'm assuming that's on 10.6+. I'll try to get Snow Leopard installed.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
I tried running something but it complains about not being able find pthread_setname_np... I'm assuming that's on 10.6+. I'll try to get Snow Leopard installed.

Well, if you are eager to run 10a190, welcome to do so, and you may test my MacPorts distribution for it. (As long as you do that on a clean system, there are no risks.)
http://macos-powerpc.org/MacPorts/MacPorts-Snow-PowerPC.pkg (presumably it should work normally and not require any manual tweaks; no guarantees are given whatsoever, but I do support this, so issues will be addressed).

If you rather wanna have it built on 10.5.8, this may work: https://github.com/macports/macports-legacy-support/commit/21ae68babfea7db77cd793d46c176141afcaf5be

P. S. It Mono `pthread_setname_np` it was introduced in https://github.com/mono/mono/commit...84301ea01c824f0c7ab295b7a891e3c7a3dd8bcce1e47 (sure enough, unconditionally).
It does not look sensible to revert that commit, but just for the reference.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
Last edited:

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
I was able to build on 10.5 and I moved a compiled hello world program I made on Linux to the powermac. Trying to run it resulted in a crash:

Code:
unknown00145165abb8:~ lain$ barracuda-mono/mono/mono/mini/mono ./Program.exe
* Assertion at class-accessors.c:104, condition `mono_class_is_gtd (klass)' not met


=================================================================
    Native Crash Reporting
=================================================================
Got a abrt while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

=================================================================
    Native stacktrace:
=================================================================
    0x1c2608 - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_install_ftnptr_eh_callback
    0x1c2aac - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_install_ftnptr_eh_callback
    0x131704 - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_debugger_run_finally
    0x1c1330 - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_install_ftnptr_eh_callback
    0x92a0f9fc - /usr/lib/libSystem.B.dylib : _sigtramp
    0x7a753470 - Unknown

=================================================================
    Telemetry Dumper:
=================================================================
Thread 0xa046c820 starting summarize_execute
Attempted to dump for critical failure when already in dump. Error reporting crashed?
=================================================================
    External Debugger Dump:
=================================================================

=================================================================
    Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x92a11b50):0x92a11b40  48 00 00 04 38 00 00 25 44 00 00 02 48 00 00 08  H...8..%D...H...
0x92a11b50  48 00 00 24 7c 08 02 a6 42 9f 00 05 7d 88 02 a6  H..$|...B...}...
0x92a11b60  7c 08 03 a6 3d 8c 0d a2 81 8c 68 e8 7d 89 03 a6  |...=.....h.}...
0x92a11b70  4e 80 04 20 4e 80 00 20 7c 08 02 a6 38 60 00 00  N.. N.. |...8`..

=================================================================
    Managed Stacktrace:
=================================================================
      at <unknown> <0xffffffff>
      at System.Text.StringBuilder:AppendFormatHelper <0x00d24>
      at System.Text.StringBuilder:AppendFormat <0x000a0>
      at System.Diagnostics.StackTrace:AddFrames <0x0058c>
      at System.Diagnostics.StackTrace:ToString <0x0018c>
      at System.Diagnostics.StackTrace:ToString <0x00028>
      at System.Environment:GetStackTrace <0x000bc>
      at System.Exception:GetStackTrace <0x00080>
      at System.Exception:ToString <0x00230>
      at System.Exception:ToString <0x0015c>
      at System.Exception:ToString <0x0015c>
      at System.Exception:ToString <0x0015c>
      at System.Exception:ToString <0x00028>
      at <Module>:runtime_invoke_object__this__ <0x000a4>
=================================================================
Abort trap

I installed 10.6 but it somehow ended up being pretty borked... the finder had weird graphical errors like not showing text unless highlighted. disks not ejecting, and libraries being broken. I probably did something wrong so I'll try again later.
 
  • Like
Reactions: barracuda156

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
I was able to build on 10.5 and I moved a compiled hello world program I made on Linux to the powermac. Trying to run it resulted in a crash:

Code:
unknown00145165abb8:~ lain$ barracuda-mono/mono/mono/mini/mono ./Program.exe
* Assertion at class-accessors.c:104, condition `mono_class_is_gtd (klass)' not met


=================================================================
    Native Crash Reporting
=================================================================
Got a abrt while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

=================================================================
    Native stacktrace:
=================================================================
    0x1c2608 - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_install_ftnptr_eh_callback
    0x1c2aac - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_install_ftnptr_eh_callback
    0x131704 - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_debugger_run_finally
    0x1c1330 - /Users/lain/barracuda-mono/mono/mono/mini/mono : mono_install_ftnptr_eh_callback
    0x92a0f9fc - /usr/lib/libSystem.B.dylib : _sigtramp
    0x7a753470 - Unknown

=================================================================
    Telemetry Dumper:
=================================================================
Thread 0xa046c820 starting summarize_execute
Attempted to dump for critical failure when already in dump. Error reporting crashed?
=================================================================
    External Debugger Dump:
=================================================================

=================================================================
    Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x92a11b50):0x92a11b40  48 00 00 04 38 00 00 25 44 00 00 02 48 00 00 08  H...8..%D...H...
0x92a11b50  48 00 00 24 7c 08 02 a6 42 9f 00 05 7d 88 02 a6  H..$|...B...}...
0x92a11b60  7c 08 03 a6 3d 8c 0d a2 81 8c 68 e8 7d 89 03 a6  |...=.....h.}...
0x92a11b70  4e 80 04 20 4e 80 00 20 7c 08 02 a6 38 60 00 00  N.. N.. |...8`..

=================================================================
    Managed Stacktrace:
=================================================================
      at <unknown> <0xffffffff>
      at System.Text.StringBuilder:AppendFormatHelper <0x00d24>
      at System.Text.StringBuilder:AppendFormat <0x000a0>
      at System.Diagnostics.StackTrace:AddFrames <0x0058c>
      at System.Diagnostics.StackTrace:ToString <0x0018c>
      at System.Diagnostics.StackTrace:ToString <0x00028>
      at System.Environment:GetStackTrace <0x000bc>
      at System.Exception:GetStackTrace <0x00080>
      at System.Exception:ToString <0x00230>
      at System.Exception:ToString <0x0015c>
      at System.Exception:ToString <0x0015c>
      at System.Exception:ToString <0x0015c>
      at System.Exception:ToString <0x00028>
      at <Module>:runtime_invoke_object__this__ <0x000a4>
=================================================================
Abort trap

I installed 10.6 but it somehow ended up being pretty borked... the finder had weird graphical errors like not showing text unless highlighted. disks not ejecting, and libraries being broken. I probably did something wrong so I'll try again later.

Unfortunately I know nothing about C# so stacktraces do not tell me much.
There is also a crash log perhaps in a usual logs dir for crash reporter, could you dig out that one?

Finder in 10.6 is buggy, what you described is expected, more or less.
Solutions:
1. Use a third-party file manager (Path Finder or something open-source).
2. Use list view in Finder, then it works almost normally. Disk mounting and ejection work in fact, but Finder fails to update you. Restart the Finder, you will see mounted disks. Onyx 2.0.5 works on 10a190 and can be used to enable quit menu for Finder. Otherwise I am sure there are terminal commands.

Aside of crappy Finder it is pretty normal however. (Perhaps jpeg rendering by Finder will be weird (but it works perfectly fine in any apps) and outgoing internet sharing may not work.)
I use 10.6 ppc as my normal system and can assure you it is perfectly usable. Finder is bad, yes.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
Once I am done with building gcc 13.3.0 (which I wanna complete first), I will rebuild Mono, addressing issues I point above. May not make it working yet, but they look like they should be fixed.

gcc will take about 4 hours, and I am not at the machine yet, so no sooner than in 6–7 hrs. But I will update on that.
 

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
Unfortunately I know nothing about C# so stacktraces do not tell me much.
There is also a crash log perhaps in a usual logs dir for crash reporter, could you dig out that one?
Is this what you're looking for?

Code:
Process:         mono [159]
Path:            /Users/lain/barracuda-mono/mono/mono/mini/mono
Identifier:      mono
Version:         ??? (???)
Code Type:       PPC (Native)
Parent Process:  bash [145]

Interval Since Last Report:          375896 sec
Crashes Since Last Report:           60
Per-App Interval Since Last Report:  0 sec
Per-App Crashes Since Last Report:   7

Date/Time:       2024-06-30 19:58:50.406 -0700
OS Version:      Mac OS X 10.5.8 (9L31a)
Report Version:  6
Anonymous UUID:  7AF69094-17BB-4C52-9D01-BBB105356CB0

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread:  0

Thread 0 Crashed:
0   libSystem.B.dylib                 0x92a11b50 __kill + 12
1   libSystem.B.dylib                 0x92aacbfc abort + 84
2   mono                              0x001c2afc mono_post_native_crash_handler + 48 (mini-posix.c:1132)
3   mono                              0x001317b0 mono_handle_native_crash + 672
4   mono                              0x001c132c sigabrt_signal_handler + 224 (mini-posix.c:248)
5   libSystem.B.dylib                 0x92a0f9f8 _sigtramp + 64

Thread 1:
0   libSystem.B.dylib                 0x92996c0c __semwait_signal + 12
1   libSystem.B.dylib                 0x929d346c _pthread_cond_wait + 1580
2   mono                              0x0050d988 mono_os_cond_wait + 44 (mono-os-mutex.h:219)
3   mono                              0x0050f420 get_work + 336 (sgen-thread-pool.c:167)
4   mono                              0x0050f5e8 thread_func + 408 (sgen-thread-pool.c:198)
5   libSystem.B.dylib                 0x929d20c4 _pthread_start + 316

Thread 2:
0   libSystem.B.dylib                 0x92990248 semaphore_wait_trap + 8
1   mono                              0x003a9d2c mono_os_sem_wait + 48
2   mono                              0x003b904c summarizer_leader + 200
3   mono                              0x003acd9c start_wrapper_internal + 632
4   mono                              0x003acf40 start_wrapper + 120
5   libSystem.B.dylib                 0x929d20c4 _pthread_start + 316

Thread 3:
0   libSystem.B.dylib                 0x92990248 semaphore_wait_trap + 8
1   mono                              0x0043f25c mono_os_sem_wait + 48
2   mono                              0x0043f804 mono_coop_sem_wait + 84
3   mono                              0x004426bc finalizer_thread + 188
4   mono                              0x003acd9c start_wrapper_internal + 632
5   mono                              0x003acf40 start_wrapper + 120
6   libSystem.B.dylib                 0x929d20c4 _pthread_start + 316

Thread 0 crashed with PPC Thread State 32:
  srr0: 0x92a11b50  srr1: 0x0000d030   dar: 0x00a00300 dsisr: 0x0a000000
    r0: 0x00000025    r1: 0xbfffc8b0    r2: 0x00000008    r3: 0x00000000
    r4: 0x00000000    r5: 0x00000001    r6: 0x00000000    r7: 0x00000002
    r8: 0x3d0a0000    r9: 0x00000042   r10: 0x929daa04   r11: 0xa043752c
   r12: 0x92a11b3c   r13: 0x00000000   r14: 0x00000000   r15: 0x01804a60
   r16: 0x01804a60   r17: 0x00000000   r18: 0x01804a60   r19: 0x00000000
   r20: 0x00000000   r21: 0x01804a60   r22: 0x00000000   r23: 0x00000001
   r24: 0x00000000   r25: 0x00000000   r26: 0x0000000c   r27: 0xbfffcc80
   r28: 0xbfffcc60   r29: 0x0090abf0   r30: 0xbfffc910   r31: 0x92aacbb4
    cr: 0x42000432   xer: 0x00000000    lr: 0x92aacc00   ctr: 0x92a11b3c
vrsave: 0x00000000

Binary Images:
    0x1000 -   0x634fff +mono ??? (???) <ae53f55fb77cabcb55d52c12252fbb89> /Users/lain/barracuda-mono/mono/mono/mini/mono
  0x864000 -   0x877ffc +libz.1.dylib ??? (???) <ea5d8a0f36b8091338589425364e801c> /opt/local/lib/libz.1.dylib
  0x87b000 -   0x881fff +libMacportsLegacySupport.dylib ??? (???) <f2d1a2267ed021ff9689faeff54cafd7> /opt/local/lib/libMacportsLegacySupport.dylib
  0x886000 -   0x889fff +libatomic.1.dylib ??? (???) <036193c0ad3b012744200b860bc23f3a> /opt/local/lib/libgcc/libatomic.1.dylib
  0x88d000 -   0x899ffb +libgcc_s.1.dylib ??? (???) <855e985eac29ad97b7155a63870511f0> /opt/local/lib/libgcc/libgcc_s.1.dylib
0x8fe00000 - 0x8fe30c23  dyld 97.1 (???) <89a0055b0e7ea2db881b73c6e63bc774> /usr/lib/dyld
0x908c7000 - 0x9099afff  com.apple.CoreServices.OSServices 228 (228) <8610aed4edbd5d21e887a68c32b5c216> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
0x90bb4000 - 0x90bbdfff  com.apple.DiskArbitration 2.2.1 (2.2.1) <682f5c45591e8c4a89c79e384e2c49af> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
0x91ac6000 - 0x91af1ff7  libauto.dylib ??? (???) <a64d088b2d17e013b9ee5a08d3a20d33> /usr/lib/libauto.dylib
0x921e2000 - 0x92217fff  com.apple.AE 402.3 (402.3) <75725936d014fd3ca2553d18b784b99b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
0x9298f000 - 0x92b2fff3  libSystem.B.dylib ??? (???) <900415cd2c829b2de9a6cdcdaa6307e3> /usr/lib/libSystem.B.dylib
0x92c0c000 - 0x92c11ff6  libmathCommon.A.dylib ??? (???) /usr/lib/system/libmathCommon.A.dylib
0x92c12000 - 0x92c97fff  libsqlite3.0.dylib ??? (???) <daf55b073488086ef5b9a3781be53f14> /usr/lib/libsqlite3.0.dylib
0x92e8c000 - 0x92fd4ff3  libicucore.A.dylib ??? (???) <07d0cefd48d11d5d5b1817c198013f0b> /usr/lib/libicucore.A.dylib
0x930c8000 - 0x93117fff  com.apple.Metadata 10.5.8 (398.26) <1a261534027b9d1518327d1fabe1182b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
0x9329c000 - 0x932a7ffb  libgcc_s.1.dylib ??? (???) <ea47fd375407f162c76d14d64ba246cd> /usr/lib/libgcc_s.1.dylib
0x932ea000 - 0x93380fff  com.apple.LaunchServices 291 (291) <37e4296a8c233e90c8990634264c294c> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
0x93382000 - 0x93390fff  libz.1.dylib ??? (???) <1a70dd3594a8c5ad39d785af5da23237> /usr/lib/libz.1.dylib
0x93401000 - 0x934ebfff  libxml2.2.dylib ??? (???) <0ad5de98fe29bf0d4cc45d0384c4e764> /usr/lib/libxml2.2.dylib
0x934ec000 - 0x93567fff  com.apple.SearchKit 1.2.2 (1.2.2) <a9d0033a5e1e55b5e382e52fe578d734> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
0x935a4000 - 0x935acfff  libbsm.dylib ??? (???) <c1fca3cbe3b1c21e9b31bc89b920f34c> /usr/lib/libbsm.dylib
0x938f1000 - 0x93bf3ffb  com.apple.CoreServices.CarbonCore 786.11 (786.13) <550244bb91e27b0fbafe01e1c4371103> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
0x93e7d000 - 0x93e9cfff  libresolv.9.dylib ??? (???) <c5c72e1cf61cb844163156956a1d8407> /usr/lib/libresolv.9.dylib
0x94211000 - 0x9424afff  com.apple.SystemConfiguration 1.9.2 (1.9.2) <21dee7ffd93306032f911b5ef3fdbab3> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
0x9427c000 - 0x9427cffa  com.apple.CoreServices 32 (32) <42b6dda539f7411606187335d9eae0c5> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
0x943a5000 - 0x9458effb  com.apple.security 5.0.5 (36371) <cfd97bfeda0ff5301a635ba6b6e4f83a> /System/Library/Frameworks/Security.framework/Versions/A/Security
0x946dc000 - 0x946f4ffb  com.apple.DictionaryServices 1.0.0 (1.0.0) <fe37191e732eeb66189185cd000a210b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
0x94733000 - 0x94858ff3  com.apple.CoreFoundation 6.5.7 (476.19) <dee0f0024f3bf976cfa0a0816e8aa338> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
0x94d92000 - 0x94df9ffb  libstdc++.6.dylib ??? (???) <a4e9b10268b3ffac26d0296499b24e8e> /usr/lib/libstdc++.6.dylib
0x95726000 - 0x95809fff  libobjc.A.dylib ??? (???) <a1d4be2eed463c6799b6a1447fde72ba> /usr/lib/libobjc.A.dylib
0x95824000 - 0x9584cfff  libxslt.1.dylib ??? (???) <bb985380f353bbc7ce694d56884ea156> /usr/lib/libxslt.1.dylib
0x95cae000 - 0x95ef4ffb  com.apple.Foundation 6.5.9 (677.26) <c30e4aea51bbae480d4550cd53abb441> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
0x96389000 - 0x9641eff7  com.apple.framework.IOKit 1.5.2 (???) <ced0a498252f76a2d2ba9f2a0ae02160> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x972cf000 - 0x97382ffc  com.apple.CFNetwork 438.14 (438.14) <6e213ab40eabfc276ca46a7c7cfad01a> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
0xfffec000 - 0xfffeffff  libobjc.A.dylib ??? (???) /usr/lib/libobjc.A.dylib
0xffff8000 - 0xffff9703  libSystem.B.dylib ??? (???) /usr/lib/libSystem.B.dylib

System configuration:
Model: PowerMac11,2, BootROM 5.2.7f1, 2 processors, PowerPC G5 (1.1), 2.3 GHz, 16 GB
Graphics: kHW_NVidiaGeForce6600Item, GeForce 6600, spdisplays_pcie_device, 256 MB
Memory Module: DIMM0/J6700, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM1/J6800, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM2/J6900, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM3/J7000, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM4/J7100, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM5/J7200, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM6/J7300, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM7/J7400, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Network Service: Ethernet 1, Ethernet, en0
PCI Card: GeForce 6600, display, SLOT-1
PCI Card: Apple 5714, network, GIGE
PCI Card: Apple 5714, network, GIGE
PCI Card: pci10cf,16a8, sppci_othernetwork, SLOT-2
Serial ATA Device: ST1000DM003-1CH162, 931.51 GB
Parallel ATA Device: PIONEER DVD-RW  DVR-110D
USB Device: hub_device, (null) mA
USB Device: Hub in Apple Extended USB Keyboard, (null) mA
USB Device: USB Mouse, (null) mA
USB Device: Apple Extended USB Keyboard, (null) mA
USB Device: Apple Cinema HD Display, (null) mA
FireWire Device: unknown_device, unknown_value, unknown_speed
FireWire Device: unknown_device, unknown_value, unknown_speed
Unfortunately I know nothing about C# so stacktraces do not tell me much.
There is also a crash log perhaps in a usual logs dir for crash reporter, could you dig out that one?

Finder in 10.6 is buggy, what you described is expected, more or less.
Solutions:
1. Use a third-party file manager (Path Finder or something open-source).
2. Use list view in Finder, then it works almost normally. Disk mounting and ejection work in fact, but Finder fails to update you. Restart the Finder, you will see mounted disks. Onyx 2.0.5 works on 10a190 and can be used to enable quit menu for Finder. Otherwise I am sure there are terminal commands.

Aside of crappy Finder it is pretty normal however. (Perhaps jpeg rendering by Finder will be weird (but it works perfectly fine in any apps) and outgoing internet sharing may not work.)
I use 10.6 ppc as my normal system and can assure you it is perfectly usable. Finder is bad, yes.
I was having other really bad issues too like gcc crashing because it cannot find fopen, and the macports install you linked to hanged. I'll try another install and see how that goes.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
Is this what you're looking for?

Code:
Process:         mono [159]
Path:            /Users/lain/barracuda-mono/mono/mono/mini/mono
Identifier:      mono
Version:         ??? (???)
Code Type:       PPC (Native)
Parent Process:  bash [145]

Interval Since Last Report:          375896 sec
Crashes Since Last Report:           60
Per-App Interval Since Last Report:  0 sec
Per-App Crashes Since Last Report:   7

Date/Time:       2024-06-30 19:58:50.406 -0700
OS Version:      Mac OS X 10.5.8 (9L31a)
Report Version:  6
Anonymous UUID:  7AF69094-17BB-4C52-9D01-BBB105356CB0

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread:  0

Thread 0 Crashed:
0   libSystem.B.dylib                 0x92a11b50 __kill + 12
1   libSystem.B.dylib                 0x92aacbfc abort + 84
2   mono                              0x001c2afc mono_post_native_crash_handler + 48 (mini-posix.c:1132)
3   mono                              0x001317b0 mono_handle_native_crash + 672
4   mono                              0x001c132c sigabrt_signal_handler + 224 (mini-posix.c:248)
5   libSystem.B.dylib                 0x92a0f9f8 _sigtramp + 64

Thread 1:
0   libSystem.B.dylib                 0x92996c0c __semwait_signal + 12
1   libSystem.B.dylib                 0x929d346c _pthread_cond_wait + 1580
2   mono                              0x0050d988 mono_os_cond_wait + 44 (mono-os-mutex.h:219)
3   mono                              0x0050f420 get_work + 336 (sgen-thread-pool.c:167)
4   mono                              0x0050f5e8 thread_func + 408 (sgen-thread-pool.c:198)
5   libSystem.B.dylib                 0x929d20c4 _pthread_start + 316

Thread 2:
0   libSystem.B.dylib                 0x92990248 semaphore_wait_trap + 8
1   mono                              0x003a9d2c mono_os_sem_wait + 48
2   mono                              0x003b904c summarizer_leader + 200
3   mono                              0x003acd9c start_wrapper_internal + 632
4   mono                              0x003acf40 start_wrapper + 120
5   libSystem.B.dylib                 0x929d20c4 _pthread_start + 316

Thread 3:
0   libSystem.B.dylib                 0x92990248 semaphore_wait_trap + 8
1   mono                              0x0043f25c mono_os_sem_wait + 48
2   mono                              0x0043f804 mono_coop_sem_wait + 84
3   mono                              0x004426bc finalizer_thread + 188
4   mono                              0x003acd9c start_wrapper_internal + 632
5   mono                              0x003acf40 start_wrapper + 120
6   libSystem.B.dylib                 0x929d20c4 _pthread_start + 316

Thread 0 crashed with PPC Thread State 32:
  srr0: 0x92a11b50  srr1: 0x0000d030   dar: 0x00a00300 dsisr: 0x0a000000
    r0: 0x00000025    r1: 0xbfffc8b0    r2: 0x00000008    r3: 0x00000000
    r4: 0x00000000    r5: 0x00000001    r6: 0x00000000    r7: 0x00000002
    r8: 0x3d0a0000    r9: 0x00000042   r10: 0x929daa04   r11: 0xa043752c
   r12: 0x92a11b3c   r13: 0x00000000   r14: 0x00000000   r15: 0x01804a60
   r16: 0x01804a60   r17: 0x00000000   r18: 0x01804a60   r19: 0x00000000
   r20: 0x00000000   r21: 0x01804a60   r22: 0x00000000   r23: 0x00000001
   r24: 0x00000000   r25: 0x00000000   r26: 0x0000000c   r27: 0xbfffcc80
   r28: 0xbfffcc60   r29: 0x0090abf0   r30: 0xbfffc910   r31: 0x92aacbb4
    cr: 0x42000432   xer: 0x00000000    lr: 0x92aacc00   ctr: 0x92a11b3c
vrsave: 0x00000000

Binary Images:
    0x1000 -   0x634fff +mono ??? (???) <ae53f55fb77cabcb55d52c12252fbb89> /Users/lain/barracuda-mono/mono/mono/mini/mono
  0x864000 -   0x877ffc +libz.1.dylib ??? (???) <ea5d8a0f36b8091338589425364e801c> /opt/local/lib/libz.1.dylib
  0x87b000 -   0x881fff +libMacportsLegacySupport.dylib ??? (???) <f2d1a2267ed021ff9689faeff54cafd7> /opt/local/lib/libMacportsLegacySupport.dylib
  0x886000 -   0x889fff +libatomic.1.dylib ??? (???) <036193c0ad3b012744200b860bc23f3a> /opt/local/lib/libgcc/libatomic.1.dylib
  0x88d000 -   0x899ffb +libgcc_s.1.dylib ??? (???) <855e985eac29ad97b7155a63870511f0> /opt/local/lib/libgcc/libgcc_s.1.dylib
0x8fe00000 - 0x8fe30c23  dyld 97.1 (???) <89a0055b0e7ea2db881b73c6e63bc774> /usr/lib/dyld
0x908c7000 - 0x9099afff  com.apple.CoreServices.OSServices 228 (228) <8610aed4edbd5d21e887a68c32b5c216> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
0x90bb4000 - 0x90bbdfff  com.apple.DiskArbitration 2.2.1 (2.2.1) <682f5c45591e8c4a89c79e384e2c49af> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
0x91ac6000 - 0x91af1ff7  libauto.dylib ??? (???) <a64d088b2d17e013b9ee5a08d3a20d33> /usr/lib/libauto.dylib
0x921e2000 - 0x92217fff  com.apple.AE 402.3 (402.3) <75725936d014fd3ca2553d18b784b99b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
0x9298f000 - 0x92b2fff3  libSystem.B.dylib ??? (???) <900415cd2c829b2de9a6cdcdaa6307e3> /usr/lib/libSystem.B.dylib
0x92c0c000 - 0x92c11ff6  libmathCommon.A.dylib ??? (???) /usr/lib/system/libmathCommon.A.dylib
0x92c12000 - 0x92c97fff  libsqlite3.0.dylib ??? (???) <daf55b073488086ef5b9a3781be53f14> /usr/lib/libsqlite3.0.dylib
0x92e8c000 - 0x92fd4ff3  libicucore.A.dylib ??? (???) <07d0cefd48d11d5d5b1817c198013f0b> /usr/lib/libicucore.A.dylib
0x930c8000 - 0x93117fff  com.apple.Metadata 10.5.8 (398.26) <1a261534027b9d1518327d1fabe1182b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
0x9329c000 - 0x932a7ffb  libgcc_s.1.dylib ??? (???) <ea47fd375407f162c76d14d64ba246cd> /usr/lib/libgcc_s.1.dylib
0x932ea000 - 0x93380fff  com.apple.LaunchServices 291 (291) <37e4296a8c233e90c8990634264c294c> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
0x93382000 - 0x93390fff  libz.1.dylib ??? (???) <1a70dd3594a8c5ad39d785af5da23237> /usr/lib/libz.1.dylib
0x93401000 - 0x934ebfff  libxml2.2.dylib ??? (???) <0ad5de98fe29bf0d4cc45d0384c4e764> /usr/lib/libxml2.2.dylib
0x934ec000 - 0x93567fff  com.apple.SearchKit 1.2.2 (1.2.2) <a9d0033a5e1e55b5e382e52fe578d734> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
0x935a4000 - 0x935acfff  libbsm.dylib ??? (???) <c1fca3cbe3b1c21e9b31bc89b920f34c> /usr/lib/libbsm.dylib
0x938f1000 - 0x93bf3ffb  com.apple.CoreServices.CarbonCore 786.11 (786.13) <550244bb91e27b0fbafe01e1c4371103> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
0x93e7d000 - 0x93e9cfff  libresolv.9.dylib ??? (???) <c5c72e1cf61cb844163156956a1d8407> /usr/lib/libresolv.9.dylib
0x94211000 - 0x9424afff  com.apple.SystemConfiguration 1.9.2 (1.9.2) <21dee7ffd93306032f911b5ef3fdbab3> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
0x9427c000 - 0x9427cffa  com.apple.CoreServices 32 (32) <42b6dda539f7411606187335d9eae0c5> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
0x943a5000 - 0x9458effb  com.apple.security 5.0.5 (36371) <cfd97bfeda0ff5301a635ba6b6e4f83a> /System/Library/Frameworks/Security.framework/Versions/A/Security
0x946dc000 - 0x946f4ffb  com.apple.DictionaryServices 1.0.0 (1.0.0) <fe37191e732eeb66189185cd000a210b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
0x94733000 - 0x94858ff3  com.apple.CoreFoundation 6.5.7 (476.19) <dee0f0024f3bf976cfa0a0816e8aa338> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
0x94d92000 - 0x94df9ffb  libstdc++.6.dylib ??? (???) <a4e9b10268b3ffac26d0296499b24e8e> /usr/lib/libstdc++.6.dylib
0x95726000 - 0x95809fff  libobjc.A.dylib ??? (???) <a1d4be2eed463c6799b6a1447fde72ba> /usr/lib/libobjc.A.dylib
0x95824000 - 0x9584cfff  libxslt.1.dylib ??? (???) <bb985380f353bbc7ce694d56884ea156> /usr/lib/libxslt.1.dylib
0x95cae000 - 0x95ef4ffb  com.apple.Foundation 6.5.9 (677.26) <c30e4aea51bbae480d4550cd53abb441> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
0x96389000 - 0x9641eff7  com.apple.framework.IOKit 1.5.2 (???) <ced0a498252f76a2d2ba9f2a0ae02160> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x972cf000 - 0x97382ffc  com.apple.CFNetwork 438.14 (438.14) <6e213ab40eabfc276ca46a7c7cfad01a> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
0xfffec000 - 0xfffeffff  libobjc.A.dylib ??? (???) /usr/lib/libobjc.A.dylib
0xffff8000 - 0xffff9703  libSystem.B.dylib ??? (???) /usr/lib/libSystem.B.dylib

System configuration:
Model: PowerMac11,2, BootROM 5.2.7f1, 2 processors, PowerPC G5 (1.1), 2.3 GHz, 16 GB
Graphics: kHW_NVidiaGeForce6600Item, GeForce 6600, spdisplays_pcie_device, 256 MB
Memory Module: DIMM0/J6700, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM1/J6800, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM2/J6900, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM3/J7000, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM4/J7100, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM5/J7200, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM6/J7300, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Memory Module: DIMM7/J7400, 2 GB, DDR2 SDRAM ECC, PC2-4200E-444
Network Service: Ethernet 1, Ethernet, en0
PCI Card: GeForce 6600, display, SLOT-1
PCI Card: Apple 5714, network, GIGE
PCI Card: Apple 5714, network, GIGE
PCI Card: pci10cf,16a8, sppci_othernetwork, SLOT-2
Serial ATA Device: ST1000DM003-1CH162, 931.51 GB
Parallel ATA Device: PIONEER DVD-RW  DVR-110D
USB Device: hub_device, (null) mA
USB Device: Hub in Apple Extended USB Keyboard, (null) mA
USB Device: USB Mouse, (null) mA
USB Device: Apple Extended USB Keyboard, (null) mA
USB Device: Apple Cinema HD Display, (null) mA
FireWire Device: unknown_device, unknown_value, unknown_speed
FireWire Device: unknown_device, unknown_value, unknown_speed

I was having other really bad issues too like gcc crashing because it cannot find fopen, and the macports install you linked to hanged. I'll try another install and see how that goes.

1. Just in case, you did install Xcode, right? Use the one from 10a190 image.

2. Which gcc crashed? Xcode, from my packages or some other one (how was it built?)?
Xcode gcc from 10a190 must work. If they don’t, something is wrong. My gccs hopefully work, but if there are issues, we can fix them. If you borrow gcc built on another system, it is expected not to work, don’t do that.

3. Installation of MacPorts I linked should work. At least I tried it on two machines, it worked as expected. I also verified that installing pre-built packages work. I did not test using anything installed though, so something could go wrong here. What I expect not to work out of the box is X11, since Apple one is broken. It should be wiped out, and MacPorts one used instead (xorg-server-legacy).
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
While gcc is building, I can clone a clean 10a190 image, install Xcode and try running the linked MacPorts (build something using pre-built gcc13) to see if that works correctly.
If it does, I will write it step-wise.

I also encourage building MacPorts from source instead of using my distfile, but you will need a few adjustments (see my branch of the base, but I will return to this) and my pem keys (assuming you want to use pre-built stuff).
But everything can be done from scratch, if desired, then you are sure nothing goes wrong due to pre-built software.
 

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
1. Just in case, you did install Xcode, right? Use the one from 10a190 image.

2. Which gcc crashed? Xcode, from my packages or some other one (how was it built?)?
Xcode gcc from 10a190 must work. If they don’t, something is wrong. My gccs hopefully work, but if there are issues, we can fix them. If you borrow gcc built on another system, it is expected not to work, don’t do that.

3. Installation of MacPorts I linked should work. At least I tried it on two machines, it worked as expected. I also verified that installing pre-built packages work. I did not test using anything installed though, so something could go wrong here. What I expect not to work out of the box is X11, since Apple one is broken. It should be wiped out, and MacPorts one used instead (xorg-server-legacy).
I installed xcode 3.2, just the normal one from Apple and it was xcode's gcc. Was there another Xcode I was supposed to install?
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
I installed xcode 3.2, just the normal one from Apple and it was xcode's gcc. Was there another Xcode I was supposed to install?

Which image? (Sorry for being annoying on this, but it is important.)

The only configuration which shall work out of the box is 10a190 with Xcode from 10a190.
Specifically, I use the cloneable image to install the OS (not the DVD ISO) and then DVD ISO of 10a190 to install Xcode.

No other Xcode will work without quite a bit of manual tweaking.

UPD. To be precise, use this to install 10.6 on the PowerMac:
Use this specific ISO to install Xcode: 10.6_snowleopard_10a190_clientdvd.iso
 

PowermacSuperuser

macrumors newbie
Jun 25, 2024
15
1
Which image? (Sorry for being annoying on this, but it is important.)

The only configuration which shall work out of the box is 10a190 with Xcode from 10a190.
Specifically, I use the cloneable image to install the OS (not the DVD ISO) and then DVD ISO of 10a190 to install Xcode.

No other Xcode will work without quite a bit of manual tweaking.

UPD. To be precise, use this to install 10.6 on the PowerMac:
Use this specific ISO to install Xcode: 10.6_snowleopard_10a190_clientdvd.iso
https://developer.apple.com/service...=/Developer_Tools/xcode_3.2/xcode3210a432.dmg is the xcode I used

Is the SL image you provided the one where you can install it from Disk Utility or is the one where I have to manually move kexts?
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
https://developer.apple.com/service...=/Developer_Tools/xcode_3.2/xcode3210a432.dmg is the xcode I used

Is the SL image you provided the one where you can install it from Disk Utility or is the one where I have to manually move kexts?

Please do not use that Xcode, it is expected not to work. (Besides getting an incompatible SDK installed, you will have a large chunk of Unix tools without ppc slices, so it will be literally broken.)
The only working Xcode is the one from the same OS version, 10A190. (You can tweak 10A222 Xcode into being usable, but it will require replacing multiple binaries.)

I use the image which you can clone with Disk Utility, though this is for convenience sake; given someone did it via hacking kexts, it is certainly possible.
 

barracuda156

macrumors 68020
Original poster
Sep 3, 2021
2,322
1,534
https://developer.apple.com/service...=/Developer_Tools/xcode_3.2/xcode3210a432.dmg is the xcode I used

Is the SL image you provided the one where you can install it from Disk Utility or is the one where I have to manually move kexts?

Ok, gcc13 build started, so it will be about 4 hrs till I can deal with building other stuff.

I will try to write some stuff in the meanwhile to specify what is to be used, that will save some time and nerves, hopefully LOL

Could you confirm if you face the same issues with the correct Xcode being installed? If yes, I will try to reproduce that on a PowerBook.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.