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 12:11 | IT novinky

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 2
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 4
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 25
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 9
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 22
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 90
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

    Dotaz: Úprava jednoduchého Makefile gcc/g++

    otula avatar 12.2.2009 09:38 otula | skóre: 45 | blog: otakar | Adamov
    Úprava jednoduchého Makefile gcc/g++
    Přečteno: 766×
    Jakožto absolutní neprogramátor bych chtěl poprosit a radu, jak upravit následující makefile, abych mohl kompilaci provést čistě, a ne škaredě :-)
    $ cat Makefile
    CFLAGS := -W -Wall -O2 -D__UNIX__
    CC      := gcc
    
    ### Misc
    DOCS = CHANGES COPYING README
    PACKAGE = vstrip-0.8e
    PREFIX = /usr/local
    BINDIR = $(PREFIX)/bin
    DOCDIR = $(PREFIX)/share/doc
    
    
    ### Sources
    
    SOURCE_FILES=file_io.h file_io.c in_buffer.h in_buffer.c parse_ifo.h parse_ifo.c s_types.h main.c vstrip.h vstrip.c
    
    ### Objects and executables
    
    OBJ_FILES = file_io.o in_buffer.o parse_ifo.o main.o vstrip.o
    
    EXEC_FILES = vstrip
    
    
    ### General targets
    
    all: $(EXEC_FILES)
    
    
    clean:
            rm -f $(EXEC_FILES) $(OBJ_FILES)
    
    install :
            install -o root -g root -m 755 $(EXEC_FILES) $(BINDIR)
            install -o root -g root -m 755 -d $(DOCDIR)/$(PACKAGE)
            install -o root -g root -m 644 $(DOCS) $(DOCDIR)/$(PACKAGE)
    
    uninstall:
            (cd $(BINDIR) && rm -f $(EXEC_FILES))
            (cd $(DOCDIR) && rm -rf $(PACKAGE))
    
    
    ### Details
    
    vstrip :         file_io.o in_buffer.o main.o parse_ifo.o vstrip.o
            $(CC)   -g  file_io.o in_buffer.o main.o parse_ifo.o vstrip.o -o vstrip
    file_io.o : s_types.h file_io.h file_io.c
    in_buffer.o : s_types.h file_io.h in_buffer.h in_buffer.c
    main.o : s_types.h file_io.h vstrip.h main.c
    parse_ifo.o : s_types.h file_io.h parse_ifo.h vstrip.h parse_ifo.c
    vstrip.o : s_types.h file_io.h in_buffer.h vstrip.h vstrip.c
    
    Pokud spustím příkaz make, skončí to takto:
    gcc     -g  file_io.o in_buffer.o main.o parse_ifo.o vstrip.o -o vstrip
    vstrip.o: In function `vs_get_time':
    vstrip.c:(.text+0x77b): undefined reference to `fmod'
    vstrip.c:(.text+0x813): undefined reference to `fmod'
    vstrip.c:(.text+0x83e): undefined reference to `fmod'
    vstrip.c:(.text+0x94b): undefined reference to `fmod'
    vstrip.c:(.text+0x978): undefined reference to `fmod'
    vstrip.o:vstrip.c:(.text+0x9af): more undefined references to `fmod' follow
    collect2: ld returned 1 exit status
    make: *** [vstrip] Error 1
    
    Našel jsem si, že lze tuto chybu vyřešit tím, že se místo gcc použije g++. Pokud po této havárii nahradím počáteční CC:=gcc za CC:=g++, doběhne to do konce a program se zkompiluje. Na počátku to zaměnit nemohu, protože pak by se pro změnu nepřeložily ostatní věci. Chtěl bych to nacpat do PKGBUILDu. Zatím tam mám:
    make -i || return 1
    patch -p0 < ../patch-vstrip.diff || return 1
    make || return 1
    
    což sice funguje, ale uznáte, že je to … ehm, velmi nehezké ;-)

    Takže můj dotaz zní, jak upravit Makefile, aby při kompilaci vstrip.c použil g++

    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.

    Odpovědi

    12.2.2009 10:20 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Úprava jednoduchého Makefile gcc/g++

    V man fmod se píše Link with -lm - takže bych

    $(CC)   -g  file_io.o in_buffer.o main.o parse_ifo.o vstrip.o -o vstrip

    nahradil za

    $(CC) -g -lm file_io.o in_buffer.o main.o parse_ifo.o vstrip.o -o $@

    A pokud to má být jóó hezký, tak to udělat takhle

    LDFLAGS=-lm
    ...
        $(CC) $(CFLAGS) $(LDFLAGS) file_io.o in_buffer.o main.o parse_ifo.o vstrip.o -o $@
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    otula avatar 12.2.2009 10:50 otula | skóre: 45 | blog: otakar | Adamov
    Rozbalit Rozbalit vše Re: Úprava jednoduchého Makefile gcc/g++
    Vojto děkuji, vypadá to funkčně :-)
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.

    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.