i2c (było Re: [ac] DirectFB.spec -> matrox_maven.c:311: [...])
Jakub Bogusz
qboosh w pld-linux.org
Wto, 11 Lis 2003, 19:55:13 CET
On Tue, Nov 11, 2003 at 06:27:53PM +0100, Mateusz Korniak wrote:
> Niestety wywala się, co nie pozawala zbudować links2, czy też xine-lib ->
> kdemultimedia.
> Ja niestety kompletnie nie mam pojęcia o co może chodzić ...
>
> athlon-pld-linux-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include
> -I../../src -I/usr/include/libmpeg3 -D_REENTRANT -Wall -O2 -march=athlon
> -DFUSION_FAKE -Werror-implicit-function-declaration -MT matrox_maven.lo -MD
> -MP -MF .deps/matrox_maven.Tpo -c matrox_maven.c -fPIC -DPIC -o
> .libs/matrox_maven.o
> In file included from matrox_maven.c:32:
> /usr/include/linux/i2c-dev.h:29:40: missing binary operator before token "("
> matrox_maven.c: In function `maven_write_byte':
> matrox_maven.c:63: error: implicit declaration of function
> `i2c_smbus_write_byte_data'
> matrox_maven.c: In function `maven_write_word':
> matrox_maven.c:80: error: implicit declaration of function
> `i2c_smbus_write_word_data'
> matrox_maven.c: In function `maven_open':
> matrox_maven.c:311: error: `I2C_SLAVE' undeclared (first use in this function)
> matrox_maven.c:311: error: (Each undeclared identifier is reported only once
> matrox_maven.c:311: error: for each function it appears in.)
> matrox_maven.c: In function `maven_init':
> matrox_maven.c:450: error: `I2C_SLAVE' undeclared (first use in this function)
O kompletnie zwalone nagłówki i2c na builderach :/
(takie "usprawnienie" w i2c 2.8.x)
W <linux/i2c-dev.h> jest niepotrzebna definicja, za to używająca makra
<linux/version.h>, którego nie włącza.
Za to w <linux/i2c.h> brakuje #ifdef __KERNEL__ dla większej części
pliku... albo ten plik w ogóle jest tylko dla jądra, a kilka definicji
powinno być udostępnianych gdzie indziej (np. <linux/i2c-dev.h>).
Ogólnie te nagłówki nie nadają się do użytku w userspace.
W redhatowych kernheaders i2c.h jest oczyszczone (albo w starszej
wersji?).
--
Jakub Bogusz http://cyber.cs.net.pl/~qboosh/
Więcej informacji o liście dyskusyjnej pld-kernel