Temat: kompilacja openwrt
witam, jeśli teraz na edimaxie mam exroot i oczywiście wszystko działa, ale gdybym kompilował jądro od nawa w tej samej wersji to muszę wrzucać coś do flash czy tylko na pendrive? w jakim "target Image" tar.gz??
pozdrawiam
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Oprogramowanie / Software → kompilacja openwrt
Zaloguj się lub zarejestruj by napisać odpowiedź
witam, jeśli teraz na edimaxie mam exroot i oczywiście wszystko działa, ale gdybym kompilował jądro od nawa w tej samej wersji to muszę wrzucać coś do flash czy tylko na pendrive? w jakim "target Image" tar.gz??
pozdrawiam
Jądro zawsze jest we flashu. Wiec robisz normalny upgrade systemu.
czyli rs232 i flashowanie? jest inna możliwość?
mtd, sysupgrade
może znajdzie jakaś dobra dusza i skompiluje mi openwrt?bo mnie na ubuntu ...... trafi wiecznie jakiś błąd.. a mówili że to takie proste:)
pozdr
Pewnie że proste. Ale jak zwykle nie podałeś JAKI to błąd. Wróżek nie ma...
ok. więc tak , w tej chwili mam edimaxa 6104k z usb i exrootem, diody mam podpięte przez optoizolator i tranzystory do przekaźników, z procka odciąłem piny i wyprowadziłem sobie 5 gpio, podpoiłem wszystko wg twojego tutka i działa, zmieniają sie 1 na 0 podczas zwarcia - więc działa..
problem jest taki że chciałbym wkompilować w jądro te nowe przyciski...
pobieram svn co svn://svn.openwrt.org/openwrt/branches/backfire
zmieniam zawartość pliku konfiguracyjnego w /target/linux/adm5120/files/arch/mips/edimax/br-6104k.c - zmieniam tylko nazwy gpio,
/target/linux/adm5120/files/arch/mips/edimax/br-61xx.c - dopisuje kolejne przyciski do konkretnych pinów procesora.
powiedzmy że tyle w zmianach.
choć chciałbym żeby diody nie zapalały sie po restarcie rtr..
make menuconfig
wybieram platformę, model rtr, dodaje pakiety usb-storage,
troszke skożystałem z tego opisu:https://forum.openwrt.org/viewtopic.php?id=18570
potem : make i czekam.... i czekam...
....
make[3] -C tools/missing-macros compile
make[3] -C tools/missing-macros install
make[3] -C tools/lzma compile
make[3] -C tools/lzma install
make[3] -C tools/squashfs4 compile
make[3] -C tools/squashfs4 install
make[2] toolchain/install
make[3] -C toolchain/binutils prepare
make[3] -C toolchain/binutils compile
make[3] -C toolchain/binutils install
make[3] -C toolchain/gcc prepare
make[3] -C toolchain/kernel-headers prepare
make[3] -C toolchain/kernel-headers compile
make[3] -C toolchain/kernel-headers install
make[3] -C toolchain/uClibc prepare
make[3] -C toolchain/gcc compile
make[3] -C toolchain/uClibc compile
make[3] -C toolchain/gcc install
make[3] -C toolchain/uClibc install
make[2] target/compile
make[3] -C target/linux compile
make -r world: build failed. Please re-run make with V=99 to see what's going on
make: *** [world] Błąd 1
więc robie make V=99 ,
znalazłem gpio buttons error
Masz po prostu błąd w pliku. To plik w C, wiec składnia musi być odpowiednia. Pomyliłeś, się, zrobiłeś literówkę itd.
teraz mam taki:
arch/mips/adm5120/edimax/br-61xx.c:48: error: expected '}' before '{' token
rozumie że w 48 linii?zaznaczyłem wykrzyknikiem
a w pliku mam tak:
static struct gpio_button br61xx_gpio_buttons[] __initdata = {
<------>{
<------><------>.desc<-><------>= "reset_button",
<------><------>.type<-><------>= EV_KEY,
<------><------>.code<-><------>= BTN_0,
<------><------>.threshold<---->= 5,
<------><------>.gpio<-><------>= ADM5120_GPIO_PIN2,
<------>}
!<------>{
<------><------>.desc<-><------>= "1_button",
<------><------>.type<-><------>= EV_KEY,
<------><------>.code<-><------>= BTN_1,
<------><------>.threshold<---->= 5,
<------><------>.gpio<-><------>= ADM5120_GPIO_P0L2,
<------>}
<------>{
<------><------>.desc<-><------>= "2_button",
<------><------>.type<-><------>= EV_KEY,
<------><------>.code<-><------>= BTN_2,
<------><------>.threshold<---->= 5,
<------><------>.gpio<-><------>= ADM5120_GPIO_P1L2,
czyli powinno być bez nawiasów?
pozdrawiam
Przecinków nie masz-
},
{I jeden ! na początku linii.
arch/mips/adm5120/edimax/br-61xx.c:56: error: expected expression before '.' token
arch/mips/adm5120/edimax/br-61xx.c:61: error: expected expression before '}' token
arch/mips/adm5120/edimax/br-61xx.c:68: error: expected identifier or '(' before ',' token
arch/mips/adm5120/edimax/br-61xx.c:75: error: expected identifier or '(' before ',' token
arch/mips/adm5120/edimax/br-61xx.c:83: error: expected identifier or '(' before '}' token
przecinki nie pomogły:(
soorki kwadratowy nawias wstawiłem, poszło dalej
No zobacz co masz w 56 linii. Coś przed . mu nie pasuje.
arch/mips/adm5120/edimax/br-6104k.c:36:20: error: macro "MIPS_MACHINE" passed 4 arguments, but takes just 3
arch/mips/adm5120/edimax/br-6104k.c:35: warning: data definition has no type or storage class
arch/mips/adm5120/edimax/br-6104k.c:35: warning: type defaults to 'int' in declaration of 'MIPS_MACHINE'
ciekawe bo tu zmieniłem tylko nawy gpio, w tych linikach nic nie ruszałem oto 35 i 36:
MIPS_MACHINE(MACH_ADM5120_BR6104K, "BR-6104K", "Edimax BR-6104K",
<------> br6104k_setup);
Przenieś to do jednej linii.
CHK include/linux/version.h
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-mips
CALL scripts/checksyscalls.sh
CHK include/linux/compile.h
CC arch/mips/adm5120/edimax/br-6104k.o
arch/mips/adm5120/edimax/br-6104k.c:35:79: error: macro "MIPS_MACHINE" passed 4 arguments, but takes just 3
arch/mips/adm5120/edimax/br-6104k.c:35: warning: data definition has no type or storage class
arch/mips/adm5120/edimax/br-6104k.c:35: warning: type defaults to 'int' in declaration of 'MIPS_MACHINE'
make[6]: *** [arch/mips/adm5120/edimax/br-6104k.o] Error 1
dalej to samo, linia poprawiona, nawet z kopii przegrałem z niezmienionymi nazwami i lipa:
MIPS_MACHINE(MACH_ADM5120_BR6104K, "BR-6104K", "Edimax BR-6104K",br6104k_setup);
i nikt nic ??? nie ma pomysłu?
jest takie cos jak np. make FILE='/bla/bla/.moj_config'
tak aby nie kompilowalo z .config?
Pokaż cały plik jaki masz. I nic z niego nie wycinaj.
Pokaż cały plik jaki masz. I nic z niego nie wycinaj.
ok, skompilowało sie , coś chyba z ubuntu było nie tak, ale dalej coś mi si nie zgadza, wszyscy piszą że powinie powstać plik /openwrt/bin....xmodem.bin, hmm u mnie jest tylko z rozszerzeniem tar.gz żadnego bin-a nie tworzy make....wie ktoś dlaczego??
Masz za duży plik wynikowy i nie robi sie bin?
ok odchudziłem i rzeczywiści zrobił sie xmodem.
wgrałem, wstaje ale...
ADM5120 Boot:
jump to linux code!!
LZMA loader for BR-6104KP, Copyright (C) 2007-2008 OpenWrt.org
Looking for TRX header... found at 00012000, kernel:0000001C len:000C73E4
decompressing kernel... done!
launching kernel...
Linux version 2.6.32.33 () (gcc version 4.5.2 (Linaro GCC
4.5-2011.02-0) ) #1 Sun May 29 20:17:58 CEST 2011
bootconsole [early0] enabled
CPU revision is: 0001800b (MIPS 4Kc)
SoC : ADM5120P rev 8, running at 175.000 MHz
Bootdev : NOR flash
Prom : Generic
Determined physical RAM map:
memory: 01000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
Normal 0x00000000 -> 0x00001000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00001000
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 4064
Kernel command line: console=ttyS0,115200 rootfstype=squashfs,yaffs2,jffs2
PID hash table entries: 64 (order: -4, 256 bytes)
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Primary instruction cache 8kB, VIPT, 2-way, linesize 16 bytes.
Primary data cache 8kB, 2-way, VIPT, no aliases, linesize 16 bytes
Memory: 13768k/16384k available (1891k kernel code, 2616k reserved, 327k data, 1
32k init, 0k highmem)
SLUB: Genslabs=7, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Hierarchical RCU implementation.
NR_IRQS:2
Calibrating delay loop... 173.05 BogoMIPS (lpj=346112)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
MIPS: machine is Edimax BR-6104KP
PCI: not available on ADM5120P
bio: create slab <bio-0> at 0
Switching to clocksource MIPS
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 512 (order: 0, 4096 bytes)
TCP bind hash table entries: 512 (order: -1, 2048 bytes)
TCP: Hash tables configured (established 512 bind
TCP reno registered
NET: Registered protocol family 1
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006
Red Hat, Inc.
yaffs May 29 2011 20:14:59 Installing.
msgmni has been set to 26
io scheduler noop registered
io scheduler deadline registered (default)
Serial: AMBA driver
apb:uart0: ttyS0 at MMIO 0x12600000 (irq = 9) is a AMBA
console [ttyS0] enabled, bootconsole disabled
console [ttyS0] enabled, b
apb:uart1: ttyS1 at MMIO 0x12800000 (irq = 10) is a AMBA
adm5120-flash.0: probing at 0x1FC00000, size:2048KiB, width:16 bits
adm5120-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
CFI mfr 0x000000c2
CFI id 0x00002249
Amd/Fujitsu Extended Query Table at 0x0040
Amd/Fujitsu Extended Query version 1.0.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
adm5120-flash.0: found at 0x1FC00000, size:2048KiB, width:16 bits
adm5120-flash.0: adding static partitions
Creating 3 MTD partitions on "adm5120-flash.0":!
LZMA loader for BR-6104
0x000000000000-0x000000008000 : "admboot"
adm5120_wdt: Watchdog Timer version 0.1
TCP westwood registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
trxsplit: searching TRX header in 'admboot'
trxsplit: searching TRX header in 'config'
trxsplit: searching TRX header in 'firmware'
trxsplit: TRX header found at 0x2000
trxsplit: creating TRX partitions in 'firmware' (31,2)
Creating 2 MTD partitions on "firmware":
0x00000000201c-0x0000000c9400 : "kernel"
mtd: partition "kernel" must either start or end on erase block boundary or be s
maller than an erase block -- forcing read-only
0x0000000c9400-0x0000001f0000 : "rootfs"
mtd: partition "rootfs" must either start or end on erase block boundary or be s
maller than an erase block -- forcing read-only
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=190000, len=60000
0x000000190000-0x0000001f0000 : "rootfs_data"
VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
Freeing unused kernel memory: 132k freed
Please be patient, while OpenWrt loads ...i nic stoi i czeka....... na co?
Na nic, nie uruchomił się dalej po prostu, nie załadował/nie uruchomił systemu plików.
to co, coś źle skompilowane? o boże - po prostu:)
skompilowałem sobie backfire z tego wychodzi rc-5, podczas opkg update linux próbuje sie połaczyć z serwerem :
root@OpenWrt:/# opkg update
Downloading http://downloads.openwrt.org/backfire/10.03.1-rc5/adm5120_mipsel/pac
kages/Packages.gz.
wget: server returned error: HTTP/1.1 404 Not Found
Collected errors:
* opkg_download: Failed to download http://downloads.openwrt.org/backfire/10.03
.1-rc5/adm5120_mipsel/packages/Packages.gz, wget returned 1sprawdziłem takiego katalogu nie ma( rc5) jak to ugryść
pozdr
No nie ma, od 2 miesięcy czekamy na rc5. Zmień sobie w /etc/opkg.conf na http://downloads.openwrt.org/snapshots/ … /packages/
Zaloguj się lub zarejestruj by napisać odpowiedź
eko.one.pl → Oprogramowanie / Software → kompilacja openwrt
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc