Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mac OS 10.6, libc++.from.MP.10.6.mac64.zip missing entry point ___emutls_get_address in libc++.1.dylib #214

Open
smith-48116 opened this issue Aug 17, 2024 · 27 comments

Comments

@smith-48116
Copy link

If I use the Mac Ports libcxx then Arctic-Fox works as expected. The files in the .zip file file 'libc++.from.MP.10.6.mac64.zip' on this github project do not work.

I wanted to install Artic-Fox on machines that did not have XCode or Mac Ports. I tried using the .dylib files in libc++.from.MP.10.6.mac64.zip and moved them to /usr/lib. When launching Arctic-Fox it error'd out.

Doing a file compare I found these two files differ from what Mac Ports installs.

diff /usr/lib/libc++.dylib "/Users/hsmith/Downloads/libc++.from.MP.10.6.mac64.zip/libc++.dylib"
diff /usr/lib/libc++abi.dylib "/Users/hsmith/Downloads/libc++.from.MP.10.6.mac64.zip/libc++abi.dylib"

The complete error report from MacOS is attached.


Port libcxx @5.0.1_5+emulated_tls+universal contains:
/opt/local/var/system_roots/libcxx-5.0.1-5.tgz


Date/Time: 2024-08-17 08:50:52.915 -0400
OS Version: Mac OS X 10.6.8 (10K549)
Report Version: 6

Interval Since Last Report: 20500 sec
Crashes Since Last Report: 16
Per-App Crashes Since Last Report: 7
Anonymous UUID: 0580E17A-54E2-4D6D-8D37-8699D0BEDBFD

Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Dyld Error Message:
Symbol not found: ___emutls_get_address
Referenced from: /Volumes/Arctic Fox/ArcticFox.app/Contents/MacOS/XUL
Expected in: /usr/lib/libc++.1.dylib
Errors.txt

@rmottola
Copy link
Owner

This looks strange, since I packed files from the system where I compiled. Looks like a different TLS setting. Will check.

@smith-48116
Copy link
Author

Did you have a chance to look at this yet? I have a MacOS 10.6 machine that I am trying to connect to a Synology (DSM 7.2) via HTTP and I was thinking that this issue may have been the problem. Thanks.

@rmottola
Copy link
Owner

rmottola commented Aug 27, 2024

@smith-48116 I just did an upgrade and checked on my only 10.6 64bit system (so no chance of error) and the files are unchanged. I did not pack the whole libcxx directory, I could zip it as a whole for you.
Do you have macports on that system?

I wonder:

  1. you might have some other library that causes conflict
  2. we are missing some other library instead, even if there is no direct error

@smith-48116
Copy link
Author

smith-48116 commented Aug 27, 2024 via email

@rmottola
Copy link
Owner

rmottola commented Aug 27, 2024

@smith-48116 I do not supply a working AF for 10.5, I can build it but it does not run, there is a branch, if you are interested. I don't know what JS version is needed. Most probably 7.2 Synology raised JS needs, I don't know, but in case better a separate report for version support.
Please let's concentrate on the libc++ problem first.

Sum up: on a clean machine without MacPorts/Fink/HomeBrew you need libraries. Which versions do you used? please use v45 now.
If you use those supplied by me, AF doesn't start because of emuTLS symbols, if you use some of yours (gotten from where?) it does work?
Where do you get yours?
Mine are from MacPorts /opt/local/lib/libcxx

To be on the safe side, I zipped right now the whole dire content again and added it to the v45 resources, if you care to try.

@smith-48116
Copy link
Author

smith-48116 commented Aug 27, 2024 via email

@smith-48116
Copy link
Author

smith-48116 commented Aug 27, 2024 via email

@rmottola
Copy link
Owner

@smith-48116 would you mind testing v45 and the dylibs I provided with v45? they came from the same system. Also maybe v45 helps your problem, it has JS improvements.

@smith-48116
Copy link
Author

smith-48116 commented Aug 27, 2024 via email

@rmottola
Copy link
Owner

I was running 45 on the virgin setup (No Mac Ports, No Fink). Stock MacOS 10.6.8. That is where the initial crash report came from. I can do testing after hours, it is an back-office computer under use all day from 8am EST to 6pm EST on a real machine. Alternatively, I could set up another WMWare test environment but that will take a few minutes. If you have something to test I can do that.

I added a complete archive of libcxx to try.

If you could tell me from which path you got your MacPort libraries that made it work... maybe I am zipping the wrong dir? Strange because it used to work for others.

@smith-48116
Copy link
Author

smith-48116 commented Aug 27, 2024 via email

@smith-48116
Copy link
Author

smith-48116 commented Aug 27, 2024 via email

@rmottola
Copy link
Owner

Pretty similar:
libcxx @5.0.1_5+emulated_tls+universal (active)

a search for libc++.dylib:

./Developer/SDKs/MacOSX10.6.sdk/usr/lib/libc++.dylib
./opt/local/lib/libcxx/libc++.dylib
./opt/local/libexec/llvm-11/lib/libc++.dylib
./Users/multix/libc++ from MP 10.6 mac64/libc++.dylib
./usr/lib/libc++.dylib

there is llmvm-11 lib, but I compile with clang6

@smith-48116
Copy link
Author

smith-48116 commented Aug 28, 2024 via email

@smith-48116
Copy link
Author

smith-48116 commented Aug 28, 2024 via email

@rmottola
Copy link
Owner

rmottola commented Aug 28, 2024

I tried hiding MacPorts my renaming /opt to /opt2.
I confirmed that some apps like emacs stop starting.
ArcticFox however still works for me. I am not able to reproduce the issues other have: the binary "just works".
Perhaps because I have XCode installed?

Essentially I am unable to reproduce the problem. It just works for me without extra libraries and I packaged you "my libraries"...

@smith-48116
Copy link
Author

smith-48116 commented Aug 28, 2024 via email

@rmottola
Copy link
Owner

I don't know... but the core is, it didn't work for you without libraries I think the MacPorts version has TLS emulation while apple's not.
Did you try the "complete" lib I shared here https://github.com/rmottola/Arctic-Fox/releases/expanded_assets/v45.0 ?

For 10.7 and later, IIRC correctly from MacPorts, there is no issue with TLS emulation, although I have seen libcxx still installed.

@rmottola
Copy link
Owner

rmottola commented Sep 9, 2024

I cannot reproduce the issue and no confirmation was given that with the new supplied libcxx the problem persists.

On internet forum, issues are written where old libcxx, by wicknix, was used/mixed with. I don't know if this is the case, but since MacPorts use solves it, it could be a hint.

@smith-48116
Copy link
Author

smith-48116 commented Sep 9, 2024 via email

@rmottola
Copy link
Owner

@smith-48116 no problem, I was just annotating after some research.
It is in v45 assets: https://github.com/rmottola/Arctic-Fox/releases/expanded_assets/v45.0

@EAZYBLACK
Copy link

i have same issue

@rmottola
Copy link
Owner

@EAZYBLACK is it really the same issue, error about ___emutls_get_address and not a similar libc++ error?
In case do you confirm you are installing the libc++ version supplied with ArcticFox 45 and not previous ones by wicknix? As alternative you can install/use a recent version of MacPorts.

@EAZYBLACK
Copy link

EAZYBLACK commented Sep 24, 2024

@EAZYBLACK is it really the same issue, error about ___emutls_get_address and not a similar libc++ error? In case do you confirm you are installing the libc++ version supplied with ArcticFox 45 and not previous ones by wicknix? As alternative you can install/use a recent version of MacPorts.

exactly same, using arcticfox 45 libc++ errors but using those ones that he sent work fine
image

@rmottola
Copy link
Owner

@smith-48116 @EAZYBLACK I think I finally understood the issue, thanks to Ken. MacPorts on 10.6 installs two libcxx versions and I was sharing the wrong one, since I build with "only" clang 6.0

I just released 45.1 and in the assets there is a new libcxx file. Please remove the old one (this one contains less files) let me know.

@rmottola
Copy link
Owner

any news, @smith-48116 @EAZYBLACK ?

@EAZYBLACK
Copy link

oh sorry for late reply, i will try it later and tell

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants