CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

problemes de libs

sn00bino
sn00bino
Niveau 5
17 avril 2008 à 19:04:31

j'utilise une lib a qui utilise une lib b que j'utilise aussi. Le linker dit que la lib b redéfinis des choses déjà définit dans la lib a. Je peux pas virer la lib b sinon sa fait encore plus d'erreurs. Comment je m'en sors ?

Nepser
Nepser
Niveau 5
17 avril 2008 à 20:40:29

Impossible à dire avec si peu d'infos. Déjà, est-ce que c'est des libs "pro" déjà compilée auquelles tu ne peux toucher? Dans ce cas, pas de solution :/
Si tu peux y toucher, alors à toi de faire des protections de redéfinitions.

sn00bino
sn00bino
Niveau 5
18 avril 2008 à 12:13:19

la lib b c 'est la lib du cpp standard je crois (list, vector, map...). Et la lib a je peux la modifier. Mais qu'est ce que je dois changer pour éviter la redéfinition ?

dnob700
dnob700
Niveau 10
18 avril 2008 à 20:07:34

quand tu compile la lib a, ne link pas pas la lib b, surtout si c'est la lib standard. C'est au moment de la compilation final du programme qu'il faut faire ça.

On pourra mieux t'expliquer si tu nous donne ton makefile ou le fichier équivalent qui te sers pour configurer ta compilation et pour la lib a et pour la lib b.

sn00bino
sn00bino
Niveau 5
18 avril 2008 à 21:53:48

bizarrement je n'utilisais pas la lib b ( je linkais dynamiquement, je m'en suis pas rendu compte ). Maintenant que je le fais tout marche bien. En fait c 'est parceque sous VC++ ya 2 possibilités pour le linkage des libs standards : soit dynamique soit statique, la lib a et moi n' étions pas sur la même longueur d'onde.

++ et merci

dnob700
dnob700
Niveau 10
18 avril 2008 à 22:10:31

effectivement c'est un problème courant qui empire quand on joue entre les version multithread et single thread de ces lib. (mais il n'existe que la version mt dans la dernière version).

L'idée c'est que si tu utilise du linkage dynamique, il n'y a jamais de problème (sauf quand tu distribue ton programme ...)

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment