Articles of linker

Comportement du linker très étrange

C’est étrange car j’ai pu obtenir l’erreur ci-dessous pour supprimer la référence à libm. gcc -o example example.o -Wl -L/home/kensey/cdev/lib -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -L/usr/lib/x86_64-linux-gnu -lm -lrt -ldl -lcdev -L/home/kensey/www.tools/gplot-lib -lgplot -L/home/kensey/www.tools/gd1_3ret -lgd -lxml2 -lcurl /usr/bin/ld: /home/kensey/www.tools/gplot-lib/libgplot.a(set.o): undefined reference to symbol ‘floor@@GLIBC_2.2.5’ /usr/bin/ld: note: ‘floor@@GLIBC_2.2.5’ is defined in DSO /usr/lib/x86_64-linux-gnu/libm.so so try adding it to […]

Quelle est l’option -fPIE pour les exécutables indépendants de la position dans gcc et ld?

Comment va-t-il changer le code, par exemple les appels de fonction?

Puis-je associer un fichier simple à mon exécutable?

Certains frameworks (Qt, Windows, Gtk …) offrent des fonctionnalités pour append des ressources à vos fichiers binarys. Je me demande s’il serait possible d’y parvenir sans le cadre, car tout ce qui est vraiment nécessaire est un symbole pour contenir l’adresse de la ressource dans le binary (segment de données) un symbole pour représenter la […]

Appeler Haskell à partir du code C ++

J’écris actuellement une application en C ++ et j’ai constaté que certaines de ses fonctionnalités seraient mieux écrites en Haskell. J’ai vu des instructions sur l’ appel de Haskell à partir du code C , mais est-il possible de faire la même chose avec C ++? EDIT: Pour clarifier, ce que je cherche est un […]

Que fait réellement l’option de l’éditeur de liens «Link Library Dependency» dans Visual Studio 2010?

Jusqu’à VS2008, vous définissez vos dépendances de projet C ++ natives dans le fichier de solution ( Project Dependencies … ) et si (par défaut) l’option du lieur Properties -> Linker -> General : Link Library Dependencies = Yes est défini, le Visual Studio Build sera automatiquement lié dans les fichiers .lib de tous les […]

Comment spécifier un chemin de bibliothèque partagée par défaut dans GCC Linux? Obtenir une «erreur lors du chargement des bibliothèques partagées» lors de l’exécution

Il y a un ordinateur portable sur lequel je n’ai pas de privilège root. sur la machine, j’ai une bibliothèque installée en utilisant configure –prefix=$HOME/.usr . Après cela, j’ai eu ces fichiers dans ~/.usr/lib : libXX.so.16.0.0 libXX.so.16 libXX.so libXX.la libXX.a lorsque je comstack un programme qui appelle une des fonctions fournies par la bibliothèque avec […]

g ++ linker: force le lien statique si la bibliothèque statique existe?

J’ai un programme qui se connecte à de nombreuses bibliothèques. g++ , par défaut, préfère lier des bibliothèques partagées, même si l’archive correspondante existe. Comment puis-je changer cette préférence pour préférer les archives statiques aux bibliothèques dynamics, si une archive statique existe? Notez que j’ai utilisé l’option -static , mais il essaie de trouver des […]

Puis-je mélanger des bibliothèques d’objects statiques et d’objects partagés lors de la liaison?

J’ai un projet C qui produit dix exécutables, dont je voudrais tous avoir un lien statique. Le problème auquel je suis confronté est que l’un de ces exécutables utilise une bibliothèque tierce dont seule la version d’object partagé est disponible. Si je passe le drapeau -static à gcc, ld -static erreur en disant qu’il ne […]

Problème lié à l’éditeur de liens d’exécution GHCi lors de l’utilisation de déclarations FFI

J’ai un problème concernant FFI en Haskell et le mode interactif de GHC. Considérez FFISo.hs : {-# LANGUAGE OverloadedSsortingngs #-} module Main where import qualified Data.ByteSsortingng.Char8 as B import FFIFun.Foo main :: IO () main = do B.putStrLn “main” callMeFromC callMeFromHaskell return () cc : #include void callMeFromC(void); void callMeFromHaskell(void) { printf(“callMeFromHaskell\n”); callMeFromC(); } FFIFun/Foo.hs […]

Quelle est l’utilisation de .exp et quelle est la différence entre .lib et .dll

Pendant la compilation et la liaison, quelle est l’utilisation de .exp? Quelle est la difference entre .lib et .dll? Je sais que .lib sera utilisé, tandis que les liens et .dll seront utilisés lors de l’exécution du programme. Mais quelle est la différence entre .lib et .dll? Le fichier .lib ne contient-il pas le code […]