Probleme C++ et XCode !

nours

Membre enregistré
31 Octobre 2004
3
0
39
Bonjour
Je débute la programmation sur Mac, et m'attaque a coder une petite application en C++.
Mais des les premieres lignes une erreur apparait et je n'arrive pas a la comprendre :
ERROR :
"_lgLcdInit", referenced from:
_main in main.o
symbol(s) not found
collect2: ld returned 1 exit status

Voici mon code :
#include <iostream>
#include "lgLcd.h"
#pragma comment(lib, "lgLcd.lib")

int main (int argc, char * const argv[]) {
// insert code here...
lgLcdInit();

// std::cout << "Hello, World!\n";
return 0;
}

Je precise que le but du programme est d'afficher un bitmap sur un ecran LCD d'un clavier, et que la librairie lgLcd.h est issue du SDK fourni par le fabricant (Logitech pour ne pas le citer ;))

Voila
Si quelqu'un pouvait m'expliquer la teneur du message d'erreur afin que je puisse progresser...

Merci beaucoup !
 
Petit cours de C : un fichier .h est un Header pas une librairie. Il ne contient que la déclaration des symboles utilisée par ta librairie. Celle-ci se présent sous forme d'un fichier .a, .so ou .dylib et c'est uniquement elle qui contient la définition des ces symboles. Et c'est ce qui te manque comme l'indique l'erreur du linker.
 
drag LogitechLCD.framework into your xcode project

or
Bloc de code:
// /Library/Frameworks/LogitechLCD.framework
// g++ main.cpp -o main -framework LogitechLCD

#include <iostream>
#include <LogitechLCD/lgLcd.h>
#pragma comment(lib, "lgLcd.lib")

int main (int argc, char * const argv[]) {
// insert code here...
    lgLcdInit();

    std::cout << "Hello, World!\n";
    return 0;
}

/* EOF */
devrait etre intitulé mon premier programme en C++

Bloc de code:
>$ otool -L main
main:
    @loader_path/../Frameworks/LogitechLCD.framework/Versions/A/LogitechLCD (compatibility version 1.0.0, current version 1.0.0)
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
    /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4)
 
oh purée .....
3ans que je code plus en C++, j'ai vraiment perdu en fait .....
Bon oki promis demain je me rachete et V acheter un bouquin genre "le C++ pour les nuls" !
En tout cas merci de vos reponse !
J'me remet dedans des ce soir quand meme (tant pis pour le bouquin ! ;))

MErci encore,

Et au passage si certain d'entre vous on deja codé pour afficher des infos sur le LCD du G15 (ouG13) de chez Logitech, je suis preneur !!
 
oh purée .....
3ans que je code plus en C++, j'ai vraiment perdu en fait .....
Bon oki promis demain je me rachete et V acheter un bouquin genre "le C++ pour les nuls" !
En tout cas merci de vos reponse !
J'me remet dedans des ce soir quand meme (tant pis pour le bouquin ! ;))

MErci encore,

Et au passage si certain d'entre vous on deja codé pour afficher des infos sur le LCD du G15 (ouG13) de chez Logitech, je suis preneur !!
évite la collection "pour les nuls", parce que c'est vraiment pas des bon bouquin.

Y a un bon bouquin en français sur C++ de Henri Garreta si tu veux, celui là est vraiment bien :)

Sinon il y a évidemment "Le langage C++" de Stroustrup mais c'est plus hardcore ^^
 
Et concernant l'usage d'un compilateur et d'un linker, ce livre ne te sera d'aucune utilité. Et c'est quand même le problème de départ :zen: