Portál AbcLinuxu, 10. května 2025 02:35

Dotaz: __le32 + __le16 >> undeclared (first use in this function )

19.8.2006 22:10 bluewave65 | skóre: 6
__le32 + __le16 >> undeclared (first use in this function )
Přečteno: 153×
Odpovědět | Admin
Ahoj lidi,

snazim se tu prelozit uvc ( driver pro webcam ) a pri prekladu mne to vyblije problemy s tim ze nemam definovanou tuhle funkci

Vsechny hlavickove soubory jsou ok a k dispozici,

Jedine k cemu jsem se propracoval bylo to ze tyhle funkce maji neco spolecneho s ext ......

Nenakopne mne nekdo spravnym smerem please, at to muzu prelozit ?

Diky Dave
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

20.8.2006 00:05 finn | skóre: 43 | blog: finnlandia | 49° 44´/13° 22´
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
Odpovědět | | Sbalit | Link | Blokovat | Admin
__le32 a __le16 nejsou funkce, ale datové typy, deklarované ve zdrojácích jádra (include/linux/types.h). Kde je chyba sice nevím, ale zkontroluj, jestli ten ovladač nepotřebuje mít nainstalované zdrojáky jádra, jestli máš linux-headers...
Užívej dne – možná je tvůj poslední.
20.8.2006 00:18 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
jo jasne ze mam zdrojaky presne tam kde to potrebuje.......

dave
kozzi avatar 20.8.2006 00:23 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no a ses si jistej ze sedi verze jadra.
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
20.8.2006 00:24 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
Kouknul jsem na obsah types.h, ale nikde tu ty datove typy nemuzu najit.

Jedna se o jadro 2.6.8-2

....

