Giter Club home page Giter Club logo

nezticle / raspberrypi-buildroot Goto Github PK

View Code? Open in Web Editor NEW
225.0 48.0 62.0 33.2 MB

The objective of this project is to provide an SDK and root file system for the Raspberry Pi that is lightweight and takes full advantage of the hardware available. The resulting image produced is small distro known as Bsquask (linux). The Bsquask SDK provides a GCC 4.6.3 toolchain for building armv6 binaries with the hardfloat ABI, as well as bootloaders, kernel image, rootfs, and development sysroot for the Raspberry Pi.

Home Page: http://bsquask.com

License: GNU General Public License v2.0

Shell 12.67% CSS 0.16% C 75.58% C++ 8.13% Perl 1.50% Python 1.96%

raspberrypi-buildroot's Introduction

RaspberryPi-Buildroot (aka the Bsquask SDK)

The objective of this project is to provide an SDK and root file system for the Raspberry Pi that is lightweight and takes full advantage of the hardware available. The resulting image produced is small Linux distribution known as Bsquask.

The Bsquask SDK provides a GCC 4.6.3 toolchain for building armv6 binaries with the hard-float ABI, as well as bootloaders, kernel image, rootfs, and development sysroot for the Raspberry Pi.

Getting and building the Bsquask SDK

Clone the RaspberryPi-BuildRoot project into your local code directory:
cd ~/Code/
git clone git://github.com/nezticle/RaspberryPi-BuildRoot.git BuildRoot

Create the directory where you want your SDK to be built:
export BSQUASK_DIR=/opt/bsquask
mkdir -p $BSQUASK_DIR

Enter the BuildRoot directory and generate a Makefile for your SDK:
cd BuildRoot
make raspberrypi_defconfig O=$BSQUASK_DIR
You may be missing some build dependancies (flex, bison, etc...) but you will be warned about what packages you need to install if this is the case. If you are using ubuntu the following command should install all needed dependancies:
sudo apt-get install flex bison texinfo mercurial git-core

Change to your SDK directory and and start the build (this can take a few hours the first time).
cd $BSQUASK_DIR
make
*Do not use the -j option with this Makefile! The optimum number of make jobs is determined by BuildRoot, and overriding this with the -j flag here breaks the build system.

Using Generated Image on the Raspberry Pi

First you need to obtain an SD card that has the correct partitions setup. It needs to be setup as follows:

  • 75MB fat32 partition
  • 500MB or greater ext4 partition (ideally using the remainder of the card)

If you need help with this, the Raspberry Pi wiki has a guide that's pretty close (make sure to use ext4 instead of ext3).

When you have this setup, mount the the two partitions (assuming /media/BOOT for the fat32 partiion, and /media/rootfs for the ext4). The run the following commands to install the rootfs:
cd $BSQUASK_DIR/images
tar -zxvf boot.tar.gz -C /media/BOOT
sudo tar -zxvf rootfs.tar.gz -C /media/rootfs
Make sure you are root(sudo) when extracting rootfs.tar.gz, or you will have problems on boot

Now place the SD card in your Raspberry Pi and power on. If everything went as planned, you should get a login prompt for Bsquask (linux).

Login information:

username: root
password: root

Basics of Using the SDK

Lets set a few more environment variables to make things easier:
export BSQUASK_HOST_DIR=$BSQUASK_DIR/host
export BSQUASK_STAGING_DIR=$BSQUASK_DIR/staging
export BSQUASK_TARGET_DIR=$BSQUASK_DIR/target

$BSQUASK_HOST_DIR is the directory containing the native built tools for your machine like your cross compiler. If you want to make use these tools then you will want to add these them to your path:
export PATH=$BSQUASK_HOST_DIR/usr/bin:$PATH

$BSQUASK_STAGING_DIR is the location of your sysroot. This is where you install everything that you've built for your device, including development headers and debug symbols.

$BSQUASK_TARGET_DIR is the location you use to build images. This is what you are deploying to your device, so only things you want to be in your images (like stripped binaries).

Building Qt 5 based applications

$BSQUASK_HOST_DIR/usr/bin/qmake yourproject.pro
make

Building automake based projects

./autogen.sh --host arm-raspberrypi-linux-gnueabi --prefix=$BSQUASK_STAGING_DIR/usr
make

Building cmake based projects

cmake -DCMAKE_TOOLCHAIN_FILE=$BSQUASK_HOST_DIR/usr/share/buildroot/toolchainfile.cmake
make

The Bsquask SDK is based on BuildRoot 2013.02

raspberrypi-buildroot's People

Contributors

aldot avatar allannielsen avatar arnout avatar baruchsiach avatar cmchao avatar correa avatar culssw avatar danomimanchego123 avatar djdeath avatar erikbandersen avatar fperrad avatar gustavoz avatar jacmet avatar lucaceresoli avatar martinbanky avatar mripard avatar mrothnet avatar nezticle avatar nkukard avatar patrickdepinguin avatar pauliuszaleckas avatar sagaertj avatar sjhill71 avatar spdawson avatar tpetazzoni avatar tsed avatar vapier avatar willnewton avatar yann-morin-1998 avatar yegorich avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

raspberrypi-buildroot's Issues

Dbus daemon is not started at boot

Get error message "Starting system message bus: Unknown group "lp" in message bus configuration file
Failed to start message bus: The pid file "/var/messagebus.pid" exists, if the message bus is not running, remove this file

python 3.3

do you guys have a plan to add python 3.3 on bsquask?

Libcurl vs Openssl

In the current master (libcurl 7.27.0, openssl-1.0.1c) building libcurl with openssl support isn't working.
I get the following error:
$ libcurl.so: undefined reference to `SSL_CTX_set_srp_password'

It did work before with libcurl 7.25.0 and an older openssl version, however I don't remember the version.

For now I disabled openssl support for libcurl and it builds.

I'm sorry that I only post errors but unfortunately I don't know how to fix them at all.

Regards,
Paul

Hangs before login prompt

I followed exact instructions in the readme , but unable to get login prompt .
bootup hangs just before login prompt .

i tried to clean build twice but didn't work out .

bootup log:

[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.2.27 (tushar@ubuntu) (gcc version 4.6.3 (crosstool-NG hg+default-11c23aa9c9f9) ) #1 PREEMPT Tue Sep 25 22:37:57 IST 2012
[ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
[ 0.000000] Machine: BCM2708
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
[ 0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=720 bcm2708_fb.fbheight=480 bcm2708.boardrev=0x4 bcm2708.serial=0xfcb28951 smsc95xx.macaddr=B7:24:EE:B2:69:51 dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 128MB = 128MB total
[ 0.000000] Memory: 123832k/123832k available, 7240k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xc8800000 - 0xe8000000 ( 504 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0xc0008000 - 0xc04f5e84 (5048 kB)
[ 0.000000] .init : 0xc04f6000 - 0xc0516db4 ( 132 kB)
[ 0.000000] .data : 0xc0518000 - 0xc0544be0 ( 179 kB)
[ 0.000000] .bss : 0xc0544c04 - 0xc05ec7e8 ( 671 kB)
[ 0.000000] NR_IRQS:330
[ 0.000000] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 4294967ms
[ 0.000000] timer_set_mode: unhandled mode:1
[ 0.000000] timer_set_mode: unhandled mode:3
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] console [tty1] enabled
[ 0.000927] Calibrating delay loop... 697.95 BogoMIPS (lpj=3489792)
[ 0.060157] pid_max: default: 32768 minimum: 301
[ 0.060641] Mount-cache hash table entries: 512
[ 0.061143] Initializing cgroup subsys cpuacct
[ 0.061235] Initializing cgroup subsys devices
[ 0.061272] Initializing cgroup subsys freezer
[ 0.061303] Initializing cgroup subsys blkio
[ 0.061454] CPU: Testing write buffer coherency: ok
[ 0.061794] hw perfevents: enabled with v6 PMU driver, 3 counters available
[ 0.063028] devtmpfs: initialized
[ 0.073328] NET: Registered protocol family 16
[ 0.075501] vc_mem_connected_init: called
[ 0.075586] bcm2708_vcio: bcm_mailbox_property failed (-19)
[ 0.075630] vc_mem_update: success=-19 resp 0, vcbase=0 vcsize=0 armbase=0 armsize=0
[ 0.075676] vc-mem: mm_vc_mem_phys_addr = 0x00000000
[ 0.075707] vc-mem: mm_vc_mem_size = 0x00000000 (0 MiB)
[ 0.076218] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
[ 0.076273] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.076312] mailbox: Broadcom VideoCore Mailbox driver
[ 0.076408] bcm2708_vcio: mailbox at f200b880
[ 0.076504] bcm_power: Broadcom power driver
[ 0.076541] bcm_power_open() -> 0
[ 0.076566] bcm_power_request(0, 8)
[ 0.577248] bcm_mailbox_read -> 00000080, 0
[ 0.577287] bcm_power_request -> 0
[ 0.577314] Serial: AMBA PL011 UART driver
[ 0.577472] dev:f1: ttyAMA0 at MMIO 0x20201000 (irq = 83) is a PL011 rev3
[ 0.897815] console [ttyAMA0] enabled
[ 0.923861] bio: create slab at 0
[ 0.929120] SCSI subsystem initialized
[ 0.933111] usbcore: registered new interface driver usbfs
[ 0.938855] usbcore: registered new interface driver hub
[ 0.944434] usbcore: registered new device driver usb
[ 0.949975] Advanced Linux Sound Architecture Driver Version 1.0.24.
[ 0.956937] Switching to clocksource stc
[ 0.961242] FS-Cache: Loaded
[ 0.964430] CacheFiles: Loaded
[ 0.981024] NET: Registered protocol family 2
[ 0.985867] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.993961] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[ 1.001291] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[ 1.007843] TCP: Hash tables configured (established 4096 bind 4096)
[ 1.014250] TCP reno registered
[ 1.017417] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 1.023325] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 1.030095] NET: Registered protocol family 1
[ 1.035296] RPC: Registered named UNIX socket transport module.
[ 1.041429] RPC: Registered udp transport module.
[ 1.046154] RPC: Registered tcp transport module.
[ 1.050870] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 1.057629] bcm2708_dma: DMA manager at c8808000
[ 1.062420] bcm2708_gpio: bcm2708_gpio_probe c051fc58
[ 1.067882] vc-mem: Videocore memory driver
[ 1.072891] audit: initializing netlink socket (disabled)
[ 1.078374] type=2000 audit(0.750:1): initialized
[ 1.202101] VFS: Disk quotas dquot_6.5.2
[ 1.206251] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 1.213829] FS-Cache: Netfs 'nfs' registered for caching
[ 1.220122] msgmni has been set to 241
[ 1.226025] io scheduler noop registered
[ 1.229993] io scheduler deadline registered
[ 1.234563] io scheduler cfq registered (default)
[ 1.255931] Console: switching to colour frame buffer device 90x30
[ 1.269582] kgdb: Registered I/O driver kgdboc.
[ 1.286381] brd: module loaded
[ 1.297035] loop: module loaded
[ 1.303573] vcos: [1]: vchiq_init_state: slot_zero = 0xffd80000, is_master = 0
[ 1.313622] vcos: [1]: vchiq_init_state: called
[ 1.321576] vcos: [1]: vchiq: initialised - version 2 (min 2), device 252.0
[ 1.331776] usbcore: registered new interface driver smsc95xx
[ 1.340011] cdc_ncm: 04-Aug-2011
[ 1.345850] usbcore: registered new interface driver cdc_ncm
[ 1.354040] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 1.562567] Core Release: 2.80a
[ 1.568246] Setting default values for core params
[ 1.575677] Finished setting default values for core params
[ 1.784000] Using Buffer DMA mode
[ 1.789832] Periodic Transfer Interrupt Enhancement - disabled
[ 1.798276] Multiprocessor Interrupt Enhancement - disabled
[ 1.806473] OTG VER PARAM: 0, OTG VER FLAG: 0
[ 1.813443] Dedicated Tx FIFOs mode
[ 1.819712] dwc_otg bcm2708_usb: DWC OTG Controller
[ 1.827234] dwc_otg bcm2708_usb: new USB bus registered, assigned bus number 1
[ 1.837239] dwc_otg bcm2708_usb: irq 32, io mem 0x00000000
[ 1.845381] Init: Port Power? op_state=1
[ 1.851907] Init: Power Port (0)
[ 1.857777] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.867267] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.877137] usb usb1: Product: DWC OTG Controller
[ 1.884488] usb usb1: Manufacturer: Linux 3.2.27 dwc_otg_hcd
[ 1.892833] usb usb1: SerialNumber: bcm2708_usb
[ 1.900804] hub 1-0:1.0: USB hub found
[ 1.907253] hub 1-0:1.0: 1 port detected
[ 1.914826] usbcore: registered new interface driver uas
[ 1.922771] Initializing USB Mass Storage driver...
[ 1.930378] usbcore: registered new interface driver usb-storage
[ 1.938981] USB Mass Storage support registered.
[ 1.946429] usbcore: registered new interface driver libusual
[ 1.955151] mousedev: PS/2 mouse device common for all mice
[ 1.964209] bcm2835-cpufreq: min=700000 max=1000000 cur=700000
[ 1.970151] bcm2835-cpufreq: switching to governor ondemand
[ 1.978331] bcm2835-cpufreq: switching to governor ondemand
[ 1.986657] cpuidle: using governor ladder
[ 1.995626] cpuidle: using governor menu
[ 2.002032] sdhci: Secure Digital Host Controller Interface driver
[ 2.010573] sdhci: Copyright(c) Pierre Ossman
[ 2.017599] sdhci: Enable low-latency mode
[ 2.024159] bcm_power_open() -> 1
[ 2.031627] mmc0: SDHCI controller on BCM2708_Arasan [platform] using platform's DMA
[ 2.042089] mmc0: BCM2708 SDHC host at 0x20300000 DMA 2 IRQ 77
[ 2.050503] sdhci-pltfm: SDHCI platform and OF driver helper
[ 2.059398] usbcore: registered new interface driver usbhid
[ 2.068627] usbhid: USB HID core driver
[ 2.077314] ALSA device list:
[ 2.082933] No soundcards found.
[ 2.097413] TCP cubic registered
[ 2.103181] Initializing XFRM netlink socket
[ 2.112163] Indeed it is in host mode hprt0 = 00021501
[ 2.121971] NET: Registered protocol family 17
[ 2.133385] Registering the dns_resolver key type
[ 2.151128] VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
[ 2.181531] registered taskstats version 1
[ 2.188176] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 2.209231] bcm2835 ALSA card created!
[ 2.221193] bcm2835 ALSA chip created!
[ 2.227623] mmc0: new high speed SDHC card at address e624
[ 2.251759] bcm2835 ALSA chip created!
[ 2.258156] bcm2835 ALSA chip created!
[ 2.264564] mmcblk0: mmc0:e624 SU04G 3.69 GiB
[ 2.275245] mmcblk0: p1 p2
[ 2.282184] bcm2835 ALSA chip created!
[ 2.288537] bcm2835 ALSA chip created!
[ 2.295738] bcm2835 ALSA chip created!
[ 2.301978] bcm2835 ALSA chip created!
[ 2.401059] usb 1-1: new high-speed USB device number 2 using dwc_otg
[ 2.412304] Indeed it is in host mode hprt0 = 00001101
[ 2.515645] EXT4-fs (mmcblk0p2): recovery complete
[ 2.526827] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 2.539428] VFS: Mounted root (ext4 filesystem) on device 179:2.
[ 2.550652] devtmpfs: mounted
[ 2.556964] Freeing init memory: 128K
[ 2.661396] usb 1-1: New USB device found, idVendor=0424, idProduct=9512
[ 2.671700] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.682289] hub 1-1:1.0: USB hub found
[ 2.688920] hub 1-1:1.0: 3 ports detected
[ 2.963373] udevd[61]: starting version 182
[ 2.971449] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 3.101698] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[ 3.101722] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.124680] smsc95xx v1.0.4
[ 3.188444] smsc95xx 1-1.1:1.0: eth0: register 'smsc95xx' at usb-bcm2708_usb-1.1, smsc95xx USB 2.0 Ethernet, b7:24:ee:b2:69:51
[ 3.385409] spi_bcm2708: module has no symbols (stripped?)
[ 3.401505] i2c_bcm2708: module has no symbols (stripped?)
[ 3.425735] i2c_bcm2708: module has no symbols (stripped?)
[ 5.944819] smsc95xx 1-1.1:1.0: eth0: link up, 10Mbps, half-duplex, lpa 0x0020
[ 8.745661] ipv6: module has no symbols (stripped?)

Don't set BR2_JLEVEL

Currently this is set to 5, but it should be set to 0 (which should determine the optimal number of jobs to run automatically).

Fix shutdown, reboot, halt, poweroff

These commands don't actually do what they are supposed to. Pulling the power plug are random times seems to have negative results on the integrity of my ext4 file-system.

Linking qtxmlpatterns fails

With a clean checkout of RaspberryPi-BuildRoot, trying to build the raspberrypi_defconfig I get:
/usr/lib/libstdc++.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[3]: *** [../../lib/libQt5XmlPatterns.so.5.0.0] Fehler 1
make[3]: Leaving directory `/home/julian/dev/rpi/buildroot/output/rootfs-qt/build/qtxmlpatterns-5.0.0/src/xmlpatterns'

