error template with c linkage

chevalhackchevalhack Membre
19:05 modifié dans API AppKit #1
Bonjour,

J'obtient une erreur lors de la compilation des fichier h avec xcode c'est : error with c linkage ou linking.

Bon j'ai lu dans un forum qu'ils fallait mettre extern "C" je l'ai mis dans les fichier dans lesquels il y avait l'erreur, je suis passé de 95 erreurs à  11 mais il y en a encore et en mettant extern "C" ca ne change plus.
D'ou vient se problème ???

Merci d'avance pour votre réponse.

            CHEVALHACK

Réponses

  • Philippe49Philippe49 Membre
    19:05 modifié #2
    C'est quoi comme projet ?
    C
    Cocoa
    Carbon
    ...
  • chevalhackchevalhack Membre
    19:05 modifié #3
    cocoa
  • Philippe49Philippe49 Membre
    février 2008 modifié #4
    Je n'ai jamais vu avoir besoin de mettre extern "C" dans un programme Cocoa.

    L'erreur doit être ailleurs
    Tu as bien mis les #import dans les .h, et ils ne présentent pas de cycle ?
  • chevalhackchevalhack Membre
    19:05 modifié #5
    le problème c'est que c'est une bibliothèque en c++ que je dois inclure mais pas en framework mais seulement avec des fichier .h donc j'inclue le header principal mais bon ca foire ca me met cette erreur.

    J'ai remarquer dans le code des fichiers .h : template <class T>
    je suppose que c'est a cause de ça, car une ligne plus loin c'est l'erreur.
    Puis comme c'est une bibliothèque c++ ce sont des fichiers .mm
  • AliGatorAliGator Membre, Modérateur
    19:05 modifié #6
    Ah ben oui voilà , le problème est à  l'envers.
    C'est pas que tu essayes d'intégrer une lib en C dans un prog C++, mais une lib C++ dans un prog en Objective-C, qui en soi est du C...
    Tu vas sans doute devoir convertir un peu de ton code en Objective-C++ (qui est au C++ ce qu'Objective-C est au C), pour faire une passerelle, un wrapper pour te permettre d'appeler depuis du code C ou Objective-C les méthodes de ta librairie C++
  • Philippe49Philippe49 Membre
    19:05 modifié #7
    Et pose toi la question de savoir si il n'est pas plus simple d'utiliser directement les ressources d'Objective-C, plutôt que de vouloir plaquer une librairie extérieure . 
  • chevalhackchevalhack Membre
    mars 2008 modifié #8
    Le problème c'est que c'est les includes du moteur 3D illricht, je voulais juste essayer pour voir si cela fonctionnais, normalement c'est du c++ j'ai donc un projet en objective-c++. Normalement cela devrait aller mais je pense qu'ils doit y avoir un problème dans l'inclusion non ??


    EDIT : Bon soit je vais essayer avec un autre moteur 3D.
  • schlumschlum Membre
    19:05 modifié #9
    dans 1204313827:

    cocoa


    Pourquoi un projet Cocoa pour compiler une bibliothèque C/C++ ?? (et pas "librairie" SVP  :P)

    Pourquoi ne pas avoir fait un projet "BSD static library" ?
  • chevalhackchevalhack Membre
    19:05 modifié #10
    oui juste, j'ai une autre question, je dois compiler une bibliothèque mais qui demande d#autre bibliothèque comme libjpeg par exemple en dylib quand j'installe libjpeg c'est en .a comment créer la .dylib ??? merci d'avance
  • schlumschlum Membre
    19:05 modifié #11
    Celle que j'ai installée avec Fink m'a donné un .a et un .dylib
  • chevalhackchevalhack Membre
    19:05 modifié #12
    ha bon ?¿ moi je l'ai trouver la .dylib grace au logiciel MAMP qui l'avait mais sinon pour les autres je ne sais pas en fin bon pas grave ce n'est surement pas de mon niveau ^^
    Si vous avez les frameworks suivant : zzip.framework et IL.framework je les prendrais bien sinon tempi. car je dois les compiler mais apparement je suis pas sur la bonne route et puis c'est surement pas de mon niveau.
    En fait je veux avoir le framework de Ogre 3D le problème c'est que les version direct en framework c'est pas pour panther, pour celui je dois absolument prendre le code source et le compiler mais il manque les deux framework ci dessus si vous les avez pour panther je suis prenneur car la compilation est un peu lourde a mon niveau ^
Connectez-vous ou Inscrivez-vous pour répondre.