RadixEngine
RadixEngine copied to clipboard
cannot build on windows msys
I was trying to build glportal on windows.
I installed all the dependencies
pacman -S git pkg-config mingw-w64-x86_64-{cmake,make,gcc,pkg-config,assimp,libepoxy,SDL2{,_mixer},bullet,tinyxml2,freeimage}
cmake output
λ C:\msys64\mingw64\bin\cmake.exe .. -G "MSYS Makefiles" -DCMAKE_MAKE_PROGRAM="mingw32-make"
[VHACD] LIB_TYPE STATIC
[VHACD] -> CMAKE_INSTALL_PREFIX C:/Program Files (x86)/glportal
-- Found FreeImage: headers at C:/msys64/mingw64/include, libraries at :: C:/msys64/mingw64/lib/libfreeimage.dll.a
-- Configuring angelscript 2.32.0
--
-- EASY_PROFILER.Core version = 1.3.0
--
-- -------- EASY_PROFILER OPTIONS: --------
-- Use QueryPerformanceCounter as a timer
-- Default listening port = 28077
-- Auto-start listening = OFF
-- Profile self = OFF
-- Profile self blocks initial status = OFF
-- Event tracing = ON
-- Event tracing has low priority = Yes
-- Log messages = OFF
-- Use EasyProfiler colors palette = ON
-- Shared library: OFF
-- ------ END EASY_PROFILER OPTIONS -------
--
CMake Warning at external/RadixEngine/external/easy_profiler/profiler_gui/CMakeLists.txt:7 (find_package):
By not providing "FindQt5Widgets.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"Qt5Widgets", but CMake did not find one.
Could not find a package configuration file provided by "Qt5Widgets" with
any of the following names:
Qt5WidgetsConfig.cmake
qt5widgets-config.cmake
Add the installation prefix of "Qt5Widgets" to CMAKE_PREFIX_PATH or set
"Qt5Widgets_DIR" to a directory containing one of the above files. If
"Qt5Widgets" provides a separate development package or SDK, be sure it has
been installed.
-- INFO
Qt5 not found! Generating EasyProfiler projects without GUI.
-- The following OPTIONAL packages have been found:
* Threads
-- The following REQUIRED packages have been found:
* OpenGL
* PkgConfig
* Assimp
* SDL2
* SDL2_mixer
* TinyXML2 (required version >= 2.0.0)
* json11
* Catch
* Linenoise
* Bullet (required version >= 2.82)
* VHACD
* FreeImage
* AngelScript
* easy_profiler
* RadixEntity
-- The following OPTIONAL packages have not been found:
* Qt5Widgets
-- The following OPTIONAL packages have been found:
* Threads
-- The following REQUIRED packages have been found:
* OpenGL
* PkgConfig
* Assimp
* SDL2
* SDL2_mixer
* TinyXML2 (required version >= 2.0.0)
* json11
* Catch
* Linenoise
* Bullet (required version >= 2.82)
* VHACD
* FreeImage
* AngelScript
* easy_profiler
* RadixEntity
* RadixEngine
-- The following OPTIONAL packages have not been found:
* Qt5Widgets
-- Configuring done
-- Generating done
-- Build files have been written to: D:/Projects/fun/C++/glPortal/build
make output
D:\Projects\fun\C++\glPortal\build (master -> origin)
λ mingw32-make
[ 0%] Built target versionInfo
[ 1%] Building CXX object external/RadixEngine/external/RadixEntity/CMakeFiles/RadixEntity.dir/src/iotypes/ValueType.cpp.obj
[ 1%] Building CXX object external/RadixEngine/external/RadixEntity/CMakeFiles/RadixEntity.dir/src/Entity.cpp.obj
[ 2%] Building CXX object external/RadixEngine/external/RadixEntity/CMakeFiles/RadixEntity.dir/src/Method.cpp.obj
[ 2%] Building CXX object external/RadixEngine/external/RadixEntity/CMakeFiles/RadixEntity.dir/src/Property.cpp.obj
[ 3%] Building CXX object external/RadixEngine/external/RadixEntity/CMakeFiles/RadixEntity.dir/src/Signal.cpp.obj
[ 3%] Linking CXX static library libRadixEntity.a
[ 3%] Built target RadixEntity
[ 3%] Building CXX object external/RadixEngine/external/json11/CMakeFiles/json11.dir/json11.cpp.obj
[ 4%] Linking CXX static library libjson11.a
[ 4%] Built target json11
[ 4%] Building C object external/RadixEngine/CMakeFiles/GLAD.dir/external/glad/glad.c.obj
[ 4%] Linking C static library libGLAD.a
[ 4%] Built target GLAD
Scanning dependencies of target angelscript
[ 4%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_atomic.cpp.obj
[ 5%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_builder.cpp.obj
[ 5%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_bytecode.cpp.obj
[ 6%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_callfunc.cpp.obj
[ 6%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_callfunc_mips.cpp.obj
[ 7%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_callfunc_x86.cpp.obj
[ 7%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_callfunc_x64_gcc.cpp.obj
[ 8%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_callfunc_x64_msvc.cpp.obj
[ 8%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_callfunc_x64_mingw.cpp.obj
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/AngelScript/sdk/angelscript/source/as_callfunc_x64_mingw.cpp: In function 'asQWORD CallX64(const asQWORD*, const asQWORD*, int, asQWORD)':
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/AngelScript/sdk/angelscript/source/as_callfunc_x64_mingw.cpp:135:3: warning: listing the stack pointer register 'rsp' in a clobber list is deprecated [-Wdeprecated]
135 | );
| ^
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/AngelScript/sdk/angelscript/source/as_callfunc_x64_mingw.cpp:135:3: note: the value of the stack pointer after an 'asm' statement must be the same as it was before the statement
[ 9%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_compiler.cpp.obj
[ 9%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_configgroup.cpp.obj
[ 10%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_context.cpp.obj
[ 10%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_datatype.cpp.obj
[ 11%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_gc.cpp.obj
[ 11%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_generic.cpp.obj
[ 12%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_globalproperty.cpp.obj
[ 12%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_memory.cpp.obj
[ 13%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_module.cpp.obj
[ 13%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_objecttype.cpp.obj
[ 14%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_outputbuffer.cpp.obj
[ 14%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_parser.cpp.obj
[ 15%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_restore.cpp.obj
[ 15%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_scriptcode.cpp.obj
[ 16%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_scriptengine.cpp.obj
[ 16%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_scriptfunction.cpp.obj
[ 17%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_scriptnode.cpp.obj
[ 17%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_scriptobject.cpp.obj
[ 18%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_string.cpp.obj
[ 18%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_string_util.cpp.obj
[ 19%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_thread.cpp.obj
[ 19%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_tokenizer.cpp.obj
[ 19%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_typeinfo.cpp.obj
[ 20%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/source/as_variablescope.cpp.obj
[ 20%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/__/add_on/scriptarray/scriptarray.cpp.obj
[ 21%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/__/add_on/scripthandle/scripthandle.cpp.obj
[ 21%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/__/add_on/scriptstdstring/scriptstdstring.cpp.obj
[ 22%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/__/add_on/scriptstdstring/scriptstdstring_utils.cpp.obj
[ 22%] Building CXX object external/RadixEngine/external/AngelScript/sdk/angelscript/projects/cmake/CMakeFiles/angelscript.dir/__/__/__/add_on/weakref/weakref.cpp.obj
[ 23%] Linking CXX static library libangelscript.a
[ 23%] Built target angelscript
[ 24%] Building CXX object external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/src/FloatMath.cpp.obj
[ 24%] Building CXX object external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/src/VHACD-ASYNC.cpp.obj
[ 25%] Building CXX object external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/src/VHACD.cpp.obj
[ 25%] Building CXX object external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/src/btAlignedAllocator.cpp.obj
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:22:1: error: 'int32_t' does not name a type
22 | int32_t gNumAlignedAllocs = 0;
| ^~~~~~~
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:23:1: error: 'int32_t' does not name a type
23 | int32_t gNumAlignedFree = 0;
| ^~~~~~~
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:24:1: error: 'int32_t' does not name a type
24 | int32_t gTotalBytesAlignedAllocs = 0; //detect memory leaks
| ^~~~~~~
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:63:56: error: 'int32_t' has not been declared
63 | static inline void* btAlignedAllocDefault(size_t size, int32_t alignment)
| ^~~~~~~
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp: In function 'void* btAlignedAllocDefault(size_t, int)':
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:71:67: error: cast from 'char*' to 'long unsigned int' loses precision [-fpermissive]
71 | offset = (alignment - (unsigned long)(real + sizeof(void*))) & (alignment - 1);
| ^
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp: At global scope:
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:160:43: error: 'int32_t' has not been declared
160 | void* btAlignedAllocInternal(size_t size, int32_t alignment)
| ^~~~~~~
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp: In function 'void* btAlignedAllocInternal(size_t, int)':
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:162:5: error: 'gNumAlignedAllocs' was not declared in this scope; did you mean 'btAlignedAlloc'?
162 | gNumAlignedAllocs++;
| ^~~~~~~~~~~~~~~~~
| btAlignedAlloc
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp: In function 'void btAlignedFreeInternal(void*)':
D:/Projects/fun/C++/glPortal/external/RadixEngine/external/vhacd-lib/src/btAlignedAllocator.cpp:175:5: error: 'gNumAlignedFree' was not declared in this scope; did you mean 'btAlignedFree'?
175 | gNumAlignedFree++;
| ^~~~~~~~~~~~~~~
| btAlignedFree
mingw32-make[2]: *** [external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/build.make:102: external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/src/btAlignedAllocator.cpp.obj] Error 1
mingw32-make[1]: *** [CMakeFiles/Makefile2:288: external/RadixEngine/external/vhacd-lib/CMakeFiles/VHACD_LIB.dir/all] Error 2
mingw32-make: *** [Makefile:130: all] Error 2
The build fails because of the external dependency vhacd-lib
. Any fixes?