Acabei de instalar o gcc 7 em uma pasta arbitrária. Consigo compilar usando o caminho completo para a pasta bin da minha nova instalação do gcc 7, mas quando tento executar meu programa, ele reclama de falta de bibliotecas. Como devo consertar isso? Devo fornecer o caminho dos arquivos lib de alguma forma? Como fazer isso?
Responder1
Se a instalação do seu compilador carbitray (ou conjunto de ferramentas) vier com uma pasta lib, você pode tentar definir o caminho da biblioteca (vejahttp://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html)
$ export LD_LIBRARY_PATH=/path/to/your/compiler/lib
ou execute o binário assim:
$ LD_LIBRARY_PATH=/path/to/your/compiler/lib ./yourapp
Mas isso pode ser apenas uma parte do seu problema. Se as bibliotecas do seu compilador/conjunto de ferramentas também estiverem usando bibliotecas compartilhadas adicionais, você também precisará instalá-las.
Um pacote de conjunto de ferramentas adequado deve conter uma pasta comox86_64-linux-gnu/sysroot/lib. Esta pasta deve conter as bibliotecas compartilhadas necessárias para seu aplicativo compilado.