[ipxe-devel] Unable to Make iPXE on Mac OSX 10.8.3

Michael Brown mbrown at fensystems.co.uk
Fri Sep 6 15:36:42 UTC 2013


On 19/08/13 07:43, Richard D. Hornbaker wrote:
> [BUILD] bin/__divdi3.o
> cc1: error in backend: Global variable 'obj___divdi3' has an invalid
> section specifier '.provided': mach-o section specifier requires a
> segment and section separated by a comma.
> make: *** [bin/__divdi3.o] Error 1
>
> This seems to be an issue with the section directive in
> src/include/compiler.h. The only suspicious thing is that the section
> appears to be referenced differently for assembly vs. non-assembly modules:
> #define PROVIDE_SYMBOL( _sym ) \
> *.section ".provided", "a", @nobits ;*
>
> But seems to define this for non-assembly modules:
> #define PROVIDE_SYMBOL( _sym ) \
> __attribute__ (( *section ( ".provided" )* ))
>
> The format of the __attribute__ statement seems to be missing the
> section name that the original error is compaining about. Toying with
> the contents of this statement yielded different errors but no real
> progress (e.g., 'section ( ".provided,a" )'.

Puzzling.  Does the build succeed if you completely remove the 
__attribute__((section(".provided"))) declaration?

iPXE uses other nonstandard section names (e.g. ".tbl.*" for the linker 
tables), so I can't immediately see a reason why this particular section 
should cause problems.

Michael



More information about the ipxe-devel mailing list