c++ linux gcc boost gcc4.9

c++ - versión `CXXABI_1.3.8 ''no encontrada(requerida por...)



linux gcc (1)

GCC 4.9 presenta una versión más nueva de C ++ ABI que tu sistema, libstdc ++, por lo que necesitas decirle al cargador que use esta versión más nueva de la biblioteca al agregar esa ruta a LD_LIBRARY_PATH . Lamentablemente, no puedo decirle directamente dónde está ubicado el libstdc ++, por lo tanto, para su instalación de GCC 4.9, ya que esto depende de cómo haya configurado GCC. Entonces necesitas algo en el estilo de:

export LD_LIBRARY_PATH=/home/user/lib/gcc-4.9.0/lib:/home/user/lib/boost_1_55_0/stage/lib:$LD_LIBRARY_PATH

Tenga en cuenta que la ruta real puede ser diferente (puede haber algún subdirectorio oculto debajo, como `x86_64-unknown-linux-gnu / 4.9.0'' o similar).

Cuando ejecuto mi programa después de una compilación, aparece el siguiente error:

./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versión CXXABI_1.3.8'' not found (required by ./prog) ./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version GLIBCXX_3.4.19 ''no encontrada (requerida por ./prog) ./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versión `GLIBCXX_3.4.20'' no encontrada ( requerido por /home/arman/lib/boost_1_55_0/stage/lib/libboost_serialization.so.1.55.0)

Tengo ambos boost 1.55.0 y gcc 4.9.0 instalados en ~/lib/boost_1_55_0 y ~/lib/gcc-4.9.0 respectivamente, y supongo que es por eso que tengo problemas, pero no estoy seguro acerca de cómo arreglarlo.

my ~/.profile contiene la siguiente línea:

exportar LD_LIBRARY_PATH = / home / user / lib / boost_1_55_0 / stage / lib: $ LD_LIBRARY_PATH