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

ChakraCore build error #2

Open
mcgov opened this issue Jan 17, 2018 · 2 comments
Open

ChakraCore build error #2

mcgov opened this issue Jan 17, 2018 · 2 comments

Comments

@mcgov
Copy link

mcgov commented Jan 17, 2018

Built ChakraCore with the hextype enabled version of clang from this repo on Ubuntu 16.04 LTS. I actually suspect that this could be a problem with Chakra's build makefiles, but I'd like help diagnosing what is going wrong.

Build succeeds, on attempting to run anything there is a fatal dllopen error.

dlopen() failed; dlerror says '/mnt/f/ChakraHex/ChakraCore/out/Debug/libChakraCore.so: undefined symbol: __update_phantom_info'
FATAL ERROR: Unable to load /mnt/f/ChakraHex/ChakraCore/out/Debug/libChakraCore.so GetLastError=0x7e

This looks like some symbol that should have been compiled in when I included -fsanitize=hextype. Any ideas? I'm digging around trying to find a missing -fsanitize line at the moment. I'd be very happy to get any advice. I guess I'll attempt building the library statically and report back.

@mcgov
Copy link
Author

mcgov commented Jan 17, 2018

Building the library with --static fixes the issue. I can also confirm hextype will catch some type confusions when compiled into the executable ch (though not in JIT compiled code since it lacks instrumentation) when it's compiled with ChakraCore embedded statically.

Pretty neat! Have you experienced issues using hextype sanitization in dynamic libraries? Is this maybe something smart people just know to avoid?

@jys0710
Copy link
Collaborator

jys0710 commented Jan 18, 2018

We did not test this case. Thanks for the report and I will try to test it and check the result.

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

2 participants