Portál AbcLinuxu, 7. května 2025 22:38

Dotaz: Makefile pro openWRT SDK

8.5.2013 14:04 k-barter_CZ | skóre: 2 | Zlín
Makefile pro openWRT SDK
Přečteno: 466×
Odpovědět | Admin
Zdravím,

po velkém boji s SDK-čkem openWRT jsem se rozhodl zeptat na poradně, jelikož jsem stále neúspěšný s vytvářením Makefile.

Vytvořil jsem si jednoduchý céčkový program, pro který jsem si udělal Makefile na normální arhitekturu. Tento Makefile dělá, to co chci - instaluje a odstraňuje tak jak má (všichni uživatelé mohou používat.

Nicméně mě trápí Makefile pro openWRT. Studoval jsem jejich wiki a různé návody na webu, nicméně kompilace končí špatně, nevím, jestli má smysl sem dávat logy (chyby typu chybí separátor umím odstranit sám). Spíš by se mi hodil nějaký workaround Makefilu pro nováčky, jelikož moc jasno v dělaní těchto věcí nemám.

Program je jeden soubor, main.c, popřípadě jménoprogramu.c, takže nic složitého.

Předem díky za Vaše odpovědi, logy budu sem dávat na požádání.

PS: Přemýšlel jsem i nad prostou kompilací a poté scp do routeru, nicméně mi to rozhasilo Ubuntí repositáře. Jen podotýkám, že zatím toto chci řešit obecně, nicméně target platforms jsou buď AR71xx nebo jen AR7.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

8.5.2013 16:11 trubicoid2
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Odpovědět | | Sbalit | Link | Blokovat | Admin
no nevim, muze byt problem, ze nevolas cross-compiler z toho tvyho SDK treba? anebo s knihovnama? co presne znamena kompilace konci spatne?
8.5.2013 16:30 k-barter_CZ | skóre: 2 | Zlín
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
zdravim,

mel jsem v puvodnim postu dat i zdroje, protoze to tady vypada jako bych varil z vody.

Prosel jsem si openWRT SDK, dale jsem si procital tento workaround.

Kompilace se mi seka bud na tom, ze nemuze najit makefile (coz ja nechapu) nebo mam spatne napsany Makefile (zkousel jsem si stahnout zdrojovy kod k nano, prepracoval jsem jej).

Spis by se mi hodil nejaky mustr, jak ma vypadat jednoduchy Makefile pro openwrt, jelikoz s tvorbou normalniho Makefilu potiz neni :-(.

Samozrejme budu zkouset i dalsi kroky, nicmene Google mi vraci podobne, ne li nekdy stejne vysledky. Celkove nad timto sedim uz asi tri dny.
8.5.2013 17:46 trubicoid2
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
to je asi na delani tech jejich balicku, ne? to asi zatim nepotrebujes, co zkusit rucne ten tvuj program kompilovat? t.j. bez make a Makefile, to jde? http://wiki.openwrt.org/doc/devel/crosscompile
8.5.2013 22:18 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pro jeden soubor bych asi makefile nedělal.

Já mám pro překlad napsaný skript přelož:

#!/bin/bash

./mipsel-openwrt-linux-gcc -o displej displej.c

Kterej mám v SDK u toho mipsel-openwrt-linux-gcc
pavlix avatar 9.5.2013 09:40 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Pro jeden soubor bych asi makefile nedělal.
A já klidně.
Já mám pro překlad napsaný skript přelož:
Zbytečné, to funguje i bez makefile:
make displej
Zkus si to. V takovýchto případech pak můj makefile vypadá například takto:
CFLAGS = -g
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
10.5.2013 16:58 Strašidlo
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Odpovědět | | Sbalit | Link | Blokovat | Admin
Hezký den přeji!

Pošlete sem Váš package Makefile, nějak to dokopeme do konce, co Vy na to? :-) Můžu pomoci.

Nejlepší řešení bude napsat si package Makefile pro OpenWrt buildroot, a pak Makefile pro Váš céčkovský zdroják. Jakmile vytvoříte kostru, pomůžu Vám s dalšími kroky.

Hlavně se inspirujte u jiných zdrojových package Makefile souborů - viz https://dev.openwrt.org/browser/packages :-)

Držím palce a určitě se ozvěte!
11.5.2013 20:57 k-barter_CZ | skóre: 2 | Zlín
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Příloha:
Zdravim,

posilam Makefile. Podle dodaneho odkazu jsem udelal podobnou hiearchii slozek, takze to chvilemi vypadalo, ze kompilator konecne neco "vyplivne" :)

