LWJGL/lwjgl3

Can't seem to get Windows x86 binaries to build

xxDark opened this issue · 0 comments

Question

Hello! As the title says, I can't seem to get LWJGL to build for x86 Windows with x64 toolchain.
My steps:

set PATH_OLD=%PATH%
set LWJGL_BUILD_ARCH=x86
set LWJGL_BUILD_OFFLINE=true
set JAVA_HOME=F:\.jdks\jdk-17.0.2 // 64 bit
set PATH=F:\.jdks\jdk-17.0.2\bin;%PATH_OLD%
set VSCMD_SKIP_SENDTELEMETRY=true
vcvarsall x86
**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.11.22
** Copyright (c) 2021 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x86'
ant clean clean-generated
ant compile-templates
...
set JAVA_HOME=F:\.jdks\jdk-17.0.2-x86 // 32 bit
set PATH=F:\.jdks\jdk-17.0.2-x86\bin;%PATH_OLD%
ant compile-native

Problem: libffi does not seem to get picked up for some reason:

   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_closure_free
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_prep_closure_loc
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_double
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_float
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_prep_cif_var
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_uint32
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_sint64
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_sint8
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_uint8
 [Compiler] org_lwjgl_opengl_GL41C.c
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_uint64
 [Compiler] org_lwjgl_opengl_GL42C.c
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_prep_cif
 [Compiler] org_lwjgl_opengl_GL43C.c
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_pointer
 [Compiler] org_lwjgl_opengl_GL44C.c
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_uint16
 [Compiler] org_lwjgl_opengl_GL45.c
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_call
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_sint32
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_closure_alloc
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_void
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_get_struct_offsets
   [Linker] org_lwjgl_system_libffi_LibFFI.obj : error LNK2001: unresolved external symbol _ffi_type_sint16
   [Linker] bin\windows\x86\build\lwjgl.dll : fatal error LNK1120: 19 unresolved externals

Thanks!