2017-08-08 1 views
0

J'utilise ubuntu 17.04 pour compiler le programme tensorflow C++ lié à alexnet qui utilise libpng.erreur libpng dans l'application compilée par bazel

avertissement libpng: L'application a été compilé avec png.h de libpng-1.6.23 avertissement libpng: L'application est en cours d'exécution avec png.c de libpng-1.2.53 erreur libpng: Incompatible version libpng dans l'application et la bibliothèque

Lorsque j'exécute le programme, j'obtiens une erreur de libpng non compatible et le programme s'arrête avec un défaut de segmentation.

Quelle est la raison derrière cela et comment puis-je le résoudre.

Répondre

0

Il semble que vous ayez compilé votre application avec libpng-1.6.23 et lors de l'exécution, votre application a essayé d'utiliser libpng-1.2.53. Les deux versions ne sont pas compatibles, vous obtenez donc un segfault.

Il y a deux possibilités:

  • Si vous utilisez votre programme sur la même machine que vous construisez, vous avez deux versions de libpng installées. Utilisez un outil (comme slocate) pour trouver les versions et désinstallez l'une d'entre elles.
  • Si vous exécutez votre programme sur une machine différente de celle sur laquelle vous avez construit. Mettez à niveau libpng vers la version 1.6.23 sur ces ordinateurs.