Any ideas what's wrong?

Cannot compile libnih on Arch Linux

Hi

I'm trying to create a raspberry image on Arch Linux.

I get an error while compiling libnih, it doesn't find dbus libraries trough pkg-config. So I tried to set DBUS_CFLAGS and DBUS_LIBS in this way:

➜  build git:(master) ✗ echo $DBUS_CFLAGS
-I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include
➜  build git:(master) ✗ echo $DBUS_LIBS
-ldbus-1
➜  build git:(master) ✗

It goes well to find includes but I get an error on linking:

property.c:(.text+0x369): undefined reference to `dbus_error_init'
property.c:(.text+0x379): undefined reference to `dbus_signature_validate_single'
property.c:(.text+0x5ff): undefined reference to `dbus_error_free'
property.o: In function `property_object_get_function':
property.c:(.text+0xf01): undefined reference to `dbus_signature_iter_init'
property.o: In function `property_object_set_function':
property.c:(.text+0x174b): undefined reference to `dbus_signature_iter_init'
property.o: In function `property_proxy_get_notify_function':
property.c:(.text+0x286a): undefined reference to `dbus_signature_iter_init'
property.o: In function `property_proxy_set_function':
property.c:(.text+0x33af): undefined reference to `dbus_signature_iter_init'
property.o: In function `property_proxy_set_notify_function':
property.c:(.text+0x3f2d): undefined reference to `dbus_signature_iter_init'
property.o:property.c:(.text+0x467e): more undefined references to `dbus_signature_iter_init' follow
argument.o: In function `argument_start_tag':
argument.c:(.text+0x385): undefined reference to `dbus_error_init'
argument.c:(.text+0x395): undefined reference to `dbus_signature_validate_single'
argument.c:(.text+0x73e): undefined reference to `dbus_error_free'

Do you know how to solve this?

Compile error

Assemble on the wiki. An error has occurred.

a - ../obj_g/key_defined.o
a - ../obj_g/keybound.o
a - ../obj_g/keyok.o
a - ../obj_g/version.o
ranlib ../lib/libncurses_g.a
/home/evgeny/bsquask_sdk/host/usr/bin/ccache /usr/bin/gcc ../objects/tic.o ../objects/dump_entry.o -L/home/evgeny/bsquask_sdk/host/lib -L/home/evgeny/bsquask_sdk/host/usr/lib -Wl,-rpath,/home/evgeny/bsquask_sdk/host/usr/lib -I../progs -I. -DHAVE_CONFIG_H -I. -I../include -D_GNU_SOURCE -DNDEBUG -I/home/evgeny/bsquask_sdk/host/usr/include/ncurses -O2 -I/home/evgeny/bsquask_sdk/host/include -I/home/evgeny/bsquask_sdk/host/usr/include --param max-inline-insns-single=1200 -static -L../lib -lncurses -L../lib -lncurses -dynamic -o tic
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: cannot find -lc
collect2: error: ld returned 1 exit status
make[2]: *** [tic] Error 1
make[1]: *** [/home/evgeny/bsquask_sdk/build/host-ncurses-5.7/.stamp_built] Error 2
make: *** [all] Error 2

