absolinux

Aller à la page : précédente 1 2 

Sujet : compilation de udev-181
posté par anna 12 messages     le  01-08-2012  à  10:52citer
bonjour,
j'ai tenté tout les propositions, malheureusement l'erreur reste toujours voilà ce que le make V=1 affiche(concernant udev-builtin-blkid.c):
============================
gcc -DHAVE_CONFIG_H -I.  -include ./config.h -I./src -DSYSCONFDIR=\""/etc"\" -DPKGLIBEXECDIR=\""/lib/udev"\" -DFIRMWARE_PATH="\"/lib/firmware/updates/\", \"/lib/firmware/\"" -DUSB_DATABASE=\"no\" -DPCI_DATABASE=\"no\"  -I/usr/include/blkid -I/usr/include -g -O2 -MT src/src_udevadm-udev-builtin.o -MD -MP -MF src/.deps/src_udevadm-udev-builtin.Tpo -c -o src/src_udevadm-udev-builtin.o `test -f 'src/udev-builtin.c' || echo './'`src/udev-builtin.c
mv -f src/.deps/src_udevadm-udev-builtin.Tpo src/.deps/src_udevadm-udev-builtin.Po
gcc -DHAVE_CONFIG_H -I.  -include ./config.h -I./src -DSYSCONFDIR=\""/etc"\" -DPKGLIBEXECDIR=\""/lib/udev"\" -DFIRMWARE_PATH="\"/lib/firmware/updates/\", \"/lib/firmware/\"" -DUSB_DATABASE=\"no\" -DPCI_DATABASE=\"no\"  -I/usr/include/blkid -I/usr/include -g -O2 -MT src/src_udevadm-udev-builtin-blkid.o -MD -MP -MF src/.deps/src_udevadm-udev-builtin-blkid.Tpo -c -o src/src_udevadm-udev-builtin-blkid.o `test -f 'src/udev-builtin-blkid.c' || echo './'`src/udev-builtin-blkid.c
src/udev-builtin-blkid.c:84:30: error: unknown type name 'blkid_probe'
src/udev-builtin-blkid.c: In function 'builtin_blkid':
src/udev-builtin-blkid.c:122:9: error: unknown type name 'blkid_probe'
src/udev-builtin-blkid.c:160:17: error: 'BLKID_SUBLKS_LABEL' undeclared (first use in this function)
src/udev-builtin-blkid.c:160:17: note: each undeclared identifier is reported only once for each function it appears in
src/udev-builtin-blkid.c:160:38: error: 'BLKID_SUBLKS_UUID' undeclared (first use in this function)
src/udev-builtin-blkid.c:161:17: error: 'BLKID_SUBLKS_TYPE' undeclared (first use in this function)
src/udev-builtin-blkid.c:161:37: error: 'BLKID_SUBLKS_SECTYPE' undeclared (first use in this function)
src/udev-builtin-blkid.c:162:17: error: 'BLKID_SUBLKS_USAGE' undeclared (first use in this function)
src/udev-builtin-blkid.c:162:38: error: 'BLKID_SUBLKS_VERSION' undeclared (first use in this function)
src/udev-builtin-blkid.c:165:58: error: 'BLKID_FLTR_NOTIN' undeclared (first use in this function)
src/udev-builtin-blkid.c:165:76: error: 'BLKID_USAGE_RAID' undeclared (first use in this function)
make[2]: *** [src/src_udevadm-udev-builtin-blkid.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

===================================================

et voilà le fichier blkid.h:

=========================
/*
* blkid.h - Interface for libblkid, a library to identify block devices
*
* Copyright (C) 2001 Andreas Dilger
* Copyright (C) 2003 Theodore Ts'o
*
* %Begin-Header%
* This file may be redistributed under the terms of the
* GNU Lesser General Public License.
* %End-Header%
*/

#ifndef _BLKID_BLKID_H
#define _BLKID_BLKID_H

#include <sys/types.h>
#include <blkid/blkid_types.h>

#ifdef __cplusplus
extern "C" {
#endif

#define BLKID_VERSION  "1.0.0"
#define BLKID_DATE      "12-Feb-2003"

typedef struct blkid_struct_dev *blkid_dev;
typedef struct blkid_struct_cache *blkid_cache;
typedef __s64 blkid_loff_t;

typedef struct blkid_struct_tag_iterate *blkid_tag_iterate;
typedef struct blkid_struct_dev_iterate *blkid_dev_iterate;

/*
* Flags for blkid_get_dev
*
* BLKID_DEV_CREATE    Create an empty device structure if not found
*                      in the cache.
* BLKID_DEV_VERIFY    Make sure the device structure corresponds
*                      with reality.
* BLKID_DEV_FIND      Just look up a device entry, and return NULL
*                      if it is not found.
* BLKID_DEV_NORMAL    Get a valid device structure, either from the
*                      cache or by probing the device.
*/
#define BLKID_DEV_FIND          0x0000
#define BLKID_DEV_CREATE        0x0001
#define BLKID_DEV_VERIFY        0x0002
#define BLKID_DEV_NORMAL        (BLKID_DEV_CREATE | BLKID_DEV_VERIFY)

/* cache.c */
extern void blkid_put_cache(blkid_cache cache);
extern int blkid_get_cache(blkid_cache *cache, const char *filename);
extern void blkid_gc_cache(blkid_cache cache);

/* dev.c */
extern const char *blkid_dev_devname(blkid_dev dev);

extern blkid_dev_iterate blkid_dev_iterate_begin(blkid_cache cache);
extern int blkid_dev_set_search(blkid_dev_iterate iter,
                                char *search_type, char *search_value);
extern int blkid_dev_next(blkid_dev_iterate iterate, blkid_dev *dev);
extern void blkid_dev_iterate_end(blkid_dev_iterate iterate);

/* devno.c */
extern char *blkid_devno_to_devname(dev_t devno);
/* devname.c */
extern int blkid_probe_all(blkid_cache cache);
extern int blkid_probe_all_new(blkid_cache cache);
extern blkid_dev blkid_get_dev(blkid_cache cache, const char *devname,
                              int flags);

/* getsize.c */
extern blkid_loff_t blkid_get_dev_size(int fd);

/* probe.c */
int blkid_known_fstype(const char *fstype);
extern blkid_dev blkid_verify(blkid_cache cache, blkid_dev dev);

/* read.c */

/* resolve.c */
extern char *blkid_get_tag_value(blkid_cache cache, const char *tagname,
                                      const char *devname);
extern char *blkid_get_devname(blkid_cache cache, const char *token,
                              const char *value);

/* tag.c */
extern blkid_tag_iterate blkid_tag_iterate_begin(blkid_dev dev);
extern int blkid_tag_next(blkid_tag_iterate iterate,
                              const char **type, const char **value);
extern void blkid_tag_iterate_end(blkid_tag_iterate iterate);
extern int blkid_dev_has_tag(blkid_dev dev, const char *type,
                            const char *value);
extern blkid_dev blkid_find_dev_with_tag(blkid_cache cache,
                                        const char *type,
                                        const char *value);
extern int blkid_parse_tag_string(const char *token, char **ret_type,
                                  char **ret_val);

/* version.c */
extern int blkid_parse_version_string(const char *ver_string);
extern int blkid_get_library_version(const char **ver_string,
                                    const char **date_string);

#ifdef __cplusplus
}
#endif

#endif /* _BLKID_BLKID_H */

===============
merci d'avance
   
posté par Myou 99 messages     le  01-08-2012  à  12:47citer
re..

hummm

et le contenu de blkid_types.h ?

J'ai pas sous la main une version 7.1 construite (juste une 7.0 et une svn).

Mais dans ton fichier blkid.h il n'y a effectivement pas les variables BLKID_SUBLKS_* (mais elles doivent être dans blkid_types.h mais à vérifier).


Denis

posté par anna 12 messages     le  01-08-2012  à  13:23citer
re ..

root:/# echo $PATH
/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin


le contenu de blkid_types.h:
======================================

/*
* If linux/types.h is already been included, assume it has defined
* everything we need.  (cross fingers)  Other header files may have
* also defined the types that we need.
*/
#if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \
        !defined(_EXT2_TYPES_H))
#define _BLKID_TYPES_H

#define __S8_TYPEDEF __signed__ char
#define __U8_TYPEDEF unsigned char
#define __S16_TYPEDEF __signed__ short
#define __U16_TYPEDEF unsigned short
#define __S32_TYPEDEF __signed__ int
#define __U32_TYPEDEF unsigned int
#define __S64_TYPEDEF __signed__ long long
#define __U64_TYPEDEF unsigned long long

#ifdef __U8_TYPEDEF
typedef __U8_TYPEDEF __u8;
#else
typedef unsigned char __u8;
#endif

#ifdef __S8_TYPEDEF
typedef __S8_TYPEDEF __s8;
#else
typedef signed char __s8;
#endif

#ifdef __U16_TYPEDEF
typedef __U16_TYPEDEF __u16;
#else
#if (4 == 2)
typedef unsigned int    __u16;
#else
#if (2 == 2)
typedef unsigned short  __u16;
#else
  ?==error: undefined 16 bit type
#endif /* SIZEOF_SHORT == 2 */
#endif /* SIZEOF_INT == 2 */
#endif /* __U16_TYPEDEF */

#ifdef __S16_TYPEDEF
typedef __S16_TYPEDEF __s16;
#else
#if (4 == 2)
typedef int            __s16;
#else
#if (2 == 2)
typedef short          __s16;
#else
  ?==error: undefined 16 bit type
#endif /* SIZEOF_SHORT == 2 */
#endif /* SIZEOF_INT == 2 */
#endif /* __S16_TYPEDEF */


#ifdef __U32_TYPEDEF
typedef __U32_TYPEDEF __u32;
#else
#if (4 == 4)
typedef unsigned int    __u32;
#else
#if (4 == 4)
typedef unsigned long  __u32;
#else
#if (2 == 4)
typedef unsigned short  __u32;
#else
?== error: undefined 32 bit type
#endif /* SIZEOF_SHORT == 4 */
#endif /* SIZEOF_LONG == 4 */
#endif /* SIZEOF_INT == 4 */
#endif /* __U32_TYPEDEF */

#ifdef __S32_TYPEDEF
typedef __S32_TYPEDEF __s32;
#else
#if (4 == 4)
typedef int            __s32;
#else
#if (4 == 4)
typedef long            __s32;
#else
#if (2 == 4)
typedef short          __s32;
#else
?== error: undefined 32 bit type
#endif /* SIZEOF_SHORT == 4 */
#endif /* SIZEOF_LONG == 4 */
#endif /* SIZEOF_INT == 4 */
#endif /* __S32_TYPEDEF */

#ifdef __U64_TYPEDEF
typedef __U64_TYPEDEF __u64;
#else
#if (4 == 8)
typedef unsigned int    __u64;
#else
#if (4 == 8)
typedef unsigned long  __u64;
#else
#if (8 == 8)
typedef unsigned long long      __u64;
#endif /* SIZEOF_LONG_LONG == 8 */
#endif /* SIZEOF_LONG == 8 */
#endif /* SIZEOF_INT == 8 */
#endif /* __U64_TYPEDEF */

#ifdef __S64_TYPEDEF
typedef __S64_TYPEDEF __s64;
#else
#if (4 == 8)
typedef int            __s64;
#else
#if (4 == 8)
typedef long            __s64;
#else
#if (8 == 8)
#if defined(__GNUC__)
typedef __signed__ long long    __s64;
#else
typedef signed long long        __s64;
#endif /* __GNUC__ */
#endif /* SIZEOF_LONG_LONG == 8 */
#endif /* SIZEOF_LONG == 8 */
#endif /* SIZEOF_INT == 8 */
#endif /* __S64_TYPEDEF */

#undef __S8_TYPEDEF
#undef __U8_TYPEDEF
#undef __S16_TYPEDEF
#undef __U16_TYPEDEF
#undef __S32_TYPEDEF
#undef __U32_TYPEDEF
#undef __S64_TYPEDEF
#undef __U64_TYPEDEF

#endif /* _*_TYPES_H */
=========================


posté par Myou 99 messages     le  01-08-2012  à  13:38citer
Le problème est la !!! Il manque des définitions dans ton fichier blkid.h ;o)

Je regarde ce soir pourquoi ton blkid.h (et blkid_types.h) n'est pas correct.

Denis

posté par anna 12 messages     le  01-08-2012  à  14:05citer
ok merci [smile]
posté par Myou 99 messages     le  01-08-2012  à  21:11citer
Je crois que je viens de trouver une autre piste ...

donc tu n'as pas le bon blkid.h (celui fournit par util-linux).

Il se trouve que e2fsprog fournit aussi une autre version de blkid. Normalement, elle n'est pas installée, car dans le configure de e2fsprog on passe  --disable-libblkid. Ne l'aurais tu pas oublié ???

Pour le savoir, tu peux regarder le début de ton config.log de e2fsprog, il doit y avoir les options du configure, si tu ne trouves pas, repasse ici le config.log de e2fsprog.

Si c'est bien ca, il faut réinstaller e2fsprog avec les bonnes options, et réinstaller util-linux pour avoir le bon fichier blkid.h.

Pas contre, il faut voir ce qui dépend de e2fsprog....en fait si c'est bien la bonne piste et que tu as fait une erreur dans le config de e2fsprog, je me renseigne sur ce qu'il faudra que tu réinstalles.

A+

Denis

Ps : j'espere que c'est la bonne explication ;o)

posté par anna 12 messages     le  01-08-2012  à  23:10citer
c'est bien la solution.
une réinstallation des paquets util-linux et e2fsprog.
merci beaucoup pour votre aide.
posté par Myou 99 messages     le  02-08-2012  à  07:08citer
Ouf ... on a trouvé la solution ;o)

Je pense que maintenant ta LFS sera bientôt fonctionnelle et que tu vas t'amuser avec ....

N'hésite pas à venir sur le canal IRC (sur freenode), il y a souvent du monde pour échanger sur tes expériences avec LFS.

A+

Denis


Aller à la page : précédente 1 2 



répondre

http://med4treat.top