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í
×
    dnes 04:33 | Nová verze

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 0
    dnes 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 3
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:00 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    1.6. 22:33 | Bezpečnostní upozornění

    npm balíčky @redhat-cloud-services byly kompromitovány.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (15%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1811 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: 339×

    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.