How to solve it?

external toolchain is for x86_64 only (need one for x86 as well)

Hi,

The external cross-compiler is built with a 64 bits computer and I can't extecute check cross-compiler with mine.

Error issue :
Cannot execute cross-compiler '/home/sinseman44/WORK/raspberry_pi/bsquask/host/opt/ext-toolchain/bin/arm-raspberrypi-linux-gnueabi-gcc'
make[1]: *** [/home/sinseman44/WORK/raspberry_pi/bsquask/stamps/ext-toolchain-checked] Erreur 1
make: *** [all] Erreur 2

file <...>/arm-raspberrypi-linux-gnueabi-gcc

ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

Save settings

When using buildroot mode xconfig - I can save settings. If I use the command "make raspberrypi_defconfig O = $ BSQUASK_DIR xconfig'" apply the settings, but the settings do not appear when reopen. How can I best add config assembly required me to the library?

BR2_PACKAGE_QTWEBKIT requires SQLite

>>> qtwebkit 5.0.1 Configuring
[ -f /opt/bsquask/build/qtwebkit-5.0.1/Makefile ] && /usr/bin/make -j16 -C /opt/bsquask/build/qtwebkit-5.0.1 distclean
make: [/opt/bsquask/build/qtwebkit-5.0.1/.stamp_configured] Error 1 (ignored)
#run qmake
(cd /opt/bsquask/build/qtwebkit-5.0.1 && /opt/bsquask/host/usr/bin/qmake )

Running configure tests...

Project ERROR: WebKit requires SQLite. Either make it available via pkg-config, set $SQLITE3SRCDIR or build WebKit under qt5.git.
make: *** [/opt/bsquask/build/qtwebkit-5.0.1/.stamp_configured] Error 3

Package Qt 5.0.0 Release from tar.gz files

Right now we pull each Qt 5 module down from git repos for a few selected repositories. Once Qt 5.0.0 is released we should use the submodule packages instead, which should speed up the download process, and makes more sense to package a release.

The following submodules should be packaged:
qtbase
qtxmlpatterns
qtjsbackend
qtdeclarative
qtmultimedia
qtgraphicaleffects
qtimageformats
qtquick1
qtsvg
qtscript
qtwebkit
qtwebkit-examples-and-demos

qt3d and qtwayland are not part of the release, so these will still need to be built from git.

In addition, there should be an examples option for each package that should determine whether or not to build and deploy the qt examples to the image.

Changes to config.txt don't appear to work

As per the title. I haven't tested all of them. I want to change sdtv_mode to 2 but it stays at zero (vcgencmd). Similarly, disable_overscan stays at 1. I've dug through the source but drawn a blank.

Everything else is great, really fast boot, really easy to add new stuff. Thanks.

I cant git clone.

Following your directions:

git clone [email protected]:nezticle/RaspberryPi-BuildRoot.git BuildRoot
Cloning into 'BuildRoot'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

Any ideas?

the program on Qt displays such error:

When you run the program on Qt displays such error:

EGLFS: Unable to query physical screen size, defaulting to 100 dpi.
EGLFS: To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
Qt Warning: Could not find a location of the system’s Compose files. Consider setting the QTCOMPOSE environment variable.
Qt Warning: Could not find a location of the system’s Compose files. Consider setting the QTCOMPOSE environment variable.

Somebody faced?

device_table.txt not found

Another small issue:
While "Generating root filesystem image rootfs.tar" the script looks for the device table in target/generic/device_table.txt (and generating fails) although it moved to system/device_table.txt .

Regards,
Paul

about ext-toolchain-wrapper

what does ext-toolchain-wrapper for? do you want to add some default parameters to the c /c++ compiler?

it seems that ext-toolchain-wrapper does not work properly. See below:

Tibalt@devlaptop:/opt$ arm-raspberrypi-linux-gnueabi-gcc
//opt/ext-toolchain/bin/arm-raspberrypi-linux-gnueabi-gcc: No such file or directory
Tibalt@devlaptop:/opt$ cd bsquask/
Tibalt@devlaptop:/opt/bsquask$ arm-raspberrypi-linux-gnueabi-gcc
//opt/ext-toolchain/bin/arm-raspberrypi-linux-gnueabi-gcc: No such file or directory
Tibalt@devlaptop:/opt/bsquask$ cd host/
Tibalt@devlaptop:/opt/bsquask/host$ arm-raspberrypi-linux-gnueabi-gcc
/opt/opt/ext-toolchain/bin/arm-raspberrypi-linux-gnueabi-gcc: No such file or directory
Tibalt@devlaptop:/opt/bsquask/host$ cd usr/
Tibalt@devlaptop:/opt/bsquask/host/usr$ arm-raspberrypi-linux-gnueabi-gcc
/opt/bsquask/opt/ext-toolchain/bin/arm-raspberrypi-linux-gnueabi-gcc: No such file or directory
Tibalt@devlaptop:/opt/bsquask/host/usr$ cd bin
Tibalt@devlaptop:/opt/bsquask/host/usr/bin$ arm-raspberrypi-linux-gnueabi-gcc
arm-raspberrypi-linux-gnueabi-gcc: fatal error: no input files
compilation terminated.

Problem while compiling

Hi,
I was trying to create an image for my RasPi, following the instructions. At the step "make" my computer compiled for about half an hour and then returned this error message:

/opt/bsquask/host/usr/bin/arm-raspberrypi-linux-gnueabi-g++ -Wl,-rpath-link,/opt/bsquask/host/usr/arm-buildroot-linux-gnueabi/sysroot/opt/vc/lib -Wl,-rpath-link,/opt/bsquask/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/arm-raspberrypi-linux-gnueabi -Wl,-rpath-link,/opt/bsquask/host/usr/arm-buildroot-linux-gnueabi/sysroot/lib/arm-raspberrypi-linux-gnueabi --sysroot=/opt/bsquask/host/usr/arm-buildroot-linux-gnueabi/sysroot -Wl,--no-undefined -Wl,-O1 -Wl,-rpath,/usr/lib -shared -o libqnmbearer.so .obj/release-shared/main.o .obj/release-shared/qnmdbushelper.o .obj/release-shared/qnetworkmanagerservice.o .obj/release-shared/qnetworkmanagerengine.o .obj/release-shared/qnetworksession_impl.o .obj/release-shared/moc_qnmdbushelper.o .obj/release-shared/moc_qnetworkmanagerservice.o .obj/release-shared/moc_qnetworkmanagerengine.o .obj/release-shared/moc_qnetworksession_impl.o .obj/release-shared/moc_qbearerengine_impl.o -L/opt/bsquask/build/qtbase-5.0.1/lib -lQt5DBus -lQt5Network -lQt5Core -lpthread
mv -f libqnmbearer.so ../../../../plugins/bearer/
make[3]: *** [sub-plugins-make_first] Error 2
make[2]: *** [sub-src-make_first] Error 2
make[1]: *** [/opt/bsquask/build/qtbase-5.0.1/.stamp_built] Error 2
make: *** [all] Error 2

I already googled about this error but didn't found anything useful.

Has anyone an idea how to fix this error?

Im running Ubuntu 12.04 32bit in a VM on a Windows machine.

Thx

Create SD card image and SDK

Make it possible to deploy the Bsquask SDK without having to build everything from scratch. This would just be a pre-built base distributed in a fixed location, along with a flash-able SD card image.

Issue with boot

