i tried to cross compile nelua code from my linux machine to windows using zig cc and mingw
using both these commands
nelua test.nelua --cc="zig cc -target x86-windows"
nelua test.nelua --cc="x86_64-w64-mingw32-gcc"
for this code:
## pragma{nogc=true}
##[[
-- Compile GLAD
--------------------------------------------------
cinclude "glad/glad.h"
cfile "glad/src/glad.c"
cincdir "glad/include"
-- generate bindings for glad
local nldecl = require 'nelua.plugins.nldecl'
if not fs.isfile('glad/init.nelua') then
nldecl.generate_bindings_file{
include_dirs = { 'glad/include' },
output_file = 'glad/init.nelua',
parse_includes = {'glad/glad.h'},
}
end
--------------------------------------------------
]]
-- Include GLAD
require "glad"
give the same error for the generated glad bindings:
test.nelua:1:1: from: AST node Block
## pragma{nogc=true}
^~~~~~~~~~~~~~~~~~~~
init.nelua:1:1: from: AST node Block
global gladGLversionStruct: type <cimport,nodecl,ctypedef'gladGLversionStruct'> = @record{
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
init.nelua:7541:8: error: in variable 'INT_FAST16_MAX' declaration: constant value `9223372036854775807` for type `clong` is out of range, the minimum is `-2147483648` and maximum is `2147483647`
global INT_FAST16_MAX: clong <comptime> = 9223372036854775807
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
a workaround for this is manually compiling the generated c code from nelua using the appropriate c compiler
nelua version:
λ ~ nelua -v
Nelua 0.2.0-dev
Build number: 1629
Git date: 2024-12-14 11:06:09 -0300
Git hash: a69a12d1e1e5ee0bfab299350e5d707ff7b2e744
Semantic version: 0.2.0-dev.1629+a69a12d1
Copyright (C) 2019-2025 Eduardo Bart (https://nelua.io/)
my environment
OS: Void x86_64
Kernel: Linux 6.12.6_3
CPU: 12th Gen Intel(R) Core(TM) i5-1245U (12) @ 4.40 GHz
i tried to cross compile nelua code from my linux machine to windows using
zig ccandmingwusing both these commands
for this code:
give the same error for the generated glad bindings:
a workaround for this is manually compiling the generated c code from nelua using the appropriate c compiler
nelua version:
my environment