grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Are BSD partitions not supported?


From: Navdeep Parhar
Subject: Re: Are BSD partitions not supported?
Date: Wed, 19 May 2010 11:54:53 -0700

2010/5/19 Vladimir 'φ-coder/phcoder' Serbinenko <address@hidden>:
> C. P. Ghost wrote:
>> 2010/5/19 C. P. Ghost <address@hidden>:
>>
>>> 2010/5/19 Vladimir 'φ-coder/phcoder' Serbinenko <address@hidden>:
>>>
>>>> Mailer. Now I attach it
>>>>
>>> Ah, thanks. Patches fine now. I get a compile error:
>>>
>>> gcc  -nostdlib -static-libgcc  -m32 -Wl,-r,-d -o pre-regexp.o
>>> regexp_mod-gnulib_regex.o regexp_mod-commands_regexp.o
>>> nm -g --defined-only -P -p pre-regexp.o | sed 's/^\([^ ]*\).*/\1
>>> regexp/' > def-regexp.lst
>>> gcc -Icommands -I./commands -I./include -I. -I./include -Wall -W
>>> -ffreestanding  -Os -DGRUB_MACHINE_PCBIOS=1 -DMACHINE=I386_PC -Wall -W
>>> -Wshadow -Wpointer-arith -Wmissing-prototypes                -Wundef
>>> -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1
>>> -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -m32
>>> -fno-stack-protector -mno-stack-arg-probe -Werror -mrtd -mregparm=3
>>> -DGRUB_FILE=\"commands/terminal.c\" -MD -c -o
>>> terminal_mod-commands_terminal.o commands/terminal.c
>>> cc1: warnings being treated as errors
>>> commands/terminal.c: In function 'grub_cmd_terminal_input':
>>> commands/terminal.c:204: warning: dereferencing type-punned pointer
>>> will break strict-aliasing rules
>>> commands/terminal.c:205: warning: dereferencing type-punned pointer
>>> will break strict-aliasing rules
>>> commands/terminal.c: In function 'grub_cmd_terminal_output':
>>> commands/terminal.c:219: warning: dereferencing type-punned pointer
>>> will break strict-aliasing rules
>>> commands/terminal.c:220: warning: dereferencing type-punned pointer
>>> will break strict-aliasing rules
>>> gmake: *** [terminal_mod-commands_terminal.o] Error 1
>>>
>>> Maybe because FreeBSD's system gcc is older?
>>>
>>> $ gcc --version
>>> gcc (GCC) 4.2.1 20070719  [FreeBSD]
>>> Copyright (C) 2007 Free Software Foundation, Inc.
>>> This is free software; see the source for copying conditions.  There is NO
>>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>>>
>>> I can try to compile it with a newer gcc, but it'll take some time
>>> to compile gcc first...
>>>
>>
>> Silly me, I had a gcc44 here already:
>>
>> phenom# /usr/local/bin/gcc44 --version
>> gcc44 (GCC) 4.4.4 20100427 (prerelease)
>> Copyright (C) 2010 Free Software Foundation, Inc.
>> This is free software; see the source for copying conditions.  There is NO
>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>>
>> Using that, I get this:
>>
>> /usr/local/bin/gcc44 -o kernel.img kernel_img-kern_i386_pc_startup.o
>> kernel_img-kern_i386_misc.o kernel_img-kern_main.o
>> kernel_img-kern_device.o kernel_img-kern_disk.o kernel_img-kern_dl.o
>> kernel_img-kern_file.o kernel_img-kern_fs.o kernel_img-kern_err.o
>> kernel_img-kern_misc.o kernel_img-kern_mm.o kernel_img-kern_term.o
>> kernel_img-kern_rescue_parser.o kernel_img-kern_rescue_reader.o
>> kernel_img-kern_time.o kernel_img-kern_list.o
>> kernel_img-kern_handler.o kernel_img-kern_command.o
>> kernel_img-kern_corecmd.o kernel_img-kern___target_cpu__dl.o
>> kernel_img-kern_i386_pc_init.o kernel_img-kern_i386_pc_mmap.o
>> kernel_img-kern_parser.o kernel_img-kern_partition.o
>> kernel_img-kern_i386_tsc.o kernel_img-kern_i386_pit.o
>> kernel_img-kern_generic_rtc_get_time_ms.o
>> kernel_img-kern_generic_millisleep.o kernel_img-kern_env.o
>> kernel_img-term_i386_pc_console.o kernel_img-term_i386_vga_common.o
>> kernel_img-symlist.o -nostdlib -static-libgcc  -m32
>> -Wl,--build-id=none -lgcc  -nostdlib -Wl,-N  -Wl,-Ttext,0x8200 -mrtd
>> -mregparm=3
>> /usr/local/bin/ld: skipping incompatible
>> /usr/local/lib/gcc44/gcc/x86_64-portbld-freebsd8.0/4.4.4/libgcc.a when
>> searching for -lgcc
>> /usr/local/bin/ld: skipping incompatible /usr/lib/libgcc.a when
>> searching for -lgcc
>> /usr/local/bin/ld: cannot find -lgcc
>> collect2: ld returned 1 exit status
>> gmake: *** [kernel.img] Error 1
>>
> Normally you need 32-bit libgcc. As a test build you can just remove
> -lgcc but this isn't supported.

Or try adding -L/usr/lib32 to your gcc command.

Navdeep



reply via email to

[Prev in Thread] Current Thread [Next in Thread]