Re: undefined reference to 'NewDouble'
- Posted by jimcbrown (admin) Apr 21, 2013
- 1846 views
ghaberek said...
Nope. It didn't like that either.
gcc -shared -o test.dll C:\Euphoria\source\build\libobj\back\be_alloc.o C:\Euphoria\source\build\eu.a test.o C:\Euphoria\source\build\libobj\back\be_alloc.o:be_alloc.c:(.text+0xb2): undefined reference to `default_heap' C:\Euphoria\source\build\libobj\back\be_alloc.o:be_alloc.c:(.text+0xf6): undefined reference to `default_heap' C:\Euphoria\source\build\libobj\back\be_alloc.o:be_alloc.c:(.text+0x14c): undefined reference to `default_heap' C:\Euphoria\source\build\libobj\back\be_alloc.o:be_alloc.c:(.text+0x182): undefined reference to `default_heap' C:\Euphoria\source\build\libobj\back\be_alloc.o:be_alloc.c:(.text+0x367): undefined reference to `default_heap' C:\Euphoria\source\build\libobj\back\be_alloc.o:be_alloc.c:(.text+0x398): more undefined references to `default_heap' follow c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: C:\Euphoria\source\build\libobj\back\be_alloc.o: bad reloc address 0x20 in section `.eh_frame' collect2.exe: error: ld returned 1 exit status
-Greg
default_heap is created by the translator (see source/compile.e for the details). Since you're using a custom C file instead of translated source, you'll need define that HANDLE and call GetProcessHeap() yourself.