2011-04-01 2 views
1

sur linux, autoconf 2.65, binutils 2.20.0. Je dois faire quelque chose comme ceci:autoconf vérifier la bibliothèque bfd à partir de binutils

AC_CHECK_HEADER([bfd.h], 
        [AC_DEFINE([HAVE_BFD_H])], 
        [AC_MSG_WARN([Header "bfd.h" from the binutils not found!])], 
    [[#ifdef HAVE_BFD_H 
    #include <bfd.h> 
    #endif]] 
    ) 
    AC_SEARCH_LIBS([bfd_openr], [bfd], 
       [AC_MSG_RESULT([OK, found libbfd])], 
[AC_MSG_ERROR([BFD library from the binutils package not found!])]) 

La deuxième vérification a échoué, probablement en raison de la dépendance à -lintl.

Quelqu'un peut-il me montrer comment le corriger? Merci beaucoup!

Crack

Répondre

1

Le 5ème argument AC_SEARCH_LIBS est une liste des bibliothèques à utiliser. Essayez:

 
AC_SEARCH_LIBS([bfd_openr], [bfd], [], [], [-lintl]) 

(je suis parti 3ème et 4ème arguments vide pour plus de clarté, et non comme une recommandation de changer.)

+0

J'ai essayé le 5ème argument, mais le contrôle toujours pas. Je ne suis pas sûr si intl est lié correctement ici. Quand j'ai fait 'AC_CHECK_LIB (intl, principal, LIBS =" - lintl $ LIBS ")' intl n'a pas été trouvé. D'autres idées? – Jus

+0

@Jus Si intl n'est pas trouvé, vous devez définir LDFLAGS. (par exemple, ./configure LDFLAGS = -L/path/to/lib, où /path/to/lib/lintl.so est la bibliothèque que vous souhaitez lier.) –

Questions connexes