probleme de link [BCB6] - C - Programmation
Marsh Posté le 22-06-2003 à 16:15:03
Construction
[Lieur Erreur] Unresolved external '__InitVCL' referenced from C:\BORLAND\CBUILDER6\LIB\CP32MTI.LIB|crtlvcl
[Lieur Erreur] Unresolved external '__ExitVCL' referenced from C:\BORLAND\CBUILDER6\LIB\CP32MTI.LIB|crtlvcl
[Lieur Erreur] Unresolved external 'WinMain' referenced from C:\BORLAND\CBUILDER6\LIB\C0W32.OBJ
Marsh Posté le 22-06-2003 à 16:27:37
tu ne linkes qu'avec ws2_32.lib ? (j'ai eu quelques soucis avec cette lib, depuis, je passe par wsock32.lib)
clairement, il doit te manquer une petite lib au link ...
Tu n'inclus que les fichiers annoncés ci-dessus, ou tu inclus aussi d'autres .h ?
Edit : au pire, recherche bourrin : dans tous les fichiers "*.lib", tu recherches les noms des fonctions qui te manquent ... Si tu en trouves, ca te mettra peut-être sur une piste ...
Marsh Posté le 22-06-2003 à 16:40:31
Je n'inclue pas d autre *.h mais je débute alors je peux me tromper. En tout cas, normalement, je dois avoir ceux dont j ai besoin.
afin d'être plus précis ds la problématique, voici le source :
--------------------------------------------------------
#include <stdio.h>
#include <winsock2.h>
#include <string.h>
#pragma comment(lib, "ws2_32.lib" )
main(){
//ouverture de socket
WSADATA WSAData;
WSAStartup(MAKEWORD(2,0), &WSAData);
SOCKET sock;
SOCKADDR_IN sin;
sin.sin_addr.s_addr = inet_addr("193.252.22.74" );
sin.sin_family = AF_INET;
sin.sin_port = htons(25);
sock = socket(AF_INET,SOCK_STREAM,0);
connect(sock, (SOCKADDR *)&sin, sizeof(sin));
//données a envoyer
char buff[50];
char bjr[50] = "EHLO TooN\n";
char mailfrom[50] = "MAIL FROM:<toto@wanadoo.fr>\r\n";
char rcptto[50] = "RCPT TO:<titi@wanadoo.fr>\r\n";
char data[50] = "DATA\r\n";
char texte[50] = "texte de test\r\n";
char fin[50] = ".\r\n";
char fermer[50] = "QUIT\r\n";
//envoi du mail
printf("%s", bjr);
send(sock, bjr, sizeof(bjr), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
printf("%s", mailfrom);
send(sock, mailfrom, sizeof(mailfrom), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
printf("%s", rcptto);
send(sock, rcptto, sizeof(rcptto), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
printf("%s", data);
send(sock, data, sizeof(data), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
printf("%s", texte);
send(sock, texte, sizeof(texte), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
printf("%s", fin);
send(sock, fin, sizeof(fin), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
printf("%s", fermer);
send(sock, fermer, sizeof(fermer), 0);
recv(sock, buff, sizeof(buff), 0);
printf("%s\n", buff);
//fermeture du socket
closesocket(sock);
WSACleanup();
}
----------------------------------------------------------
Y a t il une munipulation supplémentaire au niveau du gestionnaire du projet ou une copie de fichier .lib que je n aurais po mis au bon endroit ?
Marsh Posté le 22-06-2003 à 17:37:26
TheTooN a écrit : Y a t il une munipulation supplémentaire au niveau du gestionnaire du projet ou une copie de fichier .lib que je n aurais po mis au bon endroit ? |
Je suppose que ton compilo te le dirait si il ne trouvait pas le .lib ... C'est le moins qu'il puisse faire !
cela dit, as-tu essayé de faire la recherche que je t'ai suggérée ?
Tu peux aussi essayer de linker wsock32.lib au lieu de ws2_32.lib :
#pragma comment(lib, "wsock32.lib" )
Pour ce qui est de l'autre manière de linker, ca dépend complètement du compilateur, donc je ne pourrai pas vraiment t'aider là-dessus ...
Marsh Posté le 22-06-2003 à 13:39:03
Bonojour à tous, je me met au langage C avec BCB6 et suis en face d'un probleme visiblement insoluble avec Google et la recherche du forum. J' en appelle donc à vos lumières.
Voila mon probleme :
Comment fait on pour linker un fichier sous BCB6 ?
mon prog commence par ca et ca me met un [lieur erreur] au moment de la compilation :
-----------------------------------------------------
#include <stdio.h>
#include <winsock2.h>
#include <string.h>
#pragma comment(lib, "ws2_32.lib" )
main(){
...
-----------------------------------------------------