glTF writer is unavailable with OCCT-7_9_0_beta2 [Resolved]

Hello all,

i get the following error now:
Error: glTF writer is unavailable - OCCT has been built without RapidJSON support [HAVE_RAPIDJSON undefined]

version: OCCT-7_9_0_beta2 (beta1 also)

modified CMakeLists.txt:
# whether use optional 3rdparty or not
set (USE_TK ON CACHE BOOL "${USE_TK_DESCR}")
set (USE_FREETYPE ON CACHE BOOL "${USE_FREETYPE_DESCR}")
set (USE_FREEIMAGE ON CACHE BOOL "${USE_FREEIMAGE_DESCR}") #was OFF
set (USE_FFMPEG ONthank you CACHE BOOL "${USE_FFMPEG_DESCR}") #was OFF
set (USE_OPENVR ON CACHE BOOL "${USE_OPENVR_DESCR}") #was OFF
set (USE_RAPIDJSON ON CACHE BOOL "${USE_RAPIDJSON_DESCR}") #was OFF
set (USE_DRACO ON CACHE BOOL "${USE_DRACO_DESCR}") #was OFF
set (USE_TBB ON CACHE BOOL "${USE_TBB_DESCR}") #was OFF
set (USE_EIGEN ON CACHE BOOL "${USE_EIGEN_DESCR}") #was OFF

compiled with Qt6

got 67 dll

i copied *.hxx *.lxx to inc folder

Thanks for hints! Cheers

Dmitrii Pasukhin's picture

Hello. The output is show the issue:

Please turn on RapidJson (it is required to work with GLTF) and enable DRACO.

Best regards, Dmitrii.

Dmitrii Pasukhin's picture

If you modify CMakeList.txt - then it is not accepted way. OCCT tested publicly, you can check the build process and test process. Data Exchange - IGES Import Degenerated BSpline crash

Please use the next command:

 mkdir build
  cd build
  cmake -T host=x64 `
        -D USE_FREETYPE=ON `
        -D USE_TK=OFF `
        -D BUILD_USE_PCH=ON `
        -D BUILD_OPT_PROFILE=Production `
        -D BUILD_INCLUDE_SYMLINK=ON `
        -D CMAKE_BUILD_TYPE=Release `
        -D 3RDPARTY_DIR=D:\a\OCCT\OCCT/3rdparty-vc14-64 `
        -D INSTALL_DIR=D:\a\OCCT\OCCT/install `
        -D USE_D3D=ON `
        -D USE_DRACO=ON `
        -D USE_FFMPEG=ON `
        -D USE_FREEIMAGE=ON `
        -D USE_GLES2=ON `
        -D USE_OPENVR=ON `
        -D USE_VTK=ON `
        -D USE_TBB=ON `
        -D USE_RAPIDJSON=ON `
        -D USE_OPENGL=ON ..

Best regards, Dmitrii.

Daniel Duesentrieb's picture

Thanks

I had to add ".." after cmake to get it going. I came to

Build files have been written to: C:/Users/xxx/Downloads/OCCT-7_9_0_beta2/build content please see build.jpg

it went real fast so I assume the dlls are not build. I also think this is for VisualStudio??

I forgot the mention I need it for MinGW

Thanks!

Attachments: 
Dmitrii Pasukhin's picture

In my case is only cmake step, then you need to build. But for mingw it is easier :)