dave
kozzi avatar 20.8.2006 00:26 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
moc stary jadro hod jsem obsah toho souboru types.h
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
20.8.2006 00:26 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no kdyz se kuknu do types.h z jadra 2.6.19 tak to tam je ........ sakra co s tim ? :(

dave
kozzi avatar 20.8.2006 00:28 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no jadro 2.6.19 neexistuje :-D , ale to je jedno hod jsem bsah toho types.h jinak ti nepomuzu
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
20.8.2006 00:30 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
neda se to sem hodit protoze mne to pise ze znacka linux config blablabla, se neda pouzit ..... atd .......

to bych to musel cely editovat ........

muzu ti to poslat na mail ???
20.8.2006 00:31 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
ja myslel 2.6.16, nejak mi to ujelo
20.8.2006 00:34 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
uz jsem ti to poslal ......

diky za hlp
kozzi avatar 20.8.2006 00:38 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no vlozit by to jsem slo jen by jsi musel ubrat par prvnich radku kde je #include sipka vlevo blablabla sipka vpravo
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
kozzi avatar 20.8.2006 00:40 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no a proc vlastne pouzivas tak stary jadro co to je za distro debian? Jo a zatim mi nic nedošlo
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
20.8.2006 00:44 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
protoze mi to ten tvuj mail server odmita :(

nemas nejaky jiny mail ?

protoze jsem se jeste nedokopal zmenit to distribucni za neco novejsiho ........ :)

dave
20.8.2006 00:45 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
#ifndef __KERNEL_STRICT_NAMES

typedef __u32 __kernel_dev_t;

typedef __kernel_fd_set fd_set; typedef __kernel_dev_t dev_t; typedef __kernel_ino_t ino_t; typedef __kernel_mode_t mode_t; typedef __kernel_nlink_t nlink_t; typedef __kernel_off_t off_t; typedef __kernel_pid_t pid_t; typedef __kernel_daddr_t daddr_t; typedef __kernel_key_t key_t; typedef __kernel_suseconds_t suseconds_t; typedef __kernel_timer_t timer_t; typedef __kernel_clockid_t clockid_t; typedef __kernel_mqd_t mqd_t;

#ifdef __KERNEL__ typedef __kernel_uid32_t uid_t; typedef __kernel_gid32_t gid_t; typedef __kernel_uid16_t uid16_t; typedef __kernel_gid16_t gid16_t;

#ifdef CONFIG_UID16 /* This is defined by include/asm-{arch}/posix_types.h */ typedef __kernel_old_uid_t old_uid_t; typedef __kernel_old_gid_t old_gid_t; #endif /* CONFIG_UID16 */

/* libc5 includes this file to define uid_t, thus uid_t can never change * when it is included by non-kernel code */ #else typedef __kernel_uid_t uid_t; typedef __kernel_gid_t gid_t; #endif /* __KERNEL__ */

#if defined(__GNUC__) && !defined(__STRICT_ANSI__) typedef __kernel_loff_t loff_t; #endif

/* * The following typedefs are also protected by individual ifdefs for * historical reasons: */ #ifndef _SIZE_T #define _SIZE_T typedef __kernel_size_t size_t; #endif

#ifndef _SSIZE_T #define _SSIZE_T typedef __kernel_ssize_t ssize_t; #endif

#ifndef _PTRDIFF_T #define _PTRDIFF_T typedef __kernel_ptrdiff_t ptrdiff_t; #endif

#ifndef _TIME_T #define _TIME_T typedef __kernel_time_t time_t; #endif

#ifndef _CLOCK_T #define _CLOCK_T typedef __kernel_clock_t clock_t; #endif

#ifndef _CADDR_T #define _CADDR_T typedef __kernel_caddr_t caddr_t; #endif

/* bsd */ typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long;

/* sysv */ typedef unsigned char unchar; typedef unsigned short ushort; typedef unsigned int uint; typedef unsigned long ulong;

#ifndef __BIT_TYPES_DEFINED__ #define __BIT_TYPES_DEFINED__

typedef __u8 u_int8_t; typedef __s8 int8_t; typedef __u16 u_int16_t; typedef __s16 int16_t; typedef __u32 u_int32_t; typedef __s32 int32_t;

#endif /* !(__BIT_TYPES_DEFINED__) */

typedef __u8 uint8_t; typedef __u16 uint16_t; typedef __u32 uint32_t;

#if defined(__GNUC__) && !defined(__STRICT_ANSI__) typedef __u64 uint64_t; typedef __u64 u_int64_t; typedef __s64 int64_t; #endif

/* * The type used for indexing onto a disc or disc partition. * If required, asm/types.h can override it and define * HAVE_SECTOR_T */ #ifndef HAVE_SECTOR_T typedef unsigned long sector_t; #endif

/* * The type of an index into the pagecache. Use a #define so asm/types.h * can override it. */ #ifndef pgoff_t #define pgoff_t unsigned long #endif

#endif /* __KERNEL_STRICT_NAMES */

/* * Below are truly Linux-specific types that should never collide with * any application/library that wants linux/types.h. */

struct ustat { __kernel_daddr_t f_tfree; __kernel_ino_t f_tinode; char f_fname[6]; char f_fpack[6]; };

#endif /* _LINUX_TYPES_H */
kozzi avatar 20.8.2006 00:53 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no mail by mel sedet ale zkontroluji to. takze musis nahradit vsechny vyskyty __le16 a __le32 za uint16_t a za uint32_t. takze proste otevres soubor kde ti to pise ten error a __le16 nahradis za uint16_t a __le32 za uint32_t
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
20.8.2006 00:55 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
diky, pokusim se, snad to pak prelozim ok... dnesk uz jdu spat cus

dave
22.8.2006 17:50 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
tak jsem to prejmenoval, ale mam tu jeste nejaky chyby, jestli mi s nima nekdo pomuze buydu opravdu rad:


linux:/usr/src/linux-uvc# make
Building USB Video Class driver...
make[1]: Entering directory `/usr/src/kernel-headers-2.6.8-2-386'
  CC [M]  /usr/src/linux-uvc/uvcvideo.o
/usr/src/linux-uvc/uvcvideo.c: In function `uvc_v4l2_release':
/usr/src/linux-uvc/uvcvideo.c:2383: error: too many arguments to function `kref_put'
/usr/src/linux-uvc/uvcvideo.c: In function `uvc_v4l2_do_ioctl':
/usr/src/linux-uvc/uvcvideo.c:2421: error: structure has no member named `product'
/usr/src/linux-uvc/uvcvideo.c:2422: error: structure has no member named `product'
/usr/src/linux-uvc/uvcvideo.c: In function `uvc_v4l2_mmap':
/usr/src/linux-uvc/uvcvideo.c:2764: warning: implicit declaration of function `remap_pfn_range'
/usr/src/linux-uvc/uvcvideo.c: In function `uvc_probe':
/usr/src/linux-uvc/uvcvideo.c:3785: error: too few arguments to function `kref_init'
/usr/src/linux-uvc/uvcvideo.c:3797: error: structure has no member named `product'
/usr/src/linux-uvc/uvcvideo.c:3797: error: structure has no member named `product'
/usr/src/linux-uvc/uvcvideo.c:3819: error: too many arguments to function `kref_put'
/usr/src/linux-uvc/uvcvideo.c: In function `uvc_disconnect':
/usr/src/linux-uvc/uvcvideo.c:3848: error: too many arguments to function `kref_put'
make[2]: *** [/usr/src/linux-uvc/uvcvideo.o] Error 1
make[1]: *** [_module_/usr/src/linux-uvc] Error 2
make[1]: Leaving directory `/usr/src/kernel-headers-2.6.8-2-386'
make: *** [uvcvideo] Error 2

tot cely vystup

dave
kozzi avatar 22.8.2006 17:53 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
problem je vtom jak jsem psal že mas moc stary jadro. Oprava toho ovladace tak aby fungoval stouto verzi by byl asi moc velký boj takže jediný co ti zbývá je stáhnout si novjejší verzi nejlépe tu co je podporována tím ovladačem. A nebo zkusit zehnat starou verzi ovladace ktera podporuje tvoje jadro
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
22.8.2006 18:02 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
a co kdybych to prelozil pod jinym jadrem a nasral to do toho "starsiho" ?

nechci zrovna prekopavat cely system kvuli 1 posranemu ovladaci ....

Dave
kozzi avatar 22.8.2006 18:06 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
proc prekopavat cely system stacilo by jen udev a novy jadro nic vic to neni prekopani systemu ale jeho jadra. No a pokud to zkompilujes pod jinym jadrem tak ti to nedovoli ten modul nahrat a kdyz to potlacis prikazem force tak ti vypese neznamy symbol a podobny zvasty. Asi nejsi programator že? jinak by jsi věděl že pokud to tvoje jádro nmá některý funkce a struktury a v tom ovladači byb byly tak to spadne. Ono se to ani nenačte opravdu jak jsem psal vis bud novy jadro to doporucuju jelikoz z tak starym jadrem budes mit vic problemu.
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
22.8.2006 18:14 bluewave65 | skóre: 6
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
udev mam

predpokladam ze muzu nahrat config z toho jadra co tedka mam v systemu do toho noveho ( aby to nastaveni vcetne modulu bylo stejne ) a pak jen prelozim jadro a nainstaluju a melo by to byt ok ?

No zkusim se do toho pustit :)

Linux mne fascinuje v tomhle, kvuli 1 kravine prekopat 100 sracek ale co se da delat :))

p.s.: s tim prekladem na jinem jadru > nekdy to funguje .... aspon podle lidi.... viz treba pwc driver

p.s.2: programator sice jsem ale takovy svatecni :) a ne v linuxu ... linux mam jen jako server ....

mirek
kozzi avatar 22.8.2006 18:22 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no to ze to funguje je spis zahada k spravne funkci by ty jadra museli byt prakticky totozna a skompilovana s prakticky stejnou verzo gcc. No ten .config muzes pouzit ale nezapomen pak zadat pred kompilaci make menuconfig ono to nacte tu konfiguraci a dat ulozit popripade si tam z necim pohrat :-D. A to neni pravda ze kvuli jedne veci musis prekopat 100 sracek. Staci jedna a to je jadro :-D. A pokud by jsi nemel tak starou distribuci tak by to nebyl problem
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
22.8.2006 19:28 finn | skóre: 43 | blog: finnlandia | 49° 44´/13° 22´
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
Predpokladam ze muzu nahrat config z toho jadra co tedka mam v systemu do toho noveho (aby to nastaveni vcetne modulu bylo stejne) a pak jen prelozim jadro a nainstaluju a melo by to byt ok?
Ano, jen pak místo make menuconfig použiješ make oldconfig.
Užívej dne – možná je tvůj poslední.
kozzi avatar 22.8.2006 19:36 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
Rozbalit Rozbalit vše Re: __le32 + __le16 >> undeclared (first use in this function )
no to neni presne ani pravdive
Linux je jako mušketýři "jeden za všechny, všichni za jednoho"

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.