[coreboot] Using lpgcc
Nils
njacobs8 at hetnet.nl
Tue Mar 29 11:01:55 CEST 2011
Hi Marc,
Thanks for your answer!
>It is working for me. I thought that the basename issue had been
>addressed. Can you try with the libpayload local install and using the
>sample makefile?
>
>in libpayload:
>
>make distclean
>make defconfig
>make install
>
>in libpayload sample:
>make
It seems not to work that way on my Debian system.
Following the readme i only downloaded libpayload and put my example file
(hello.c + makefile) in the directory "/hello" :
nils at debian:~$ svn co svn://coreboot.org/repos/trunk/payloads/libpayload
A libpayload/crypto
A libpayload/crypto/Makefile.inc
A libpayload/crypto/sha1.c
A libpayload/sample
A libpayload/sample/hello.c
A libpayload/sample/Makefile
A libpayload/Doxyfile
A libpayload/include
A libpayload/include/powerpc
A libpayload/include/powerpc/arch
A libpayload/include/powerpc/arch/endian.h
A libpayload/include/powerpc/arch/types.h
A libpayload/include/powerpc/arch/virtual.h
A libpayload/include/powerpc/arch/io.h
A libpayload/include/sysinfo.h
A libpayload/include/pci.h
A libpayload/include/lar.h
A libpayload/include/libpayload.h
A libpayload/include/getopt.h
A libpayload/include/curses.priv.h
A libpayload/include/i386
A libpayload/include/i386/arch
A libpayload/include/i386/arch/endian.h
A libpayload/include/i386/arch/rdtsc.h
A libpayload/include/i386/arch/msr.h
A libpayload/include/i386/arch/types.h
A libpayload/include/i386/arch/virtual.h
A libpayload/include/i386/arch/io.h
A libpayload/include/usb
A libpayload/include/usb/usb.h
A libpayload/include/usb/usbmsc.h
A libpayload/include/usb/usbdisk.h
A libpayload/include/curses.h
A libpayload/include/coreboot_tables.h
A libpayload/include/multiboot_tables.h
A libpayload/include/video_console.h
A libpayload/configs
A libpayload/configs/defconfig
A libpayload/README
A libpayload/curses
A libpayload/curses/local.h
A libpayload/curses/keyboard.c
A libpayload/curses/colors.c
A libpayload/curses/Makefile.inc
A libpayload/curses/tinycurses.c
A libpayload/LICENSES
A libpayload/lib
A libpayload/lib/libpayload.ldscript
A libpayload/bin
A libpayload/bin/lpas
A libpayload/bin/lp.functions
A libpayload/bin/lpgcc
A libpayload/libc
A libpayload/libc/time.c
A libpayload/libc/console.c
A libpayload/libc/printf.c
A libpayload/libc/Makefile.inc
A libpayload/libc/lib.c
A libpayload/libc/string.c
A libpayload/libc/malloc.c
A libpayload/libc/memory.c
A libpayload/libc/lar.c
A libpayload/libc/getopt_long.c
A libpayload/libc/readline.c
A libpayload/libc/ctype.c
A libpayload/libc/exec.c
A libpayload/libc/rand.c
A libpayload/libc/sysinfo.c
A libpayload/libc/ipchecksum.c
A libpayload/Config.in
A libpayload/Makefile
A libpayload/arch
A libpayload/arch/powerpc
A libpayload/arch/powerpc/timer.c
A libpayload/arch/powerpc/head.S
A libpayload/arch/powerpc/Makefile.inc
A libpayload/arch/powerpc/exec.S
A libpayload/arch/powerpc/main.c
A libpayload/arch/powerpc/virtual.c
A libpayload/arch/powerpc/sysinfo.c
A libpayload/arch/powerpc/coreboot.c
A libpayload/arch/powerpc/util.S
A libpayload/arch/i386
A libpayload/arch/i386/multiboot.c
A libpayload/arch/i386/timer.c
A libpayload/arch/i386/head.S
A libpayload/arch/i386/Makefile.inc
A libpayload/arch/i386/exec.S
A libpayload/arch/i386/main.c
A libpayload/arch/i386/virtual.c
A libpayload/arch/i386/sysinfo.c
A libpayload/arch/i386/coreboot.c
A libpayload/arch/i386/util.S
A libpayload/util
A libpayload/util/kconfig
A libpayload/util/kconfig/zconf.tab.c_shipped
A libpayload/util/kconfig/zconf.gperf
A libpayload/util/kconfig/lkc_proto.h
A libpayload/util/kconfig/mconf.c
A libpayload/util/kconfig/menu.c
A libpayload/util/kconfig/zconf.y
A libpayload/util/kconfig/symbol.c
A libpayload/util/kconfig/check.sh
A libpayload/util/kconfig/images.c
A libpayload/util/kconfig/qconf.cc
A libpayload/util/kconfig/POTFILES.in
A libpayload/util/kconfig/qconf.h
A libpayload/util/kconfig/zconf.hash.c_shipped
A libpayload/util/kconfig/util.c
A libpayload/util/kconfig/expr.c
A libpayload/util/kconfig/lkc.h
A libpayload/util/kconfig/kconfig_load.c
A libpayload/util/kconfig/confdata.c
A libpayload/util/kconfig/lxdialog
A libpayload/util/kconfig/lxdialog/dialog.h
A libpayload/util/kconfig/lxdialog/check-lxdialog.sh
A libpayload/util/kconfig/lxdialog/inputbox.c
A libpayload/util/kconfig/lxdialog/checklist.c
A libpayload/util/kconfig/lxdialog/BIG.FAT.WARNING
A libpayload/util/kconfig/lxdialog/menubox.c
A libpayload/util/kconfig/lxdialog/textbox.c
A libpayload/util/kconfig/lxdialog/util.c
A libpayload/util/kconfig/lxdialog/yesno.c
A libpayload/util/kconfig/lex.zconf.c_shipped
A libpayload/util/kconfig/expr.h
A libpayload/util/kconfig/conf.c
A libpayload/util/kconfig/gconf.glade
A libpayload/util/kconfig/kxgettext.c
A libpayload/util/kconfig/zconf.l
A libpayload/util/kconfig/gconf.c
A libpayload/util/kconfig/Makefile
A libpayload/drivers
A libpayload/drivers/serial.c
A libpayload/drivers/keyboard.c
A libpayload/drivers/nvram.c
A libpayload/drivers/Makefile.inc
A libpayload/drivers/video
A libpayload/drivers/video/font8x16.h
A libpayload/drivers/video/video.c
A libpayload/drivers/video/geodelx.c
A libpayload/drivers/video/font8x16.c
A libpayload/drivers/video/vga.c
A libpayload/drivers/usb
A libpayload/drivers/usb/usbhid.c
A libpayload/drivers/usb/uhci_rh.c
A libpayload/drivers/usb/TODO
A libpayload/drivers/usb/usb_dev.c
A libpayload/drivers/usb/uhci.c
A libpayload/drivers/usb/usbhub.c
A libpayload/drivers/usb/usb.c
A libpayload/drivers/usb/usbmsc.c
A libpayload/drivers/usb/uhci.h
A libpayload/drivers/usb/usbinit.c
A libpayload/drivers/speaker.c
A libpayload/drivers/options.c
A libpayload/drivers/pci.c
U libpayload
Checked out revision 4892.
nils at debian:~$ cd libpayload
nils at debian:~/libpayload$ make distclean
nils at debian:~/libpayload$ make defconfig
*** Default configuration is based on 'configs/defconfig'
*
* libpayload Configuration
*
*
* Architecture Options
*
Target Architecture
> 1. x86 (TARGET_I386)
2. PowerPC (TARGET_POWERPC)
choice[1-2]: 1
Multiboot header support (MULTIBOOT) [N/y] n
*
* Standard Libraries
*
Enable C library support (LIBC) [Y/n] y
Enable tinycurses support (TINYCURSES) [Y/n] y
*
* Console Options
*
See output on the serial port console (SERIAL_CONSOLE) [Y/n] y
I/O base for the serial port (default 0x3f8) (SERIAL_IOBASE) [0x3f8] 0x3f8
Override the serial console baud rate (SERIAL_SET_SPEED) [N/y] n
Use plain ASCII characters for ACS (SERIAL_ACS_FALLBACK) [N/y/?] n
See output on a video console (VIDEO_CONSOLE) [Y/n] y
VGA video console driver (VGA_VIDEO_CONSOLE) [Y/n] y
Geode LX video console driver (GEODELX_VIDEO_CONSOLE) [N/y] n
Allow input from a PC keyboard (PC_KEYBOARD) [Y/n] y
English (US) keyboard layout (PC_KEYBOARD_LAYOUT_US) [Y/n] y
German keyboard layout (PC_KEYBOARD_LAYOUT_DE) [N/y] n
*
* Drivers
*
Support for PCI devices (PCI) [Y/n] y
Support for reading/writing NVRAM bytes (NVRAM) [Y/n] y
Extended RTC ports are 0x74/0x75 (RTC_PORT_EXTENDED_VIA) [N/y/?] n
Support for PC speaker (SPEAKER) [Y/n] y
USB Support (USB) [N/y] n
#
# configuration written to .config
#
nils at debian:~/libpayload$ make install
CC build/arch/i386/head.S.o
CC build/arch/i386/main.o
CC build/arch/i386/sysinfo.o
CC build/arch/i386/timer.o
CC build/arch/i386/coreboot.o
CC build/arch/i386/util.S.o
CC build/arch/i386/exec.S.o
CC build/arch/i386/virtual.o
CC build/crypto/sha1.o
CC build/libc/malloc.o
CC build/libc/printf.o
CC build/libc/console.o
CC build/libc/string.o
CC build/libc/memory.o
CC build/libc/ctype.o
CC build/libc/ipchecksum.o
CC build/libc/lib.o
CC build/libc/rand.o
CC build/libc/time.o
CC build/libc/lar.o
CC build/libc/exec.o
CC build/libc/readline.o
CC build/libc/getopt_long.o
CC build/libc/sysinfo.o
CC build/drivers/pci.o
CC build/drivers/speaker.o
CC build/drivers/serial.o
CC build/drivers/keyboard.o
CC build/drivers/nvram.o
CC build/drivers/options.o
CC build/drivers/video/video.o
CC build/drivers/video/vga.o
CC build/curses/keyboard.o
CC build/curses/tinycurses.o
CC build/curses/colors.o
AR build/lib/libpayload.a
INSTALL /opt/libpayload/lib
cp: cannot create regular file ‘/opt/libpayload/lib/i386/head.o’: Permission
denied
cp: cannot create regular file ‘/opt/libpayload/lib/libpayload.a’: Permission
denied
cp: cannot create regular file ‘/opt/libpayload/lib/libpayload.ldscript’:
Permission denied
make: *** [install] Error 1
---------------------------------------------------8<-------------------------
So i used sudo here as i am a normal user.
--------------------------------------------------->8-------------------------
nils at debian:~/libpayload$ sudo make install
AR build/lib/libpayload.a
INSTALL /opt/libpayload/lib
INSTALL /opt/libpayload/include
INSTALL /opt/libpayload/bin
nils at debian:~/libpayload$ cd ..
nils at debian:~$ cd hello
nils at debian:~/hello$ make
../bin/lpgcc -Wall -Werror -Os -c -o hello.o hello.c
make: ../bin/lpgcc: Command not found
make: *** [hello.o] Error 127
nils at debian:~/hello$
Thanks, Nils.
More information about the coreboot
mailing list