There is sample for UCRT Msys2. More samples in GitHub action for OCCT.
packages: mingw-w64-ucrt-x86_64-toolchain mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-gcc-libs mingw-w64-ucrt-x86_64-omp mingw-w64-ucrt-x86_64-cmake mingw-w64-ucrt-x86_64-ninja mingw-w64-ucrt-x86_64-rapidjson mingw-w64-ucrt-x86_64-freetype mingw-w64-ucrt-x86_64-draco mingw-w64-ucrt-x86_64-freeimage mingw-w64-ucrt-x86_64-tbb mingw-w64-ucrt-x86_64-tk mingw-w64-ucrt-x86_64-tcl mingw-w64-ucrt-x86_64-openvr mingw-w64-ucrt-x86_64-jemalloc mingw-w64-ucrt-x86_64-mesa mingw-w64-ucrt-x86_64-angleproject mingw-w64-ucrt-x86_64-llvm-openmp mingw-w64-ucrt-x86_64-winpthreads-git mingw-w64-ucrt-x86_64-libwinpthread-git mingw-w64-cross-mingwarm64-winpthreads

  mkdir -p build
  cd build
  cmake -G "Ninja" \
        -D CMAKE_C_COMPILER=x86_64-w64-mingw32-gcc \
        -D CMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ \
        -D CMAKE_PREFIX_PATH=/ucrt64 \
        -D BUILD_USE_PCH=ON \
        -D BUILD_INCLUDE_SYMLINK=OFF \
        -D BUILD_OPT_PROFILE=Production \
        -D BUILD_LIBRARY_TYPE=Shared \
        -D USE_TK=ON \
        -D CMAKE_BUILD_TYPE=Release \
        -D USE_MMGR_TYPE=JEMALLOC \
        -D INSTALL_DIR="D:\a\OCCT\OCCT/install" \
        -D USE_FREETYPE=ON \
        -D USE_DRACO=ON \
        -D USE_FFMPEG=OFF \
        -D USE_FREEIMAGE=ON \
        -D USE_GLES2=ON \
        -D USE_OPENVR=ON \
        -D USE_VTK=OFF \
        -D USE_TBB=OFF \
        -D USE_RAPIDJSON=ON \
        -D USE_OPENGL=ON ..

  cd build
  cmake --build . --target install --config Release -- -j 16

Best regards, Dmitrii.

Daniel Duesentrieb's picture
cmake .. -G "Ninja" -D .......


cmake .. -G "Ninja" -D CMAKE_C_COMPILER=x86_64-w64-mingw32-gcc -D CMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ -D CMAKE_PREFIX_PATH=/ucrt64 -D BUILD_USE_PCH=ON -D BUILD_INCLUDE_SYMLINK=OFF -D BUILD_OPT_PROFILE=Production -D BUILD_LIBRARY_TYPE=Shared -D USE_TK=ON -D CMAKE_BUILD_TYPE=Release -D USE_MMGR_TYPE=JEMALLOC -D INSTALL_DIR="C:\Users\xxx\Downloads\OCCT-7_9_0_beta2\install" -D USE_FREETYPE=ON -D USE_DRACO=ON -D USE_FFMPEG=OFF -D USE_FREEIMAGE=ON -D USE_GLES2=ON -D USE_OPENVR=ON -D USE_VTK=OFF -D USE_TBB=OFF -D USE_RAPIDJSON=ON -D USE_OPENGL=ON
-- Info: TCL is used by OCCT
-- Info: TK is used by OCCT
-- Info: FreeType is used by OCCT
-- Info: TKIVtk and TKIVtkDraw toolkits excluded due to VTK usage is disabled
-- The C compiler identification is GNU 14.2.0
-- The CXX compiler identification is GNU 14.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/msys64/ucrt64/bin/x86_64-w64-mingw32-gcc.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/msys64/ucrt64/bin/x86_64-w64-mingw32-g++.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Info. Detecting doxygen
-- Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found suitable version "1.9.2", minimum required is "1.8.4") found components: doxygen
-- Info. Doxygen is found and can be used
-- Info. Overview building is turned on
-- Found Tclsh: C:/ActiveTcl/bin/tclsh.exe (found version "8.6")
-- Info: TCL version isn't found
-- Found Freetype: C:/Program Files/Eclipse Adoptium/jdk-11.0.14.101-hotspot/bin/freetype.dll (found version "2.13.3")
-- Info: The directories of 3rdparty headers:
        C:/ActiveTcl/include
        C:/msys64/ucrt64/include/freetype2
        C:/msys64/ucrt64/include
        C:/msys64/ucrt64/include/openvr
        C:/msys64/ucrt64/include/jemalloc
-- Info: The directories of 3rdparty libraries:
        C:/msys64/ucrt64/lib
        C:/Windows/System32
        C:/Program Files/Eclipse Adoptium/jdk-11.0.14.101-hotspot/bin
CMake Warning at CMakeLists.txt:945 (message):
  Could not find DLLs of used third-party products: 3RDPARTY_TCL_DLL_DIR
  3RDPARTY_TK_DLL_DIR 3RDPARTY_FREEIMAGE_DLL_DIR_freeimage


--
Info: (12:54:12) Start collecting all OCCT header files into C:/Users/xxx/Downloads/OCCT-7_9_0_beta2/build/inc ...
-- Info: (12:54:30) End the collecting
-- Info: (12:54:30) OCCT toolkits processed
-- Info: (12:54:30) OCCT configuration files prepared
-- Configuring done (31.9s)
-- Generating done (7.8s)

then i run

cmake --build . --target install --config Release -- -j 16


[58/5985] Building CXX object src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_WNT.cxx.obj
C:/Users/xxx/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_WNT.cxx:129:15: warning: "__try" redefined
  129 |       #define __try
      |               ^~~~~
In file included from C:/msys64/ucrt64/include/c++/14.2.0/bits/exception_ptr.h:35,
                 from C:/msys64/ucrt64/include/c++/14.2.0/exception:166,
                 from C:/msys64/ucrt64/include/c++/14.2.0/ios:41,
                 from C:/msys64/ucrt64/include/c++/14.2.0/ostream:40,
                 from C:/msys64/ucrt64/include/c++/14.2.0/iostream:41,
                 from C:/Users/xxx/Downloads/OCCT-7_9_0_beta2/src/TKernel/TKernel_pch.hxx:6,
                 from C:/Users/xxx/Downloads/OCCT-7_9_0_beta2/build/src/TKernel/CMakeFiles/TKernel.dir/cmake_pch.hxx:5,
                 from <command-line>:
C:/msys64/ucrt64/include/c++/14.2.0/bits/exception_defines.h:40:10: note: this is the location of the previous definition
   40 | # define __try      try
      |          ^~~~~
[710/5985] Linking CXX shared library win64\gcc\bin\libTKernel.dll
FAILED: win64/gcc/bin/libTKernel.dll win64/gcc/lib/libTKernel.dll.a
C:\WINDOWS\system32\cmd.exe /C "cd . && C:\msys64\ucrt64\bin\x86_64-w64-mingw32-g++.exe -fexceptions -fPIC -Wall -Wextra -Wattributes -O3 -DNDEBUG -O3 -fomit-frame-pointer -flto -ffunction-sections -s -DNo_Exception  -Wl,--export-all-symbols  -flto -shared -o win64\gcc\bin\libTKernel.dll -Wl,--out-implib,win64\gcc\lib\libTKernel.dll.a -Wl,--major-image-version,7,--minor-image-version,9 @CMakeFiles\TKernel.rsp && cd ."
lto-wrapper.exe: warning: using serial compilation of 14 LTRANS jobs
lto-wrapper.exe: note: see the '-flto' option documentation for more information
collect2.exe: error: ld returned 116 exit status
[725/5985] Building CXX object src/TKBRep/CMakeFiles/TKBRep.dir/__/BRep/BRep_Builder.cxx.obj
ninja: build stopped: subcommand failed.
Dmitrii Pasukhin's picture

Please check that your Msys ucrt up to date. If error still here

- change -j 16 to your core number,

- disable USE_PCH

- change compiler to clang and clang++

- use not 'Production', but 'Default' BUILD_OPT_PROFILE

Best regards, Dmitrii 

Daniel Duesentrieb's picture
pacman -S mingw-w64-ucrt-x86_64-toolchain
pacman -S mingw-w64-ucrt-x86_64-gcc
pacman -S mingw-w64-ucrt-x86_64-gcc-libs
pacman -S mingw-w64-ucrt-x86_64-omp
pacman -S mingw-w64-ucrt-x86_64-cmake
pacman -S mingw-w64-ucrt-x86_64-ninja
pacman -S mingw-w64-ucrt-x86_64-rapidjson
pacman -S mingw-w64-ucrt-x86_64-freetype
pacman -S mingw-w64-ucrt-x86_64-draco
pacman -S mingw-w64-ucrt-x86_64-freeimage
pacman -S mingw-w64-ucrt-x86_64-tbb
pacman -S mingw-w64-ucrt-x86_64-tk
pacman -S mingw-w64-ucrt-x86_64-tcl
pacman -S mingw-w64-ucrt-x86_64-openvr
pacman -S mingw-w64-ucrt-x86_64-jemalloc
pacman -S mingw-w64-ucrt-x86_64-mesa
pacman -S mingw-w64-ucrt-x86_64-angleproject
pacman -S mingw-w64-ucrt-x86_64-llvm-openmp
pacman -S mingw-w64-ucrt-x86_64-winpthreads-git
pacman -S mingw-w64-ucrt-x86_64-libwinpthread-git
pacman -S mingw-w64-ucrt-cross-mingwarm64-winpthreads


pacman -Syu

