On 3/14/23 16:24, avih wrote:
  On Tuesday, March 14, 2023, 02:53:19 PM GMT+2, Herman ten Brugge via Tinycc-devel 
<tinycc-devel@nongnu.org> wrote:

I can only test things on macos 12.6 (aarch64) and macos 10.15.7 (x86_64).
These 2 platforms work with head.

I applied a lot of fixes since november so head is probably the best version.


I do not understand why adding debug support fails for osx.

The load command 0x80000034 is LC_DYLD_CHAINED_FIXUPS.

This probably means that you have to configure with option
'--config-new_macho=no'. If this stil fails can you sent me
'otool -l <exe>' of the failing executable and tcc.

Herman

Thanks for the reply.

If indeed it should be invoked with --config-new_macho=no, would it
be possible to auto-detect it? (while still allowing override)

With commit 62096265, '--config-new_macho=no' does not seem to make
a difference, and "hello-exe" still fails the same, starting with:

------------ hello-exe ------------
dyld: REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB has segment 4 which is not a 
writable segment (__LINKEDIT) in /Users/avih/dev/tcc/tcc.upstream/tests/./hello
/bin/sh: line 1: 58643 Abort trap: 6 ./hello


With current mob (4dc4e93), '--config-new_macho=no' does make
a difference, where now "hello-exe", "hello-run", and "libtest" do
pass, and "libtest_mt" passes some tests and then fails:
The config-new-macho=no was the default with commit 62096265.

Can you change the code in 'tests/tcctest.c' on line 3865 to '#if GCC_MAJOR >= 40'. You probably have a very very old clang that does not have some builtin support but stll sets GCC_MAJOR to a value >= 4.

Not all platforms in tcc are auto detected. For some platforms have set configure options like '--with-selinux' or '--config-pie'.

    Herman



_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to