Develop on GNU/Linux
-
@Christoph-Hart I think I'm close to getting running, but I have this error which is confusing me
../../../../../HISE/hi_snex/snex_library/snex_jit_NativeDspFunctions.cpp:225:51: error: call of overloaded ‘mov(asmjit::x86::Gp&, juce::int64)’ is ambiguous 225 | cc.mov(startReg, start->getImmediateIntValue()); | ^
Further details
In file included from ../../../../../HISE/hi_snex/src/asmjit/././x86/x86assembler.h:11, from ../../../../../HISE/hi_snex/src/asmjit/./x86.h:16, from ../../../../../HISE/hi_snex/src/asmjit/asmjit.h:36, from ../../../../../HISE/hi_snex/hi_snex.cpp:9, from ../../JuceLibraryCode/include_hi_snex.cpp:9: ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:604:18: note: candidate: ‘asmjit::Error asmjit::x86::EmitterExplicitT<This>::mov(const asmjit::x86::Gp&, int) [with This = asmjit::x86::Compiler; asmjit::Error = unsigned int]’ 604 | ASMJIT_INST_2i(mov, Mov, Gp, Imm) // ANY | ^~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:68:16: note: in definition of macro ‘ASMJIT_INST_2i’ 68 | inline Error NAME(const T0& o0, int o1) { return _emitter()->emit(Inst::kId##ID, o0, Support::asInt(o1)); } \ | ^~~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:604:18: note: candidate: ‘asmjit::Error asmjit::x86::EmitterExplicitT<This>::mov(const asmjit::x86::Gp&, unsigned int) [with This = asmjit::x86::Compiler; asmjit::Error = unsigned int]’ 604 | ASMJIT_INST_2i(mov, Mov, Gp, Imm) // ANY | ^~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:69:16: note: in definition of macro ‘ASMJIT_INST_2i’ 69 | inline Error NAME(const T0& o0, unsigned int o1) { return _emitter()->emit(Inst::kId##ID, o0, Support::asInt(o1)); } \ | ^~~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:604:18: note: candidate: ‘asmjit::Error asmjit::x86::EmitterExplicitT<This>::mov(const asmjit::x86::Gp&, int64_t) [with This = asmjit::x86::Compiler; asmjit::Error = unsigned int; int64_t = long int]’ 604 | ASMJIT_INST_2i(mov, Mov, Gp, Imm) // ANY | ^~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:70:16: note: in definition of macro ‘ASMJIT_INST_2i’ 70 | inline Error NAME(const T0& o0, int64_t o1) { return _emitter()->emit(Inst::kId##ID, o0, Support::asInt(o1)); } \ | ^~~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:604:18: note: candidate: ‘asmjit::Error asmjit::x86::EmitterExplicitT<This>::mov(const asmjit::x86::Gp&, uint64_t) [with This = asmjit::x86::Compiler; asmjit::Error = unsigned int; uint64_t = long unsigned int]’ 604 | ASMJIT_INST_2i(mov, Mov, Gp, Imm) // ANY | ^~~ ../../../../../HISE/hi_snex/src/asmjit/././x86/../x86/x86emitter.h:71:16: note: in definition of macro ‘ASMJIT_INST_2i’ 71 | inline Error NAME(const T0& o0, uint64_t o1) { return _emitter()->emit(Inst::kId##ID, o0, Support::asInt(o1)); }
Any ideas?
-
Almost success! I've made some casts and other slight adjustments that fix all of the compile errors and I'm able to succesfully build a debug version. However I get the below linker errors when building the release version, even when I turn off all optimizations, @Christoph-Hart halp!
../../../../../HISE/hi_snex/snex_public/snex_jit_FunctionData.cpp:785:54: error: inlining failed in call to ‘always_inline’ ‘static R snex::jit::VariadicCallHelpers::ReturnFunctions::c4_ttvv(const snex::jit::FunctionData&, T1, const snex::VariableStorage&, const snex::VariableStorage&, const snex::VariableStorage&) [with R = void*; T1 = void*]’: recursive inlining 785 | template <typename R, typename T1> variadic_call R c4_ttvv(const FunctionData& f, T1 a1, const VariableStorage& a2, const VariableStorage& a3, const VariableStorage& a4)
-
Whatever you just pushed to github allows me to build and link on GNU/Linux. I'll make a pull request for my changes.
-
Linux Threads Be Like