abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 19:55 | Zajímavý software

    Uživatelé mobilních telefonů s Linuxem si nyní mohou nainstalovat aplikaci Mobilní Datovka. Díky tomu je přístup k datovým schránkám dostupný i na zařízeních s mobilními linuxovými distribucemi, jako jsou například Mobian, NixOS Mobile, pmOS atd. Aplikace je dostupná na Flathubu.

    David Heidelberg | Komentářů: 0
    včera 13:33 | Komunita

    Software Freedom Conservancy v novém dokumentu shrnuje doporučení, jak přistupovat ke generativní AI založené na LLM při přispívání do svobodného a open-source softwaru. Mimo jiné vyzývá k obezřetnosti, transparentnosti a revizi generovaného kódu člověkem.

    |🇵🇸 | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 5.6.0 programu na úpravu digitálních fotografií darktable (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    20.6. 20:11 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.

    Ladislav Hagara | Komentářů: 0
    20.6. 19:11 | Nová verze

    Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.

    Ladislav Hagara | Komentářů: 0
    20.6. 18:11 | Komunita

    Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.

    Ladislav Hagara | Komentářů: 1
    20.6. 17:22 | Nová verze

    Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.

    Ladislav Hagara | Komentářů: 3
    20.6. 12:00 | Nová verze

    Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).

    |🇵🇸 | Komentářů: 0
    19.6. 10:22 | Humor

    Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].

    Ladislav Hagara | Komentářů: 0
    19.6. 09:55 | Nová verze

    Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1957 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Vnořené Makefiles

    29.4.2009 21:36 Cunha
    Vnořené Makefiles
    Přečteno: 343×

    Zdravím,

    mám následující strukturu adresářů:

    a/

    a/amd/

    a/distrib/

     

    V a/ mám Makefile:

    vpath %.c ..
    vpath %.h ..
    vpath %.y ..
    ...
    CFLAGS=-g -O0 -Wall -Werror -fPIC -DPIC -DNET_NO_IO -DNET_NO_LOG -fno-stack-protector
    LDFLAGS=-lpthread

    ...


    LIBSA +=./distrib/libdist.a
    ...

    all: distr ...

    ...
    distr:
         make -C distrib all   
    ...

    z ktereho includuju (pravidlo distr) Makefile z a/distrib:

    MKDIR=mkdir
    CP=cp
    CCADMIN=CCadmin
    RANLIB=ranlib
    OBJ=net.o msg.o
    HEAD=main.h

    NAME = project
    CFLAGS=-g -O0 -Wall -Wall -fPIC -fno-stack-protector
    LDFLAGS=-lpthread
    OPT=-Wall -pedantic -pthread
    CC=gcc

    # build
    build: $(NAME)

    $(NAME): ${OBJ}
        ar cru libdist.a net.o msg.o
        ranlib libdist.a

    ${OBJ}:${HEAD}

    %.o : %.c
        gcc $(CFLAGS) -c $<

    # clean
    clean:
        rm -rf *.o libdist.a

    # all
    all: project

    Pokud zadám 'make' v a/, pak se mi to zkompiluje v pořádku. Ale v adresáři a/amd/ je Makefile:

    include ../Makefile

    Pokud zadám make v tomto podadresáři, vypíše mi to:

    make -C distrib all   
    make: *** distrib: No such file or directory.  Stop.
    make: *** [distr] Error 2

    Vím, že by to mělo být něco s VPATH, ale nevím jak na to. Zkoušel jsem něco vygooglit, ale nezabralo nic. Díky

    Odpovědi

    30.4.2009 02:50 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Vnořené Makefiles
    Příkaz make -C distrib all se bude chovat podobně jako cd distrib; make all; cd -, a pokud v adresáři amd není podadresář distrib, tak to nefunguje. Podle manuálu totiž parametr -C adresář říká, že před tím, než se načtou jakékoli soubory, přejde make do zadaného adresáře.
    30.4.2009 09:01 cunha
    Rozbalit Rozbalit vše Re: Vnořené Makefiles

    No, to tusim. Ale jak cestu k adresari pridat?

    Diky

    30.4.2009 10:30 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Vnořené Makefiles
    Připadá mi to spíš jako chyba v návrhu struktury těch skriptů. Pokud v adresáři a/amd funguje make -f ../distrib/Makefile all, půjde to udělat třeba tak, že se v a/Makefile zavede nová proměnná BASE_PATH:
    ifndef BASE_PATH
    BASE_PATH = .
    endif
    
    Potom je třeba změnit pravidlo distr:
    distr:
         make -f $(BASE_PATH)/distrib/Makefile all 
    
    V a/amd/Makefile se potom na začátek přidá nahoru definice:
    BASE_PATH = ..
    
    30.4.2009 11:02 cunha
    Rozbalit Rozbalit vše Re: Vnořené Makefiles

    Díky

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.