:: Synchronizing package databases...
 clangarm64 is up to date
 mingw32 is up to date
 mingw64 is up to date
 ucrt64 is up to date
 clang64 is up to date
 msys is up to date
:: Starting core system upgrade...
 there is nothing to do
:: Starting full system upgrade...
 there is nothing to do

pacman -S mingw-w64-ucrt-x86_64-clang


cmake .. -G "Ninja" -D CMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF -D CMAKE_C_COMPILER=clang -D CMAKE_CXX_COMPILER=clang++ -D CMAKE_PREFIX_PATH=/ucrt64 -D BUILD_USE_PCH=OFF -D BUILD_INCLUDE_SYMLINK=OFF -D BUILD_OPT_PROFILE=Default -D BUILD_LIBRARY_TYPE=Shared -D USE_TK=ON -D CMAKE_BUILD_TYPE=Release -D USE_MMGR_TYPE=JEMALLOC -D INSTALL_DIR="C:\Users\XXX\Downloads\OCCT-7_9_0_beta2\install" -D USE_FREETYPE=ON -D USE_DRACO=ON -D USE_FFMPEG=OFF -D USE_FREEIMAGE=ON -D USE_GLES2=ON -D USE_OPENVR=ON -D USE_VTK=OFF -D USE_TBB=OFF -D USE_RAPIDJSON=ON -D USE_OPENGL=ON

All looks good until here:

 Could not find DLLs of used third-party products: 3RDPARTY_TCL_DLL_DIR
  3RDPARTY_TK_DLL_DIR 3RDPARTY_FREEIMAGE_DLL_DIR_freeimage

anyhow - I keep going with

cmake --build . --target install --config Release -- -j 1

[23/5914] Building CXX object src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_Parallel.cxx.obj
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_Parallel.cxx:49:31: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'LPFN_ISWOW64PROCESS' (aka 'int (*)(void *, int *)') converts to incompatible function type [-Wcast-function-type-mismatch]
   49 |                             : (LPFN_ISWOW64PROCESS)GetProcAddress(aKern32Module, "IsWow64Process");
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_Parallel.cxx:223:29: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'LPFN_GSI' (aka 'int (*)(_SYSTEM_INFO *)') converts to incompatible function type [-Wcast-function-type-mismatch]
  223 |     LPFN_GSI aFuncSysInfo = (LPFN_GSI)GetProcAddress(aKern32, "GetNativeSystemInfo");
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
[30/5914] Building CXX object src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_SharedLibrary.cxx.obj
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_SharedLibrary.cxx:320:23: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'OSD_Function' (aka 'int (*)(...)') converts to incompatible function type [-Wcast-function-type-mismatch]
  320 |   OSD_Function func = (OSD_Function)GetProcAddress((HMODULE)myHandle, Name);
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[31/5914] Building CXX object src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_signal.cxx.obj
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_signal.cxx:318:26: warning: cast from 'void (*)(int, int)' to 'void (*)(int)' converts to incompatible function type [-Wcast-function-type-mismatch]
  318 |       if (signal(signum, (void (*)(int))SIGWntHandler) == SIG_ERR)
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_signal.cxx:349:26: warning: cast from 'void (*)(int, int)' to 'void (*)(int)' converts to incompatible function type [-Wcast-function-type-mismatch]
  349 |       if (signal(signum, (void (*)(int))SIGWntHandler) == SIG_ERR)
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_signal.cxx:354:26: warning: cast from 'void (*)(int, int)' to 'void (*)(int)' converts to incompatible function type [-Wcast-function-type-mismatch]
  354 |       if (signal(signum, (void (*)(int))SIGWntHandler) == SIG_ERR)
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/OSD/OSD_signal.cxx:493:47: warning: cast from 'void (*)(int, int)' to 'SignalFuncType' (aka 'void (*)(int)') converts to incompatible function type [-Wcast-function-type-mismatch]
  493 |       aPreviousFunc = signal(aSignalTypes[i], (SignalFuncType)SIGWntHandler);
      |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4 warnings generated.
