Johan Glimming wrote:
Of course, this is the problem (no elf.h). All the rest is a result; if you don't have the definitions in the header file, then of course you won't have symbols and definitions that you need to compile.
I forward this to the list in hope of getting feedback on the enclosed output from failed 6.4 rc make on a Mac OS X system from any OS X experts around:
Johan,
Could you post this to the list? There are people on the list who know more about Mac OS X than I, and they should be able to help resolve this.
Cheers, Simon
On 19 February 2005 13:06, Johan Glimming wrote:
Simon,
It did not even work with make (no concurrency) on the Mac OS X 10.3.4 platform with fink installed. Output from the compilation process:
../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c FrontPanel.c -o FrontPanel.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -optc-Wno-uninitialized -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c GC.c -o GC.o GC.c:148: warning: `regparm' attribute directive ignored GC.c:1667: warning: `regparm' attribute directive ignored ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c GCCompact.c -o GCCompact.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c Hash.c -o Hash.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c HsFFI.c -o HsFFI.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c Interpreter.c -o Interpreter.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c Itimer.c -o Itimer.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c LdvProfile.c -o LdvProfile.o ../../ghc/compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-Wbad-function-cast -optc-I../includes -optc-I. -optc-Iparallel -optc-DCOMPILING_RTS -optc-fomit-frame-pointer -H16m -O -O2 -static -I. -#include Prelude.h -#include Rts.h -#include RtsFlags.h -#include RtsUtils.h -#include StgRun.h -#include Schedule.h -#include Printer.h -#include Sanity.h -#include STM.h -#include Storage.h -#include SchedAPI.h -#include Timer.h -#include Itimer.h -#include ProfHeap.h -#include LdvProfile.h -#include Profiling.h -#include Apply.h -fvia-C -dcmm-lint -c Linker.c -o Linker.o Linker.c: In function `addDLL': Linker.c:804: warning: assignment discards qualifiers from pointer target type Linker.c:2209:17: elf.h: No such file or directory
My Mac isn't behaving today; I'll get it back up later, hopefully. elf.h is a kernel header file in the O/Ss that I use most often. It could simply be that it's in an unexpected place, and the path for finding headers needs to be augmented. I'd do a search for any occurances of elf.h, and find out where it lives. Or you can use the OSX file browser to search for the name, which is much faster. I don't remember whether OSX has locate; if so, that's the quickest way of all, something like:
locate elf.h | egrep 'elf\.h$'
(I know, locate claims to support regular expressions, but I've found that to be unreliable so I pipe the locate output to egrep, which doesn't add any significant processing load.)
Linker.c: At top level: Linker.c:2387: error: parse error before "Elf32_Word" Linker.c:2388: warning: function declaration isn't a prototype Linker.c: In function `findElfSection': Linker.c:2389: error: `objImage' undeclared (first use in this function) Linker.c:2389: error: (Each undeclared identifier is reported only once Linker.c:2389: error: for each function it appears in.) Linker.c:2390: error: `Elf32_Ehdr' undeclared (first use in this function) Linker.c:2390: error: `ehdr' undeclared (first use in this function) Linker.c:2390: error: parse error before ')' token Linker.c:2391: error: `Elf32_Shdr' undeclared (first use in this function) Linker.c:2391: error: `shdr' undeclared (first use in this function) Linker.c:2391: error: parse error before ')' token Linker.c:2399: error: `sh_type' undeclared (first use in this function) Linker.c: In function `ocVerifyImage_ELF': Linker.c:2433: error: `Elf32_Shdr' undeclared (first use in this function) Linker.c:2433: error: `shdr' undeclared (first use in this function) Linker.c:2434: error: `Elf32_Sym' undeclared (first use in this function) Linker.c:2434: error: `stab' undeclared (first use in this function) Linker.c:2440: error: `Elf32_Ehdr' undeclared (first use in this function) Linker.c:2440: error: `ehdr' undeclared (first use in this function) Linker.c:2440: error: parse error before ')' token Linker.c:2442: error: `EI_MAG0' undeclared (first use in this function) Linker.c:2442: error: `ELFMAG0' undeclared (first use in this function) Linker.c:2443: error: `EI_MAG1' undeclared (first use in this function) Linker.c:2443: error: `ELFMAG1' undeclared (first use in this function) Linker.c:2444: error: `EI_MAG2' undeclared (first use in this function) Linker.c:2444: error: `ELFMAG2' undeclared (first use in this function) Linker.c:2445: error: `EI_MAG3' undeclared (first use in this function) Linker.c:2445: error: `ELFMAG3' undeclared (first use in this function) Linker.c:2450: error: `EI_CLASS' undeclared (first use in this function) Linker.c:2450: error: `ELFCLASS32' undeclared (first use in this function) Linker.c:2455: error: `EI_DATA' undeclared (first use in this function) Linker.c:2455: error: `ELFDATA2LSB' undeclared (first use in this function) Linker.c:2458: error: `ELFDATA2MSB' undeclared (first use in this function) Linker.c:2465: error: `ET_REL' undeclared (first use in this function) Linker.c:2473: error: `EM_386' undeclared (first use in this function) Linker.c:2474: error: `EM_SPARC' undeclared (first use in this function) Linker.c:2478: error: `EM_PPC' undeclared (first use in this function) Linker.c:2490: error: parse error before ')' token Linker.c:2492: error: `SHN_UNDEF' undeclared (first use in this function) Linker.c:2510: error: `SHT_REL' undeclared (first use in this function) Linker.c:2512: error: `SHT_RELA' undeclared (first use in this function) Linker.c:2528: error: `SHT_STRTAB' undeclared (first use in this function) Linker.c:2546: error: `SHT_SYMTAB' undeclared (first use in this function) Linker.c:2549: error: parse error before ')' token Linker.c:2567: warning: implicit declaration of function `ELF32_ST_TYPE' Linker.c:2568: error: `STT_NOTYPE' undeclared (first use in this function) Linker.c:2569: error: `STT_OBJECT' undeclared (first use in this function) Linker.c:2570: error: `STT_FUNC' undeclared (first use in this function) Linker.c:2571: error: `STT_SECTION' undeclared (first use in this function) Linker.c:2572: error: `STT_FILE' undeclared (first use in this function) Linker.c:2578: warning: implicit declaration of function `ELF32_ST_BIND' Linker.c:2579: error: `STB_LOCAL' undeclared (first use in this function) Linker.c:2580: error: `STB_GLOBAL' undeclared (first use in this function) Linker.c:2581: error: `STB_WEAK' undeclared (first use in this function) Linker.c: At top level: Linker.c:2598: error: parse error before '*' token Linker.c:2599: warning: function declaration isn't a prototype Linker.c: In function `getSectionKind_ELF': Linker.c:2600: error: `is_bss' undeclared (first use in this function) Linker.c:2602: error: `hdr' undeclared (first use in this function) Linker.c:2603: error: `SHT_PROGBITS' undeclared (first use in this function) Linker.c:2603: error: `SHF_ALLOC' undeclared (first use in this function) Linker.c:2603: error: `SHF_EXECINSTR' undeclared (first use in this function) Linker.c:2609: error: `SHF_WRITE' undeclared (first use in this function) Linker.c:2621: error: `SHT_NOBITS' undeclared (first use in this function) Linker.c: In function `ocGetNames_ELF': Linker.c:2635: error: `Elf32_Sym' undeclared (first use in this function) Linker.c:2635: error: `stab' undeclared (first use in this function) Linker.c:2638: error: `Elf32_Ehdr' undeclared (first use in this function) Linker.c:2638: error: `ehdr' undeclared (first use in this function) Linker.c:2638: error: parse error before ')' token Linker.c:2639: error: `SHT_STRTAB' undeclared (first use in this function) Linker.c:2640: error: `Elf32_Shdr' undeclared (first use in this function) Linker.c:2640: error: `shdr' undeclared (first use in this function) Linker.c:2640: error: parse error before ')' token Linker.c:2677: error: `SHT_SYMTAB' undeclared (first use in this function) Linker.c:2680: error: parse error before ')' token Linker.c:2697: error: `SHN_COMMON' undeclared (first use in this function) Linker.c:2709: error: `STB_GLOBAL' undeclared (first use in this function) Linker.c:2710: error: `STB_LOCAL' undeclared (first use in this function) Linker.c:2714: error: `SHN_UNDEF' undeclared (first use in this function) Linker.c:2715: error: `SHN_LORESERVE' undeclared (first use in this function) Linker.c:2717: error: `STT_FUNC' undeclared (first use in this function) Linker.c:2718: error: `STT_OBJECT' undeclared (first use in this function) Linker.c:2720: error: `STT_NOTYPE' undeclared (first use in this function) Linker.c: At top level: Linker.c:2784: error: parse error before "Elf32_Shdr" Linker.c:2786: warning: function declaration isn't a prototype Linker.c: In function `do_Elf_Rel_relocations': Linker.c:2789: error: `Elf32_Word' undeclared (first use in this function) Linker.c:2789: error: `targ' undeclared (first use in this function) Linker.c:2790: error: `Elf32_Rel' undeclared (first use in this function) Linker.c:2790: error: `rtab' undeclared (first use in this function) Linker.c:2790: error: parse error before ')' token Linker.c:2790: error: `ehdrC' undeclared (first use in this function) Linker.c:2790: error: `shdr' undeclared (first use in this function) Linker.c:2790: error: `shnum' undeclared (first use in this function) Linker.c:2795: error: `stab' undeclared (first use in this function) Linker.c:2795: error: `Elf32_Sym' undeclared (first use in this function) Linker.c:2795: error: parse error before ')' token Linker.c:2796: error: parse error before ')' token Linker.c:2811: error: `Elf32_Addr' undeclared (first use in this function) Linker.c:2811: error: parse error before "offset" Linker.c:2815: error: `pP' undeclared (first use in this function) Linker.c:2815: error: parse error before ')' token Linker.c:2819: error: parse error before "value" Linker.c:2823: error: `info' undeclared (first use in this function) Linker.c:2825: error: `S' undeclared (first use in this function) Linker.c:2827: error: parse error before "sym" Linker.c:2829: error: `sym' undeclared (first use in this function) Linker.c:2829: error: `STB_LOCAL' undeclared (first use in this function) Linker.c:2832: error: `strtab' undeclared (first use in this function) Linker.c:2835: warning: implicit declaration of function `ELF32_R_SYM' Linker.c:2841: error: parse error before "S_tmp" Linker.c:2844: error: `oc' undeclared (first use in this function) Linker.c:2854: error: `value' undeclared (first use in this function) Linker.c:2854: error: `A' undeclared (first use in this function) Linker.c:2856: warning: implicit declaration of function `ELF32_R_TYPE' Linker.c:2858: error: `R_386_32' undeclared (first use in this function) Linker.c:2859: error: `R_386_PC32' undeclared (first use in this function) Linker.c:2859: error: `P' undeclared (first use in this function) Linker.c: At top level: Linker.c:2875: error: parse error before "Elf32_Shdr" Linker.c:2877: warning: function declaration isn't a prototype Linker.c: In function `do_Elf_Rela_relocations': Linker.c:2880: error: `Elf32_Addr' undeclared (first use in this function) Linker.c:2880: error: parse error before "targ" Linker.c:2881: error: `Elf32_Rela' undeclared (first use in this function) Linker.c:2881: error: `rtab' undeclared (first use in this function) Linker.c:2881: error: parse error before ')' token Linker.c:2881: error: `ehdrC' undeclared (first use in this function) Linker.c:2881: error: `shdr' undeclared (first use in this function) Linker.c:2881: error: `shnum' undeclared (first use in this function) Linker.c:2886: error: `stab' undeclared (first use in this function) Linker.c:2886: error: `Elf32_Sym' undeclared (first use in this function) Linker.c:2886: error: parse error before ')' token Linker.c:2887: error: `targ' undeclared (first use in this function) Linker.c:2897: error: parse error before "info" Linker.c:2901: error: parse error before "value" Linker.c:2915: error: `info' undeclared (first use in this function) Linker.c:2917: error: `S' undeclared (first use in this function) Linker.c:2919: error: parse error before "sym" Linker.c:2921: error: `sym' undeclared (first use in this function) Linker.c:2921: error: `STB_LOCAL' undeclared (first use in this function) Linker.c:2924: error: `strtab' undeclared (first use in this function) Linker.c:2939: error: parse error before "S_tmp" Linker.c:2949: error: `oc' undeclared (first use in this function) Linker.c:2959: error: `value' undeclared (first use in this function) Linker.c:2959: error: `A' undeclared (first use in this function) Linker.c: In function `ocResolve_ELF': Linker.c:3083: error: `Elf32_Sym' undeclared (first use in this function) Linker.c:3083: error: `stab' undeclared (first use in this function) Linker.c:3085: error: `Elf32_Ehdr' undeclared (first use in this function) Linker.c:3085: error: `ehdr' undeclared (first use in this function) Linker.c:3085: error: parse error before ')' token Linker.c:3086: error: `Elf32_Shdr' undeclared (first use in this function) Linker.c:3086: error: `shdr' undeclared (first use in this function) Linker.c:3086: error: parse error before ')' token Linker.c:3089: error: parse error before ')' token Linker.c:3092: error: `SHT_STRTAB' undeclared (first use in this function) Linker.c:3101: error: `SHT_REL' undeclared (first use in this function) Linker.c:3107: error: `SHT_RELA' undeclared (first use in this function) make[2]: *** [Linker.o] Error 1 make[1]: *** [all] Error 1 make: *** [build] Error 1
Johan Glimming.-
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
!DSPAM:4219c54b94041472811732!
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users