[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue in netbsd_bootinfo.h
From: |
Seth Goldberg |
Subject: |
Issue in netbsd_bootinfo.h |
Date: |
Tue, 8 Nov 2011 16:14:32 -0800 (PST) |
User-agent: |
Alpine 2.00 (GSO 1167 2008-08-23) |
Hi,
The following structure definition is causing linker failures (not with GNU
ld) when building GRUB2:
struct grub_netbsd_btinfo_bootwedge {
grub_uint32_t biosdev;
grub_disk_addr_t startblk;
grub_uint64_t nblks;
grub_disk_addr_t matchblk;
grub_uint64_t matchnblks;
grub_uint8_t matchhash[16]; /* MD5 hash */
} __packed;
The question is: Is this a valid way to declare a structure with a packed
data structure on NetBSD? Or did you mean to add "__attribute__((packed))"
there? The linker error is due to multiply-defined __packed symbols:
ld: fatal: symbol '__packed' is multiply-defined:
(file loader/i386/bsd_module-bsd.o type=OBJT; file
loader/i386/bsd_module-bsd32.o type=OBJT);
ld: fatal: symbol '__packed' is multiply-defined:
(file loader/i386/bsd_module-bsd.o type=OBJT; file
loader/i386/bsd_module-bsd64.o type=OBJT);
ld: fatal: file processing errors. No output written to bsd.module
--S
- Issue in netbsd_bootinfo.h,
Seth Goldberg <=