[36/5914] Building CXX object src/TKernel/CMakeFiles/TKernel.dir/__/Plugin/Plugin.cxx.obj
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Plugin/Plugin.cxx:103:50: warning: cast from 'OSD_Function' (aka 'int (*)(...)') to 'Standard_Transient *(*)(const Standard_GUID &)' converts to incompatible function type [-Wcast-function-type-mismatch]
  103 |   fp                                           = (Standard_Transient * (*)(const Standard_GUID&)) f;
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
[60/5914] Building CXX object src/TKernel/CMakeFiles/TKernel.dir/__/Standard/Standard_StackTrace.cxx.obj
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Standard/Standard_StackTrace.cxx:112:26: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'SYMINITIALIZEPROC' (aka 'int (*)(void *, const char *, int)') converts to incompatible function type [-Wcast-function-type-mismatch]
  112 |     if ((SymInitialize = (SYMINITIALIZEPROC)GetProcAddress(myDbgHelpLib, "SymInitialize")) == NULL)
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Standard/Standard_StackTrace.cxx:118:23: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'SYMCLEANUPPROC' (aka 'int (*)(void *)') converts to incompatible function type [-Wcast-function-type-mismatch]
  118 |     if ((SymCleanup = (SYMCLEANUPPROC)GetProcAddress(myDbgHelpLib, "SymCleanup")) == NULL)
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Standard/Standard_StackTrace.cxx:124:24: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'STACKWALK64PROC' (aka 'int (*)(unsigned long, void *, void *, _tagSTACKFRAME64 *, void *, int (*)(void *, unsigned long long, void *, unsigned long, unsigned long *), void *(*)(void *, unsigned long long), unsigned long long (*)(void *, unsigned long long), unsigned long long (*)(void *, void *, _tagADDRESS64 *))') converts to incompatible function type [-Wcast-function-type-mismatch]
  124 |     if ((StackWalk64 = (STACKWALK64PROC)GetProcAddress(myDbgHelpLib, "StackWalk64")) == NULL)
      |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Standard/Standard_StackTrace.cxx:131:12: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'PFUNCTION_TABLE_ACCESS_ROUTINE64' (aka 'void *(*)(void *, unsigned long long)') converts to incompatible function type [-Wcast-function-type-mismatch]
  131 |            (PFUNCTION_TABLE_ACCESS_ROUTINE64)GetProcAddress(myDbgHelpLib,
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  132 |                                                             "SymFunctionTableAccess64"))
      |                                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Standard/Standard_StackTrace.cxx:140:12: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'PGET_MODULE_BASE_ROUTINE64' (aka 'unsigned long long (*)(void *, unsigned long long)') converts to incompatible function type [-Wcast-function-type-mismatch]
  140 |            (PGET_MODULE_BASE_ROUTINE64)GetProcAddress(myDbgHelpLib, "SymGetModuleBase64"))
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/Users/XXX/Downloads/OCCT-7_9_0_beta2/src/Standard/Standard_StackTrace.cxx:147:24: warning: cast from 'FARPROC' (aka 'long long (*)()') to 'SYMFROMADDRPROC' (aka 'int (*)(void *, unsigned long long, unsigned long long *, _SYMBOL_INFO *)') converts to incompatible function type [-Wcast-function-type-mismatch]
  147 |     if ((SymFromAddr = (SYMFROMADDRPROC)GetProcAddress(myDbgHelpLib, "SymFromAddr")) == NULL)
      |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6 warnings generated.
