Carica una libreria C esterna in un C ++ esistente - Progetto (ad es. Ffmpeg / libavcodec - istruzioni dettagliate)

StackOverflow https://stackoverflow.com/questions/1636447

  •  06-07-2019
  •  | 
  •  

Domanda

Ho davvero grossi problemi con l'importazione di una libreria C esterna nel mio progetto C ++ esistente. Voglio importare libavcodec dal progetto FFmpeg , quindi ho scaricato l'ultima versione del codice sorgente.
Cosa devo fare adesso? Devo prima compilare FFmpeg o posso importarlo in questo modo? Un manuale passo-passo davvero semplice sarebbe fantastico!
(Ho trovato tutorial su come usare libavcodec quando viene importato, quindi non è necessario ... Non ne ho trovati alcuni per importarlo)

È stato utile?

Soluzione

Per includere una libreria di codici sorgente nel progetto esistente hai una serie di opzioni:

  • Compila in una libreria statica

  • Compila in una libreria dinamica

  • Compila in file oggetto

Quindi, sì, devi compilare il loro codice sorgente e devi cambiare la tua toolchain per includere i risultati nel tuo programma.

Altri suggerimenti

Devi creare la tua libreria esterna. Ciò produrrà un file di libreria che verrà utilizzato durante la creazione del programma. Includete la libreria durante il processo di collegamento durante la compilazione del programma. Dovrai anche " # includere " le intestazioni che si desidera utilizzare nella propria fonte. Probabilmente dovrai dire al compilatore dove si trovano le intestazioni di FFmpeg, usando " -I " flag in g ++ e dove si trova la libreria usando " -L " bandiera.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top