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 02:16 | Bezpečnostní upozornění

    Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na The Hacker News.

    Max | Komentářů: 1
    včera 23:22 | Zajímavý software

    Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?

    Stanislav Hoferek | Komentářů: 1
    včera 14:33 | Komunita

    Do základního systému NetBSD -current byl přidán nový editor atto jako alternativa k editorům vi a xedit.

    Ladislav Hagara | Komentářů: 2
    včera 14:11 | IT novinky

    Společnost System76 představila kompaktní 11litrový Thelio Prime Desktop. S procesorem AMD Ryzen 9000. S Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC nebo Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 1
    včera 13:44 | Humor

    Čínská státní televize pozastavila vysílání španělské La Ligy a čínské internetové platformy omezily obsah s Kylianem Mbappém poté, co slavný fotbalista ve francouzském pořadu The Bridge mluvil o svém oblíbeném memu, v němž je jeho tvář vložena do portrétu zobrazujícího diktátora Mao Ce-tunga. 'Můj oblíbený mem je ten, na kterém dali můj obličej na čínského diktátora. To mě opravdu rozesmívá. S přáteli ho používám pořád' řekl,

    … více »
    Pendrekama do nich❗ | Komentářů: 5
    včera 13:22 | IT novinky

    Při příležitosti oslav Dne vzniku samostatného československého státu (28. října) byly uděleny medaile Za zásluhy tvůrci aplikace Záchranka Filipu Maleňákovi, vědci v oblasti umělé inteligence Tomáši Mikolovovi a Olze Štěpánkové, vědkyni zabývající se kybernetikou, robotikou a strojovým učením, průkopnici v oblastech výuky a využití umělé inteligence v medicínském inženýrství.

    Pendrekama do nich❗ | Komentářů: 3
    včera 01:33 | IT novinky

    Apple představil nový iPad mini, iMac s čipem M6, 14palcový MacBook Pro s čipem M6 a MacBook Pro s PROLED XDR displejem – první Mac s dotykovým ovládáním.

    Ladislav Hagara | Komentářů: 5
    28.10. 23:22 | Zajímavý projekt

    Nedávno představený projekt mapSTL.com řeší budoucnost. 𝕏: "Netušil jsem, kolik patentů na generování map existuje. Existují patenty na generování fantasy map 🫣. Cokoliv je na 3D tiskárnu a tvoří to produkt, bude to mít patenty. Tak bacha na to!" … více »

    Ladislav Hagara | Komentářů: 3
    28.10. 18:55 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.4 (𝕏). Přehled novinek a vylepšení v poznámkách k vydání.

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

    Byla objevena zranitelnost Tailworm v Tailscale a Headscale umožňující lokální eskalaci práv přihlášeného uživatele. Následně byla v Tailscale v opravené verzi 1.104.4+ změněna architektura aplikace. Viz příspěvek na blogu Tailscale.

    vencour | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2941 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: LibFTDI: Undefined reference

    22.5.2011 19:29 Hrabosh | skóre: 26 | blog: HBlog | Brno
    LibFTDI: Undefined reference
    Přečteno: 858×
    Zdravím.

    Snažím se zkompilovat example od FTDI pro bit-bang mód USB převodníku FT245.

    Zdroják zde (odstranil jsem znak <> kolem includnutých header souborů, protože se to sem nechtělo vložit):

    /* This program is distributed under the GPL, version 2 */
    
    #include stdio.h
    #include unistd.h
    #ifdef __WIN32__
    #define sleep(x) Sleep(x)
    #endif
    #include ftdi.h
    
    int main(int argc, char **argv)
    {
        struct ftdi_context ftdic;
        int f,i;
        unsigned char buf[1];
    
        if (ftdi_init(&ftdic) < 0)
        {
            fprintf(stderr, "ftdi_init failed\n");
            return EXIT_FAILURE;
        }
    
        f = ftdi_usb_open(&ftdic, 0x0403, 0x6001);
    
        if (f < 0 && f != -5)
        {
            fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(&ftdic));
            exit(-1);
        }
    
        printf("ftdi open succeeded: %d\n",f);
    
        printf("enabling bitbang mode\n");
        ftdi_set_bitmode(&ftdic, 0xFF, BITMODE_BITBANG);
    
        sleep(3);
    
        buf[0] = 0x0;
        printf("turning everything on\n");
        f = ftdi_write_data(&ftdic, buf, 1);
        if (f < 0)
        {
            fprintf(stderr,"write failed for 0x%x, error %d (%s)\n",buf[0],f, ftdi_get_error_string(&ftdic));
        }
    
        sleep(3);
    
        buf[0] = 0xFF;
        printf("turning everything off\n");
        f = ftdi_write_data(&ftdic, buf, 1);
        if (f < 0)
        {
            fprintf(stderr,"write failed for 0x%x, error %d (%s)\n",buf[0],f, ftdi_get_error_string(&ftdic));
        }
    
        sleep(3);
    
        for (i = 0; i < 32; i++)
        {
            buf[0] =  0 | (0xFF ^ 1 << (i % 8));
            if ( i > 0 && (i % 8) == 0)
            {
                printf("\n");
            }
            printf("%02hhx ",buf[0]);
            fflush(stdout);
            f = ftdi_write_data(&ftdic, buf, 1);
            if (f < 0)
            {
                fprintf(stderr,"write failed for 0x%x, error %d (%s)\n",buf[0],f, ftdi_get_error_string(&ftdic));
            }
            sleep(1);
        }
    
        printf("\n");
    
        printf("disabling bitbang mode\n");
        ftdi_disable_bitbang(&ftdic);
    
        ftdi_usb_close(&ftdic);
        ftdi_deinit(&ftdic);
    }
    

    Při pokusu o kompiulace příkazem:

    gcc bitbang.c -o bitbang

    dostanu tohle:
    hrabosh@GentooOnAthlon ~/Aktualni_vyvojovy_mrdnik/USB $ gcc bitbang.c -o bitbang
    /tmp/ccIlZQWy.o: In function `main':
    bitbang.c:(.text+0x15): undefined reference to `ftdi_init'
    bitbang.c:(.text+0x6b): undefined reference to `ftdi_usb_open'
    bitbang.c:(.text+0x89): undefined reference to `ftdi_get_error_string'
    bitbang.c:(.text+0xf5): undefined reference to `ftdi_set_bitmode'
    bitbang.c:(.text+0x12e): undefined reference to `ftdi_write_data'
    bitbang.c:(.text+0x145): undefined reference to `ftdi_get_error_string'
    bitbang.c:(.text+0x1ad): undefined reference to `ftdi_write_data'
    bitbang.c:(.text+0x1c4): undefined reference to `ftdi_get_error_string'
    bitbang.c:(.text+0x292): undefined reference to `ftdi_write_data'
    bitbang.c:(.text+0x2a9): undefined reference to `ftdi_get_error_string'
    bitbang.c:(.text+0x318): undefined reference to `ftdi_disable_bitbang'
    bitbang.c:(.text+0x324): undefined reference to `ftdi_usb_close'
    bitbang.c:(.text+0x330): undefined reference to `ftdi_deinit'
    collect2: ld returned 1 exit status
    
    Nevíte někdo, kde hledat problém?

    Díky !
    To jsem psal já ... to není bordel, to je modulární!

    Odpovědi

    22.5.2011 19:54 chrono
    Rozbalit Rozbalit vše Re: LibFTDI: Undefined reference
    Pri tom kompilovaní chýba niečo ako -lftdi (a teda treba kompilátoru povedať, že sa tam používa aj nejaká knižnica). Je ale možné (nechce sa mi to zisťovať), že FTDI knižnica obsahuje konfiguráciu pre pkgconfig a/alebo skript ftdi_config, takže sa to bude dať urobiť aj lepšie.
    22.5.2011 20:13 Hrabosh | skóre: 26 | blog: HBlog | Brno
    Rozbalit Rozbalit vše Re: LibFTDI: Undefined reference
    Díky, -lftdi pomohlo. Nicméně já jsem si myslel, že to zařídí to #include ftdi.h .... ne ?
    To jsem psal já ... to není bordel, to je modulární!
    vlastikroot avatar 22.5.2011 20:57 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: LibFTDI: Undefined reference
    Include jsou jen hlavičky (názvy funkci atd), pro skompilování se musí přidat i binární kód knihovny (ať už statické - přidá se kód do výsledného souboru, nebo dynamické - přidají se jen odkazy do knihovny).
    We will destroys the Christian's legion ... and the cross, will be inverted
    Pavel Stárek avatar 23.5.2011 10:56 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: LibFTDI: Undefined reference
    Include jen řekne preprocesoru a compileru jak vypadají ty funkce popřípadě různé datové struktury, konstanty atd. Parametr -lftdi řekne linkeru s čím vším má program slinkovat, a parametr -L/nejaky/adresar ještě může upřesnit, kde všude má linker hledat.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.

    Založit nové vlákno • Nahoru

    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.