12.5.2013 22:44 Strašidlo
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Struktura již vypadá použitelně. Teď by bylo fajn, kdyby ty zdrojáky v $(PKG_BUILD_DIR) vůbec byly.

Balíček můžete mít v packages/ či ve složce feeds/názevrepozitáře/cesta/...

Pro indexaci balíčku je zapotřebí, aby se zavolal skript

./scripts/feeds {update,install} -a

čímž dosáhnete indexaci nových balíčků, včetně toho vašeho ve feedech.

Obecná konvence je, že balíček má buď zdrojáky stažitelné pomocí často používaného protokolu zabalené do nějakého archivu, stažitelné pomocí GIT/SVN nebo jsou prostě uložené do nějaké podsložky, často používaná je podsložka src/ či files/. Pokud použijete třetí variantu, tak nakopírujte zdrojáky z files/ do PKG_BUILD_DIR v rámci makra Build/Prepare.

define Build/Prepare $(call Build/Prepare/Default) $(CP) ./src/* $(PKG_BUILD_DIR)/ endef

Ono se takhle bez zdrojáků těžce radí, ale kdyžtak mrkněte na nějaké jednodušší balíčky, aplikace, u kterých je Makefile o dost jednodušší.

A hlavně - používat make V=99 nebo make V=s - ten výstup při kompilaci pak bude ukecanej až až! a dost poradí!
16.5.2013 18:07 k-barter_CZ | skóre: 2 | Zlín
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Zdravim,

po delsi odmlce se opet hlasim, jelikoz jsem byl vytizen zkouskovym obdobim.

Opet jsem zkoumal Makefile pro vlastni prog a dospel jsem k zaveru ze openWRT ma totalni paskvil v SDK.

Kdyz mam vse, co mam mit, tak kompilator holt dela neporadek, samozrejme verbosovani mam zaple.

Co me nejvice stve, ze mam jen jeden ceckovy soubor, ktery chci zkompilovat a kompilator dela s prominutim prasarny, jelikoz nemuze najit nejake Makefily v jinych slozkach, to znamena ze tady budu asi hazet CELKOVY proces.

Timto postem chci topic udrzet zivy, jelikoz v dohledne dobe budu preinstalovavat produkcni NTB a pote to udelam znova a lepe.

Takze pazklize to bude treba, budu tady natvrdo postovat vystupy s CMD, byt je to proti pravidlum.

Co se tyce fora openWRT, tak par takovych veci tam uz reseno bylo, nicmene po uplne ignoraci meho prvniho postu se bojim tam napsat.
18.5.2013 12:44 Strašidlo
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Ale tady se bát nemusíte. :-) Snad budu schopen pomoci.
14.7.2013 19:50 k-barter_CZ | skóre: 2 | Zlín
Rozbalit Rozbalit vše Re: Makefile pro openWRT SDK
Dobry den,

omlouvam se za svoji pasivitu, ale rozhodl jsem se trochu prepracovat program, kde nyni resim napojeni na pajpu, na coz udelam jiny post.

Momentalne toto necham otevrene, kdyby nahodou se neco povedlo udelat s balickovacim systemem "openvertu", nicmene si myslim ze pametova narocnost programu stoupne tak moc, ze programek nebude mozne pouzivat na routerech apod.

To bude lepsi sehnat malinu a udelat cross-compile, protoze openWRT nademnou holt vitezi :-D .

Ale i tak dekuji za Vasi ochotu, vazim si ji.

zdravi Karel

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.