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 05:55 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 4
    včera 05:22 | Komunita

    Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.

    Ladislav Hagara | Komentářů: 3
    včera 04:00 | Humor

    Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 3
    27.3. 13:00 | Komunita

    Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.

    Ladislav Hagara | Komentářů: 9
    27.3. 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.

    Ladislav Hagara | Komentářů: 1
    27.3. 02:22 | Komunita Ladislav Hagara | Komentářů: 11
    26.3. 23:22 | Komunita

    Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.

    Ladislav Hagara | Komentářů: 3
    26.3. 22:33 | Nová verze

    Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 1
    26.3. 11:33 | Zajímavý článek

    Chris Down v obsáhlém článku „vyvrací mýty o zswap a zram“, vysvětluje, co vlastně dělají a jaké jsou mezi nimi rozdíly. Doporučuje vyhýbat se zram na serveru a bez OOM.

    |🇵🇸 | Komentářů: 1
    26.3. 11:22 | IT novinky

    Porota v Los Angeles shledala firmy Google a Meta odpovědnými v přelomovém soudním sporu, který se týká závislosti na sociálních sítích; firmy musí zaplatit odškodné tři miliony dolarů (63,4 milionu Kč). Společnosti, které s verdiktem nesouhlasí, čelily obvinění, že své sociální sítě a platformy záměrně navrhly tak, aby si na nich děti vypěstovaly závislost. Porota došla k závěru, že technologické společnosti při navrhování a

    … více »
    Ladislav Hagara | Komentářů: 15
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1171 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: i2c_smbus_read_byte_data

    Konqui avatar 2.12.2007 09:12 Konqui | skóre: 18 | blog: Konqui | Rožnov pod Radhoštěm
    i2c_smbus_read_byte_data
    Přečteno: 686×
    Zdravím.mám problém při kompilování nasledujícího kousku kódu
    /* compass.c
    #include  <errno.h>
    #include  <string.h>
    #include  <stdio.h>
    #include  <stdlib.h>
    #include  <unistd.h>
    #include  <fcntl.h>
    #include  <linux/i2c-dev.h>
    
    /* Note that the documentation for the compass states its address as 0xC0.
     * However, this includes the low bit which specifies read or write.
     * Linux i2c does not include this bit in this address, so the actual
     * address is 0xC0 shifted down, 0x60.
     */
    #define CMPS03_ADDR 0x60
    
    /* The important registers on the compass. Internal/test registers omitted. */
    #define CMPS03_SOFTWARE_REVISION 0x0
    #define CMPS03_BEARING_BYTE 0x1
    #define CMPS03_BEARING_WORD_HIGH 0x2
    #define CMPS03_BEARING_WORD_LOW 0x3
    #define CMPS03_CALIBRATE_CMD 0xF
    
    int main(int argc, char *argv[]) {
       char *end;
       int res,file;
       int e1;
       char filename[20] ;
       long funcs;
        
       int heading_byte, heading_word_h, heading_word_l;
       int bearing_long, bearing_degrees;
       
       sprintf(filename,"/dev/i2c-0");
       if ((file = open(filename,O_RDWR)) < 0) {
         e1 = errno;
         if (e1 != ENOENT) {
           fprintf(stderr,"Error: Could not open file '%s' : %sn",
                   filename,strerror(e1));
           if(e1 == EACCES)
             fprintf(stderr,"Run as root?n");
         }
       } 
       
       
       /* Get software revision number */
       res = i2c_smbus_read_byte_data(file, CMPS03_SOFTWARE_REVISION);
       if (res < 0) {
         printf("Cannot read software revision leveln");
       } else {
         printf("Software revision level: %02xn", res);
       }
       
       /* Loop and read from the compass. */
       while (1) {
         /* The heading byte is 0-255 for the 360 degrees. */
         heading_byte = i2c_smbus_read_byte_data(file, CMPS03_BEARING_BYTE);
         if (heading_byte < 0) { printf("Error reading from compass."); exit(1);}
         
         /* The high resolution heading is given in two registers, and is 10 * the 
          * heading in degrees, ie 359.9 degrees reads as 3599. */
         heading_word_h = i2c_smbus_read_byte_data(file, CMPS03_BEARING_WORD_HIGH);
         if (heading_word_h < 0) { printf("Error reading from compass."); exit(1);}
         heading_word_l = i2c_smbus_read_byte_data(file, CMPS03_BEARING_WORD_LOW);
         if (heading_word_l < 0) { printf("Error reading from compass."); exit(1);}
         
         /* Combine the two bytes, and get the heading in degrees. */
         bearing_long = heading_word_h * 256 + heading_word_l;
         bearing_degrees = bearing_long / 10;
         
         printf("Bearing: %d \n", bearing_degrees);
         
         /* Wait for a while. */
         usleep(200000);
       }
    }
    
    Kompilace vyhodí vždy tyto chyby:
    [honza@AMD2000 ~]$ cc i2c.c
    i2c.c:97:2: warning: no newline at end of file
    /tmp/ccNQKa9S.o: In function `main':
    i2c.c:(.text+0xbe): undefined reference to `i2c_smbus_read_byte_data'
    i2c.c:(.text+0xfb): undefined reference to `i2c_smbus_read_byte_data'
    i2c.c:(.text+0x12f): undefined reference to `i2c_smbus_read_byte_data'
    i2c.c:(.text+0x163): undefined reference to `i2c_smbus_read_byte_data'
    collect2: ld returned 1 exit status
    
    Nevíte někdo co s tím?
    Open/save dialogy z GTK+ jsou nejkřiklavější ukázkou toho nejdebilnějšího software, co vůbec může existovat.

    Odpovědi

    2.12.2007 20:06 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: i2c_smbus_read_byte_data
    No chybí tě deklarace funkce "i2c_smbus_read_byte_data" takže ti asi chybí nějakej hlavičkový soubor, nebo používáš špatnou knihovnu kde se ta funkce jmenuje jinak.
    2.12.2007 20:10 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: i2c_smbus_read_byte_data
    PS. Nemá tam být include <linux/i2c.h>
    e.lisak avatar 2.12.2007 22:22 e.lisak | skóre: 23
    Rozbalit Rozbalit vše Re: i2c_smbus_read_byte_data
    podle te posledni radky to vypada spise na chybejici knihovny
    (collect2: ld returned 1 exit status)

    zkuste pridat parametr -li2c (nebo neco v tom smyslu - pridani i2c knihovny)

    Konqui avatar 5.12.2007 09:15 Konqui | skóre: 18 | blog: Konqui | Rožnov pod Radhoštěm
    Rozbalit Rozbalit vše Re: i2c_smbus_read_byte_data
    Při přidání parametru cc -li2c řekne, že daný parametr nezná.Nemáte nějaké jiné nápady?
    Open/save dialogy z GTK+ jsou nejkřiklavější ukázkou toho nejdebilnějšího software, co vůbec může existovat.

    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.