-
Notifications
You must be signed in to change notification settings - Fork 277
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
Cannot load the SIMD JSON library in Cling #442
Comments
@bellenot can we expect that this works? Any insights from your side? |
I'll have to investigate and try to fix it |
It seems to work now with recent master on Ubuntu22. Could you retry with latest master @Keithcat1 ? |
No, it still doesn't work here on Windows. Tested using master branch of the latest SimdJSON and Cling commit f9b7ba1, since Cling is slow to build. I tried to do whatever the quickstart example did.
|
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes root-project/cling#442
So the PR root-project/root#15506 fixes the issue, but you'll need to load
|
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes root-project/cling#442
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes #442
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes root-project/cling#442
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes root-project/cling#442
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes root-project/cling#442
Export the following missing symbols: ``` void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64) void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64) ``` and ``` void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &) void * __cdecl operator new(unsigned int,struct std::nothrow_t const &) ``` Fixes root-project/cling#442
Describe the bug
Attempting to #include "simdjson.cpp" (https://github.com/simdjson/simdjson) from the Cling REPL fails with:
[cling]$ #include <simdjson.cpp>
IncrementalExecutor::executeFunction: symbol '??2@YAPEAX_KAEBUnothrow_t@std@@@z' unresolved while linking function '??E?id@?$num_put@DV?$ostreambuf_iterator@DU?$char
traits@D@std@@@std@@@std@@2V0locale@2@A@@YAXXZcling_module_1'!
You are probably missing the definition of void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64)
Maybe you need to load the corresponding shared library?
IncrementalExecutor::executeFunction: symbol '??_U@YAPEAX_KAEBUnothrow_t@std@@@z' unresolved while linking function '??__E?id@?$num_put@DV?$ostreambuf_iterator@DU?$char
traits@D@std@@@std@@@std@@2V0locale@2@A@@YAXXZcling_module_1'!
You are probably missing the definition of void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64)
Maybe you need to load the corresponding shared library?
[cling]$
Expected behavior
The file is included successfully and I can parse JSON in the REPL ETC.
To Reproduce
git clone https://github.com/simdjson/simdjson
cling
...
#include "simdjson/singleheader/simdjson.cpp"
Setup
Cling version 0.9
Windows 10 (64-bit)
Built it myself using Visual Studio 2019, Cmake and Ninja.
Additional context
This error happens both in CPPYY and Cling.
SIMD JSON has a #define to disable exceptions which didn't work. Building it as a DLL and then loading that didn't work either, though it might have delayed those error messages until actually trying to call into he SIMD JSON API.
The text was updated successfully, but these errors were encountered: