2012-05-13 3 views
0

Je suis la compilation croisée à un système embarqué de bras et recevant une erreur que j'ai des questions au sujet de. Voici l'erreur:Rechercher ld pour trouver la bibliothèque

[ 19%] Built target cxjpeg-6b 
Linking CXX shared library /home/botbear/JAUS++-2.110519- src/libraries/jaus++/2.0/lib/libcxutils.so 
/home/botbear/openwrt/trunk/staging_dir/toolchain-arm_v6k_gcc-linaro_uClibc- 0.9.32_eabi/lib/gcc/arm-openwrt-linux-uclibcgnueabi/4.5.4/../../../../arm-openwrt-linux- uclibcgnueabi/bin/ld: cannot find -lpng 
collect2: ld returned 1 exit status 
make[2]: *** [/home/botbear/JAUS++-2.110519-src/libraries/jaus++/2.0/lib/libcxutils.so]  Error 1 
make[1]: *** [libcxutils/CxUtils/libcxutils/CMakeFiles/cxutils.dir/all] Error 2 
make: *** [all] Error 2 

Comme vous pouvez le voir, l'éditeur de liens recherche une bibliothèque statique appelée 'libpng'. En plus de libpng lib., La commande dans le fichier sous-make en utilisant le commutateur -l pour lier aux bibliothèques suivantes: -lpng -lz -lX11 -lXtst -lpthread -Wl. Toutes les bibliothèques (libpng, libz, libX11, etc) sont dans mon répertoire/usr/lib/host mais ma chaîne d'outils cible n'a pas les bibliothèques. Ma question est de savoir si je recompile manuellement les bibliothèques avec mon compilateur cible cela résoudra-t-il mon problème? Ou je vais trouver et installer des paquets pour chacune des bibliothèques de ma plate-forme cible.

Merci d'avance.

+0

probablement. Mais recompiler X11 n'est pas une tâche triviale. –

+0

vous devez avoir toutes les dépendances compilées pour votre architecture cible. – juanchopanza

Répondre

0

Vous semblez compiler pour la cible, vous avez donc besoin de bibliothèques cibles. Soit compilé par vous-même ou fourni par l'environnement de développement de la chaîne d'outils (si vous en avez un). Ce dernier vous évite généralement des maux de tête (compilation croisée et définition des chemins si nécessaire).

Je vois que vous utilisez la chaîne d'outils openwrt. Openwrt semble avoir libpng comme un paquet. J'irais avec ça si possible.

+0

Merci! Je vais chercher des paquets lib. –

Questions connexes