I followed all the steps for setting up my linux raspberryPi (as per https://github.com/nezticle/RaspberryPi-BuildRoot/tree/bsquask). When i boot the device (without a n/w adapter, just on console), I cannot get past the sshd startup script.

Here is the boot:
Uncompressing Linux... done, booting the kernel. +-----------------------------+
���Starting sshd: OK

My partition looks like this:
/dev/sdb1 400M 8.9M 391M 3% /media/BOOT
/dev/sdb2 3.3G 244M 2.9G 8% /media/rootfs

Package omxplayer

This is the media player designed for the Raspberry Pi, and is the media player backend for XBMC.

Build error: [.obj/release-shared/qvariant.o] Error 1

Hello,
I am running Ununtu Lucid Lynx and after a couple of hours of running the build (following the instructions) I got multiple build errors regarding qvariant.

E.g.:
../../../include/QtCore/5.0.0/QtCore/private/../../../../../src/corelib/kernel/qvariant_p.h:225: error: request for member ‘isNull’ in ‘*0u’, which is of non-class type ‘const bool’

or

../../../include/QtCore/5.0.0/QtCore/private/../../../../../src/corelib/kernel/qvariant_p.h:225: error: ‘const struct QHash<QString, QVariant>’ has no member named ‘isNull’

the whole build ending with:

make[5]: *** [.obj/release-shared/qvariant.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[4]: *** [sub-tools-bootstrap-make_first] Error 2
make[3]: *** [sub-tools-make_first] Error 2
make[2]: *** [sub-src-make_first] Error 2
make[1]: *** [/rpi/build/qtbase-5.0.0/.stamp_built] Error 2

Is there something I missed?

Thank you,
Peter

QtWebKit 5.0.0 broken WebKit 2 graphics

Something is wrong with WebKit 2 graphics, as pages are rendered incorrectly. It seems like the wrong color/depth settings are being used. WebKit 1 looks fine (but doesn't use OpenGL) but is super slow.

WiFi

Quick question...

lsmod shows the driver for my USB wifi adapter is loaded, and ifconfig wlan0 up turns on the annoying little blue LED on the adapter, but there doesn't seem to be any wpa_supplicant installed, and none of this happens automatically on boot.

I'd like it to. It seems like wpa_supplicant is included in the build, but I can't find it on the generated rootfs anywhere. I'm not really reporting an issue here; just looking for a shove in the right direction.

Thanks Andy, for the great work, and for being so kind as to share it with the world. :)

Beecrypt

Hi,
today I tried to compile rpm, which depends on beecrypt. However it always failed with the following error:
/home/paul/raspberry/bsquask/host/usr/arm-unknown-linux-gnueabi/sysroot/usr/lib/libbeecrypt.so: undefined reference to mpaddsqrtrc' /home/paul/raspberry/bsquask/host/usr/arm-unknown-linux-gnueabi/sysroot/usr/lib/libbeecrypt.so: undefined reference tompaddmul'
/home/paul/raspberry/bsquask/host/usr/arm-unknown-linux-gnueabi/sysroot/usr/lib/libbeecrypt.so: undefined reference to `mpsetmul'

objdump -T staging/usr/lib/libbeecrypt.so.7.0.0 revealed that there really was an undefined reference to these three functions, although they are present in source file build/beecrypt-4.2.1/mp.c
My dirty fix was just to remove the preprocessor statements from the three concerned functions.
Now it seems to work, at least objdump doesn't report them as missing and rpm got also configured successfully.

Kind regards,
Paul

Qt5 build libGL missing error

I just built bsquask and tried to build the Qt5 libraries. I got the following
error:
/opt/bsquask/host/opt/ext-toolchain/bin/../lib/gcc/arm-raspberrypi-linux-
gnueabi/4.6.3/../../../../arm-raspberrypi-linux-gnueabi/bin/ld: cannot find -
lGL

I used this configure:
./configure -prefix /usr -hostprefix $BSQUASK_HOST_DIR/usr -release -device pi -
make libs
-device-option CROSS_COMPILE=$BSQUASK_HOST_DIR/usr/bin/arm-raspberrypi-linux-
gnueabi-
-device-option DISTRO=bsquask -sysroot $BSQUASK_STAGING_DIR -no-neon -
opensource -confirm-license

adding -opengl es2 also ends up in an error.

Package QtWebkit

I can get the Qt 5 version QtWebkit to build, but it needs patches (releated to running with the Qt platform with GLESv2), and further testing. It's also a beast to build and almost tipples the time it takes to build the whole SDK.

undefined reference to `memcpy@GLIBC_2.14'

gvarianttype.c:487: warning: 'g_variant_type_check' defined but not used
echo glib-unix.h glib-object.h glib.h galloca.h garray.h gasyncqueue.h gatomic.h gbacktrace.h gbase64.h gbitlock.h gbookmarkfile.h gcache.h gchecksum.h gcompletion.h gconvert.h gdataset.h gdate.h gdatetime.h gdir.h gerror.h gfileutils.h ghash.h ghmac.h ghook.h ghostutils.h gi18n.h gi18n-lib.h giochannel.h gkeyfile.h glist.h gmacros.h gmain.h gmappedfile.h gmarkup.h gmem.h gmessages.h gnode.h goption.h gpattern.h gpoll.h gprimes.h gqsort.h gquark.h gqueue.h grand.h gregex.h grel.h gscanner.h gsequence.h gshell.h gslice.h gslist.h gspawn.h gstdio.h gstrfuncs.h gtestutils.h gstring.h gthread.h gthreadpool.h gtimer.h gtimezone.h gtree.h gtypes.h gunicode.h gurifuncs.h gutils.h gvarianttype.h gvariant.h gwin32.h gprintf.h > glib-public-headers.txt.tmp && mv glib-public-headers.txt.tmp glib-public-headers.txt
CCLD libglib-2.0.la
CCLD gtester
/opt/glibc-2.14/lib/libpthread.so.0: undefined reference to `memcpy@GLIBC_2.14'

Use systemd

Right now were bringing the userspace up with sysvinit, but only because I've not been able to get systemd to work. Ideally we should use systemd.

-opengl es2 missing in Qt ./configure in Walkthrough?

I had to add this option when calling ./configure to build qtbase. Without it the link stage would fail trying to link libGL.

It might have something to do with the fact that I got the Qt5 source code the “normal” way, through:

git clone git://gitorious.org/qt/qt5.git qt5
cd qt5
perl init-repository
cd qtbase

ncurses/ncurses.h not found in copiling/linking

Hi! I was trying to compile a bsqask image for raspberry-pi with the step by step guide (that is running the toolchain?). After about 1,5 hours i got the error

/opt/bsquask/build/host-cmake-2.8.10.2/Source/CursesDialog/cmCursesStandardIncludes.h:32:31: Schwerwiegender Fehler: ncurses/ncurses.h: Datei oder Verzeichnis nicht gefunden
Kompilierung beendet.

(fatal error, ncurses/ncurses.h: file not found) - More: http://pastebin.com/yXViQhzR

I was using ubuntu 12.10, and used the following commands, also to install missing software which i was told to install during the process. see: http://pastebin.com/jXJSEbNs

I've no clue what this might mean, and would be delighted by every hint. This is the bsquask branch, here, I also (first) tried the master (normal) branch exactly like in the readme, with the same result.

Cheers, hygitter

Edit: I also got a Application-has-an-error window from ubuntu, saying send-an-error report? Clicking yes says the program ... causing the error is no linger installed. ( I forgot the program name but I can find out if I run it once again)
Edit2: It is /opt/bsquask/build/host-m4-1.4.16/conftest

Add 'kbd' by default

'kbd' provides the command 'loadkeys' used to load many keyboard layouts. It would be useful for those (like me) that use other layouts than the default English one. It can be easily checked in buildroot.

Update host toolchain's gdb version

The version of gdbsever built for the device is 7.4, but the version that comes with the toolchain is too old to be used with gdbserver 7.4. It is possible to regenerate the toolchain with gdb 7.4.

Image is very dim and blurred

Observed when working with the PI via RCA connector image is very dim and blurred through hdmi dim, but not blurred. Editing /root/config.txt does not helps. What can be done? Monitor is working properly.

reboot issue

When I log on to the rasp with ssh and type "reboot"(using usb keyboard and hdmi output is also tested), the following text appears:
"Broadcast message from root@bsquask
(/dev/pts/0) at 0:07 ...

The system is going down for reboot NOW!"

and can not input anything in the terminal, which seems normal, but after a long time(10 mins at least), the rasp still can not reboot.

Another thing is there is actually no booting info feed to hdmi which is different from raspbian.

PS: it seems the /var/log/messages is cleared after repower. (I manually "logger hello", but that message disappears after repower.) /var/log seems is not a directory in tmpfs. Could anyone give me a hint?

Question: Recompiling kernel

Hi
If i have to do some changes to the kernel and rebuild it, how do I do that with the sdk? The usual pattern is

  1. cd to teh kernel source tree
  2. make menuconfig
  3. set cross compiler, arch
  4. make
    5 make initrd

In the case of SDK, how do i go about it?

thanks in advance

Building QtWebKit: reference to /home/nezticle

Hello,
I changed /opt/bsquask/.config file (BR2_PACKAGE_QTWEBKIT=y), I have been compiling the QtWebKit code for a second day. And when I finally arrived to a linking phase, I got an error... :(

Here's part of it:

/opt/bsquask/host/opt/ext-toolchain/bin/../lib/gcc/arm-raspberrypi-linux-gnueabi/4.6.3/../../../../arm-raspberrypi-linux-gnueabi/bin/ld: BFD (crosstool-NG hg+default-1f6c8e4b2b92) 2.22 assertion fail /home/nezticle/Devices/RaspberryPi/toolchain/i386-raspberrypi/.build/src/binutils-2.22/bfd/elf32-arm.c:12049
...
collect2: ld returned 1 exit status
make[4]: *** [../lib/libQt5WebKit.so.5.0.1] Error 1
make[3]: *** [sub-api-pri-make_first-ordered] Error 2
make[2]: *** [sub-Source-QtWebKit-pro-make_first-ordered] Error 2
make[1]: *** [/opt/bsquask/build/qtwebkit-5.0.1/.stamp_built] Error 2
make: *** [all] Error 2

When I searched for "/home/nezticle" references in filesystem - I found multiple config.log files referencing:
/home/nezticle/Devices/RaspberryPi/toolchain/i386-raspberrypi/.build/

Is there anything wrong with my environment?
Please don't tell me - I have to go through the whole compilation again...
Can I fix it with some symbolic link?

Thanks a lot,
Peter

WiringPi

If the clones or similar packages WiringPi, already in packages bsquask buildroots packeges. To work with Gpio, i2c,spi?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.