URL: https://linuxfr.org/forums/linux-general/posts/compilation-de-alsa-lib-headers-de-linux-269 Title: Compilation de alsa-lib & headers de linux 2.6.9 Authors: Ph Husson Date: 2004年12月04日T19:40:42+01:00 Tags: Score: 0 Bjr à tous, Aujourd'hui un problème auquel je n'arrive pas à bout: La compilation de alsa-lib sur un système dont les en-têtes sont basés sur celle d'un noyau 2.6.9, mais j'ai droit à une belle erreur d'include sur little_endian.h pour faire simple: In file included from /usr/include/asm/byteorder.h:57, from fm.c:33: /usr/include/linux/byteorder/little_endian.h:43: error: parse error before "__cpu_to_le64p" /usr/include/linux/byteorder/little_endian.h: In function `__cpu_to_le64p': /usr/include/linux/byteorder/little_endian.h:45: error: `__le64' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h:45: error: (Each undeclared identifier is reported only once /usr/include/linux/byteorder/little_endian.h:45: error: for each function it appears in.) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:47: error: parse error before '*' token /usr/include/linux/byteorder/little_endian.h: In function `__le64_to_cpup': /usr/include/linux/byteorder/little_endian.h:49: error: `p' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:51: error: parse error before "__cpu_to_le32p" /usr/include/linux/byteorder/little_endian.h: In function `__cpu_to_le32p': /usr/include/linux/byteorder/little_endian.h:53: error: `__le32' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:55: error: parse error before '*' token /usr/include/linux/byteorder/little_endian.h: In function `__le32_to_cpup': /usr/include/linux/byteorder/little_endian.h:57: error: `p' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:59: error: parse error before "__cpu_to_le16p" /usr/include/linux/byteorder/little_endian.h: In function `__cpu_to_le16p': /usr/include/linux/byteorder/little_endian.h:61: error: `__le16' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:63: error: parse error before '*' token /usr/include/linux/byteorder/little_endian.h: In function `__le16_to_cpup': /usr/include/linux/byteorder/little_endian.h:65: error: `p' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:67: error: parse error before "__cpu_to_be64p" /usr/include/linux/byteorder/little_endian.h: In function `__cpu_to_be64p': /usr/include/linux/byteorder/little_endian.h:69: error: `__be64' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h:69: error: parse error before "__swab64p" /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:71: error: parse error before '*' token /usr/include/linux/byteorder/little_endian.h: In function `__be64_to_cpup': /usr/include/linux/byteorder/little_endian.h:73: error: `p' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:75: error: parse error before "__cpu_to_be32p" /usr/include/linux/byteorder/little_endian.h: In function `__cpu_to_be32p': /usr/include/linux/byteorder/little_endian.h:77: error: `__be32' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h:77: error: parse error before "__swab32p" /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:79: error: parse error before '*' token /usr/include/linux/byteorder/little_endian.h: In function `__be32_to_cpup': /usr/include/linux/byteorder/little_endian.h:81: error: `p' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:83: error: parse error before "__cpu_to_be16p" /usr/include/linux/byteorder/little_endian.h: In function `__cpu_to_be16p': /usr/include/linux/byteorder/little_endian.h:85: error: `__be16' undeclared (first use in this function) /usr/include/linux/byteorder/little_endian.h:85: error: parse error before "__swab16p" /usr/include/linux/byteorder/little_endian.h: At top level: /usr/include/linux/byteorder/little_endian.h:87: error: parse error before '*' token /usr/include/linux/byteorder/little_endian.h: In function `__be16_to_cpup': /usr/include/linux/byteorder/little_endian.h:89: error: `p' undeclared (first use in this function) Evidement suite à ca y a le fichier source d'origine qui est engueuler: fm.c: In function `snd_instr_fm_convert_to_stream': fm.c:81: error: `__be32' undeclared (first use in this function) fm.c:81: error: parse error before '{' token fm.c:81: error: parse error before ')' token fm.c:81: error: `__x' undeclared (first use in this function) fm.c: At top level: fm.c:81: error: parse error before ')' token fm.c:106: error: `put' undeclared here (not in a function) fm.c:106: warning: data definition has no type or storage class fm.c:107: warning: initialization makes pointer from integer without a cast fm.c:107: warning: data definition has no type or storage class fm.c:108: error: parse error before "return" J'ai essayé des magouilles dans tout les sens sans résultat alors dans les magouilles testées: Supprimer l'include <asm/byteorder.h> Il compil mais a la fin j'ai droit à certaines fonctions manquantes (fonctions qui sont definies en dur dans l'include...... c'est du propre) Copie collage de ce dont le fichier a besoin toujours sans succes Alors de ce que j'ai lu ca venait du fait que j'utilise les entetes d'un 2.6 au lieu de celles d'un 2.4, mais j'aimerais tant que possible rester en 2.6 Et de preference (un peu moins forte la preference la) ne pas avoir à modifier l'en tete incriminée. Merci d'avance :) PS:Y a pas de section LFS? rolala

AltStyle によって変換されたページ (->オリジナル) /