[133/5914] Linking CXX shared library win64\clang\bin\libTKernel.dll
FAILED: win64/clang/bin/libTKernel.dll win64/clang/lib/libTKernel.dll.a
C:\WINDOWS\system32\cmd.exe /C "cd . && C:\msys64\ucrt64\bin\clang++.exe -fexceptions -fPIC -Wall -Wextra -Wshorten-64-to-32 -Wattributes -O3 -DNDEBUG -DNo_Exception  -Wl,--export-all-symbols -shared -o win64\clang\bin\libTKernel.dll -Wl,--out-implib,win64\clang\lib\libTKernel.dll.a -Wl,--major-image-version,7,--minor-image-version,9 @CMakeFiles\TKernel.rsp && cd ."
C:/msys64/ucrt64/bin/ld: C:/msys64/ucrt64/lib/dllcrt2.o: in function `_CRT_INIT':
C:/M/B/src/mingw-w64/mingw-w64-crt/crt/crtdll.c:131:(.text+0x8e): undefined reference to `_execute_onexit_table'
C:/msys64/ucrt64/bin/ld: C:/msys64/ucrt64/lib/dllcrt2.o: in function `pre_c_init':
C:/M/B/src/mingw-w64/mingw-w64-crt/crt/crtdll.c:64:(.text+0x8): undefined reference to `_initialize_onexit_table'
C:/msys64/ucrt64/bin/ld: C:/msys64/ucrt64/lib/dllcrt2.o: in function `atexit':
C:/M/B/src/mingw-w64/mingw-w64-crt/crt/crtdll.c:216:(.text+0x34b): undefined reference to `_register_onexit_function'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_FileNode.cxx.obj:OSD_FileNode.cxx:(.text$StringCchPrintfW[StringCchPrintfW]+0x55): undefined reference to `__stdio_common_vswprintf'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_PerfMeter.cxx.obj:OSD_PerfMeter.cxx:(.text+0x58): undefined reference to `strdup'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_PerfMeter.cxx.obj:OSD_PerfMeter.cxx:(.text+0x138): undefined reference to `strdup'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_PerfMeter.cxx.obj:OSD_PerfMeter.cxx:(.text+0x248): undefined reference to `strdup'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_signal.cxx.obj:OSD_signal.cxx:(.text$_snprintf_s[_snprintf_s]+0x33): undefined reference to `__stdio_common_vsnprintf_s'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/OSD/OSD_ThreadPool.cxx.obj:OSD_ThreadPool.cxx:(.text+0x222): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Resource/Resource_Manager.cxx.obj:Resource_Manager.cxx:(.text+0x1dd3): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Resource/Resource_Manager.cxx.obj:Resource_Manager.cxx:(.text+0x204a): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Standard/Standard_Real.cxx.obj:Standard_Real.cxx:(.text+0x433): undefined reference to `atanh'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Standard/Standard_Real.cxx.obj:Standard_Real.cxx:(.text+0x49b): undefined reference to `acosh'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Storage/Storage_HeaderData.cxx.obj:Storage_HeaderData.cxx:(.text+0x351): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Storage/Storage_HeaderData.cxx.obj:Storage_HeaderData.cxx:(.text+0x477): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Storage/Storage_RootData.cxx.obj:Storage_RootData.cxx:(.text+0x33a): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Storage/Storage_Schema.cxx.obj:Storage_Schema.cxx:(.text+0xc32): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/Storage/Storage_TypeData.cxx.obj:Storage_TypeData.cxx:(.text+0x320): undefined reference to `__intrinsic_setjmpex'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/NCollection/NCollection_IncAllocator.cxx.obj:NCollection_IncAllocator.cxx:(.text+0x3d4): undefined reference to `lround'
C:/msys64/ucrt64/bin/ld: src/TKernel/CMakeFiles/TKernel.dir/__/NCollection/NCollection_IncAllocator.cxx.obj:NCollection_IncAllocator.cxx:(.text+0x522): undefined reference to `lround'
C:/msys64/ucrt64/bin/ld: C:/msys64/ucrt64/lib/libmingw32.a(lib64_libmingw32_a-pseudo-reloc.o): in function `__report_error':
C:/M/B/src/mingw-w64/mingw-w64-crt/crt/pseudo-reloc.c:150:(.text+0x28): undefined reference to `__acrt_iob_func'
C:/msys64/ucrt64/bin/ld: C:/M/B/src/mingw-w64/mingw-w64-crt/crt/pseudo-reloc.c:151:(.text+0x51): undefined reference to `__acrt_iob_func'
C:/msys64/ucrt64/bin/ld: C:/msys64/ucrt64/lib/libmingwex.a(lib64_libmingwex_a-mingw_sformat.o): in function `__mingw_sformat':
C:/M/B/src/mingw-w64/mingw-w64-crt/stdio/mingw_sformat.c:1071:(.text+0x154a): undefined reference to `strtoll'
C:/msys64/ucrt64/bin/ld: C:/M/B/src/mingw-w64/mingw-w64-crt/stdio/mingw_sformat.c:1073:(.text+0x3311): undefined reference to `strtoull'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed. failed.

There is over 50gb harddrive space and and 48GB memory, Intel Core i7

Dmitrii Pasukhin's picture

Please try to build as you build before. The issue can't be detected from my side and it will be not possible to debug from forum messaging. 

From my setup I can't reproduce. Looks like your didn't download some core packages and some libs still try to search in your windows specific folders.

Best regards, Dmitrii.

Daniel Duesentrieb's picture

I got it going via QT6

All I had to do was check the USE_RAPIDJSON option. Please see attached screenshot

Thanks for your time!

Attachments: