Installer et bibliotek under Codeblocks for MinGW

Forudsætninger

Du har en version af CodeBlocks, der bruger MinGW-kompilatoren, og du har genoprettet binæret i et eksternt bibliotek, du vil bruge (det er også udarbejdet for MinGW).

I det følgende eksempel vil vi bruge libcurl bibliotek til at illustrere den anvendte metode: fx den dato, hvor linjerne blev skrevet, den aktuelle og stabile version af libcurl:

//curl.haxx.se/gknw.net/7.28.1/dist-w32/curl-7.28.1-devel-mingw32.zip

(Få den opdaterede version på //curl.haxx.se/download.html)

Denne metode kan bruges med Codeblocks (med MinGW) for ethvert bibliotek udarbejdet til MinGW.

Metode

Dekomprimer i en mappe - centraliser de eksterne biblioteker

Udpak arkivet indeholdende det kompilerede bibliotek i en nem adgangskatalog (med et navn uden mellemrum).

  • For eksempel: c: \ libs \ curl-7.28.1-devel-mingw32 \

Integration til Codeblocks-projektet: 2 trin

Der er 2 ændringer, der skal bruges af et ekstra bibliotek under Codeblocks:

Angiv kompilatoren, hvor du finder .h-filerne.

Fortæl kompilatoren, hvor du finder .h-filerne, vil forhindre fejl, når du indsætter #include svarende til biblioteket i kildekoden.

Dette gøres i:

  • Projekt - Bygningsindstillinger
  • Klik på projektets rod (ikke på Target eller Debug, ellers vil indstillingerne ikke blive anvendt)
  • Gå til fanen "Søg kataloger"> Tilføj> hent den mappe, der indeholder .h- filerne (i vores eksempel: libcurl c: \ libs \ curl-7.28.1-devel-mingw32 \ inkluder ) og vælg biblioteket.

Angiv redaktøren, hvor du finder bibliotekets binarier

Fortæl redaktøren, hvor du finder binarier i biblioteket, giver det mulighed for at generere den eksekverbare efter kompilering, f.eks. For miljøet MinGW ( .a udvidelse).

Dette gøres i:

  • Klik på projektets rod (ikke på Target eller Debug, ellers vil indstillingerne ikke blive anvendt)
  • Gå til fanen "Linker-indstillinger"> Tilføj> hent den mappe, der indeholder .a-filerne (i vores eksempel: libcurl c: \ libs \ curl-7.28.1-devel-mingw32 \ lib ) og vælg de dele af biblioteket havde brug for.

Noter

.Dll-filerne

Afhængigt af hvordan du opretter dit projekt (dynamisk eller statisk link), skal du muligvis kopiere .dll-filer i den eksekverbare mappe (eller i Windows PATH) for at aktivere bibliotekets dynamiske indlæsning.

I tilfælde af libcurl findes .dll i: c: \ libs \ curl-7.28.1-devel-mingw32 \ bin

Du skal f.eks. Tilføje dem i "Mål" for projektet, der indeholder den eksekverbare genereret efter kompilering (eller et sted i PATH), og dette er kun nødvendigt, når du kompilerer med dynamiske links og for at starte den eksekverbare uden for udviklingsmiljø.

=== Relative eller absolutte stier ==

Når du konfigurerer Codeblocks-parameter, bliver du bedt om at have en meddelelse, når du har valgt en ressource: "Hold dette som en relativ sti?" .

Hvis du vælger at holde den relative sti, betyder det at CodeBlocks ikke gemmer den absolutte sti til den angivne ressource (fx " c: \ libs \ curl-7.28.1-devel-mingw32 \ lib \ libcurl.a "), men kun stien i forhold til projektmappen (f.eks. " .. \ .. \ .. \ libs \ curl-7.28.1-devel-mingw32 \ lib \ libcurl.a ").

Det er nyttigt at angive en relativ sti, hvis ressourcerne er tilgængelige i projektmappen. Projektet kan kompileres på en anden maskine med CodeBlocks.

Du må ikke kopiere det eksterne bibliotek i MinGW-biblioteket

Det kan virke, og der er mange vejledninger, der anbefaler dette trin.

Jeg anbefaler dog ikke at gøre dette, medmindre du vil:

- Kvæle med installationen af ​​CodeBlocks.

- Geninstaller alle dine biblioteker, fordi du har opdateret CodeBlocks eller MinGW.

- Ved ikke, hvordan du opdaterer dine biblioteker.

Original dokument udgivet af Dal på CommentcaMarche.net.

Forrige Artikel Næste Artikel

Top Tips