- dans la liste des modules passés au librarian si tu fais une lib statique.
Je ne comprend pas
Je n'ai pas VC6 sous la main, mais ca doit être le champ "additionnal dependencies" des propriétés du librarian (Générateur de bibliothèque en français).
Arnaud
Manuel Leclerc wrote:
Arnaud Debaene a écrit :
- dans la liste des modules passés au librarian si tu
fais une lib statique.
Je ne comprend pas
Je n'ai pas VC6 sous la main, mais ca doit être le champ "additionnal
dependencies" des propriétés du librarian (Générateur de bibliothèque en
français).
- dans la liste des modules passés au librarian si tu fais une lib statique.
Je ne comprend pas
Je n'ai pas VC6 sous la main, mais ca doit être le champ "additionnal dependencies" des propriétés du librarian (Générateur de bibliothèque en français).
Arnaud
JM
Arnaud Debaene a écrit :
JM wrote:
Houlà, tu confonds plusieurs choses! : - les erreurs du type CXXXX sont des erreurs du *compilateur*. Elles sont les mêmes que tu compile un executable, une DLL, ou une lib statique puisqu'on en est à la phase où tu produits des .obj, peu importe à quoi ils vons servir ensuite. Les erruers du type LNKXXXX sont des erreurs de *l'éditeur de liens* : elles ne peuvent survenir que su fais un executable ou une DLL, pas si tu fais une librairie statique.
Ok. C'est fou ce qu'on apprend en faisant des conneries :-)
- j'ai l'impression que tu ne fais pas la différence entre une DLL et une lib statique. Si tu nous dis que tu n'as pas d'onglet "Link" dans les propriétés de ton projet, j'en déduis que tu fais une librairie statique, et pas une DLL.
Ben c'est ce que je crois avoir dit
En ce qui concerne tes erreurs, ce sont des erreurs de compilation, donc elles n'ont *rien* à voir avec les librairies que tu lies à ton projet ou pas (on n'en est pas encore à ce stade). Il te manque vraisemblablement un #include d'un header. Ce qu'il te manque à priori, c'est la définition de la macro DEFINE_GUID; ce qui veut dire que tu dois #inclure guidddef.h avant d'inclure les headers de GDI+. Le plus probable, c'est que dans ton projet qui marche (ton exe), tu ais un #include <windows.h> (qui inclus lui-même indirectement guiddef.h) et que tu ne l'ais pas dans ton projet qui ne marche pas.
En suivant le conseil de manuel, j'ai crée un projet vide et, après un certain temps, j'ai effectivement constaté qu'il manquait <objbase.h> Maintenant cela semble marcher.
Merci à tous!
Enfin, pour lier les librairies de GDI+, la solution recommandée n'est pas de faire un #pragma comment mais d'ajouter gdiplus.lib : - dans les "additionnal libraries" du linker si tu fais un exe ou une DLL - dans la liste des modules passés au librarian si tu fais une lib statique.
C'est bon à savoir, merci.
Arnaud Debaene a écrit :
JM wrote:
Houlà, tu confonds plusieurs choses! :
- les erreurs du type CXXXX sont des erreurs du *compilateur*. Elles sont
les mêmes que tu compile un executable, une DLL, ou une lib statique
puisqu'on en est à la phase où tu produits des .obj, peu importe à quoi ils
vons servir ensuite. Les erruers du type LNKXXXX sont des erreurs de
*l'éditeur de liens* : elles ne peuvent survenir que su fais un executable
ou une DLL, pas si tu fais une librairie statique.
Ok.
C'est fou ce qu'on apprend en faisant des conneries :-)
- j'ai l'impression que tu ne fais pas la différence entre une DLL et une
lib statique. Si tu nous dis que tu n'as pas d'onglet "Link" dans les
propriétés de ton projet, j'en déduis que tu fais une librairie statique, et
pas une DLL.
Ben c'est ce que je crois avoir dit
En ce qui concerne tes erreurs, ce sont des erreurs de compilation, donc
elles n'ont *rien* à voir avec les librairies que tu lies à ton projet ou
pas (on n'en est pas encore à ce stade). Il te manque vraisemblablement un
#include d'un header. Ce qu'il te manque à priori, c'est la définition de la
macro DEFINE_GUID; ce qui veut dire que tu dois #inclure guidddef.h avant
d'inclure les headers de GDI+. Le plus probable, c'est que dans ton projet
qui marche (ton exe), tu ais un #include <windows.h> (qui inclus lui-même
indirectement guiddef.h) et que tu ne l'ais pas dans ton projet qui ne
marche pas.
En suivant le conseil de manuel, j'ai crée un projet vide et, après un
certain temps, j'ai effectivement constaté qu'il manquait <objbase.h>
Maintenant cela semble marcher.
Merci à tous!
Enfin, pour lier les librairies de GDI+, la solution recommandée n'est pas
de faire un #pragma comment mais d'ajouter gdiplus.lib :
- dans les "additionnal libraries" du linker si tu fais un exe ou une DLL
- dans la liste des modules passés au librarian si tu fais une lib statique.
Houlà, tu confonds plusieurs choses! : - les erreurs du type CXXXX sont des erreurs du *compilateur*. Elles sont les mêmes que tu compile un executable, une DLL, ou une lib statique puisqu'on en est à la phase où tu produits des .obj, peu importe à quoi ils vons servir ensuite. Les erruers du type LNKXXXX sont des erreurs de *l'éditeur de liens* : elles ne peuvent survenir que su fais un executable ou une DLL, pas si tu fais une librairie statique.
Ok. C'est fou ce qu'on apprend en faisant des conneries :-)
- j'ai l'impression que tu ne fais pas la différence entre une DLL et une lib statique. Si tu nous dis que tu n'as pas d'onglet "Link" dans les propriétés de ton projet, j'en déduis que tu fais une librairie statique, et pas une DLL.
Ben c'est ce que je crois avoir dit
En ce qui concerne tes erreurs, ce sont des erreurs de compilation, donc elles n'ont *rien* à voir avec les librairies que tu lies à ton projet ou pas (on n'en est pas encore à ce stade). Il te manque vraisemblablement un #include d'un header. Ce qu'il te manque à priori, c'est la définition de la macro DEFINE_GUID; ce qui veut dire que tu dois #inclure guidddef.h avant d'inclure les headers de GDI+. Le plus probable, c'est que dans ton projet qui marche (ton exe), tu ais un #include <windows.h> (qui inclus lui-même indirectement guiddef.h) et que tu ne l'ais pas dans ton projet qui ne marche pas.
En suivant le conseil de manuel, j'ai crée un projet vide et, après un certain temps, j'ai effectivement constaté qu'il manquait <objbase.h> Maintenant cela semble marcher.
Merci à tous!
Enfin, pour lier les librairies de GDI+, la solution recommandée n'est pas de faire un #pragma comment mais d'ajouter gdiplus.lib : - dans les "additionnal libraries" du linker si tu fais un exe ou une DLL - dans la liste des modules passés au librarian si tu fais une lib statique.