lien à une bibliothèque partagée de KDevelop 3.3

  • nhatkhang
  • Born
  • Born
  • No Avatar
  • Inscription: Nov 26, 2006
  • Messages: 2
  • Status: Offline

Message Novembre 26th, 2006, 11:36 pm

-------------------------------------------------- ------------------------------

salut! désolé pour la longueur de ce post.
im en utilisant KDevelop 3.3.1 sur Ferdora Core 5
je créer un projet avec C Automanke Manager, ajouter main.c, LibBkTrans.h en elle.
/ / main.c
#include "BkTransLib.h"
int main () (
if (BKInit ())
(
/ / ne rien faire
)
)
/ / BkTransLib.h
int BKInit ();

une bibliothèque partagée libbktrans.so.0. 0 contient l'application de BKInit (), j'ai mis dans / usr / local / lib et de l'installer correctement
i construire le projet -> erreur: "undefined référence à BKInit (), de son car je n'ai pas lié à la bibliothèque partagée
j'ai donc un clic-droit sur le nom du projet (Programme de bin) dans la fenêtre Gestionnaire Automake, choisissez Options, dans l'onglet Bibliothèques ajouter i
-lbktrans dans la case "Lien de bibliothèques à l'extérieur du projet (LDADD)"
enfin i rebuid le projet -> Success

maintenant i supprimer le fichier / path_to_project / src / Makefile.in et l'ensemble du répertoire / path_to_project / debug
puis-je supprimer le main.c dans le cadre du projet, allez à / path_to_project / src et renommez main.c à main.cpp, pas de problème, la cause main.c est très simple, comme ci-dessus.
i ajouter ce main.cpp dans le projet et rebuid -> erreur: "undefined référence à BKInit ()"
Je ne sais pas pourquoi.

i essayer une autre approche: créer un projet C + +, ajouter main.ccp et BkTransLib. h, il en
construire -> erreur: "undefined référence à BKInit ()"
i lien de la bibliothèque en ajoutant-lbktrans dans la case "Lien bibliothèques en dehors du projet (LDADD)"
reconstruire -> erreur: "undefined référence à BKInit ()».

peut-être, la bibliothèque partagée ne peut pas dans un lien de projet C + +. (ce qui est de mon idée stupide!)
parce que j'ai réussi à l'encontre d'un simple lien de bibliothèque partagée à la fois C et C + + projet.
est-ce que quelqu'un a une meilleure idée?
Observe
nhatkhang
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Novembre 26th, 2006, 11:36 pm

  • nhatkhang
  • Born
  • Born
  • No Avatar
  • Inscription: Nov 26, 2006
  • Messages: 2
  • Status: Offline

Message Novembre 27th, 2006, 8:57 pm

salut
j'ai obtenu la solution
pour le projet C + +, j'ai besoin de modifier le fichier. h (BkTransLib.h).
i ajouté extern "C" () toutes les fonctions, en lui,
vous remercie tous

Afficher de l'information

  • Total des messages de ce sujet: 2 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 104 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC