GNU/Linux >> Linux Esercitazione >  >> Linux

Collegamento con una versione precedente di libstdc++

Non è necessario collegarsi a una libreria diversa, è necessario utilizzare una versione precedente del compilatore.

Dai un'occhiata alla politica GNU ABI. La libreria condivisa libstdc++ è progettata per essere compatibile con le versioni successive. Cioè. la versione 6.0.10 può essere utilizzata se è necessaria la 6.0.8. Nella policy puoi leggere che da gcc-4.2.0 in poi, è necessario 6.0.9, quindi hai bisogno di un gcc-4.1.x.

In breve, ecco perché c'è solo una libstdc++.so.6.0.x sul tuo sistema, ti serve solo l'ultima.

Per quanto riguarda l'impostazione del tuo sistema di compilazione per utilizzare solo una versione specifica del compilatore:assicurati che lo standard g++ non possa essere utilizzato (rinomina il collegamento, rimuovi il pacchetto che lo fornisce, eliminalo da PATH) e inizia a scavare. Ha funzionato per me.


Puoi spedire le librerie condivise richieste con il tuo codice (in una sottodirectory, ad esempio) e impostare LD_LIBRARY_PATH, come precursore dell'esecuzione della tua applicazione, per cercare prima in quella directory.

Spedire la versione specifica di cui hai bisogno significherà che non avrà importanza quale versione è stata installata dall'utente. Devi solo assicurarti di spedire anche tutte le dipendenze.


Linux
  1. Errore del collegamento di comunicazione Eccezione – WSO2 con MySQL [fissare]

  2. Utilizzare una versione precedente di Libreoffice?

  3. dynamic_cast fallisce se usato con dlopen/dlsym

  4. Come posso collegarmi a una versione specifica di glibc?

  5. Collegamento alla versione precedente del simbolo in un file .so

4 suggerimenti per ottenere un parente più anziano online con Linux

Come utilizzare il comando IP in Linux con esempi

Transizione degli abbonamenti da una versione precedente di Plesk a Plesk 12

Spiegazione di Soft Link e Hard Link in Linux con esempi

Come controllare la versione del sistema operativo con la riga di comando di Linux

Come monitorare "https" remoto con Icinga versione 2?