wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :2359

Membres en ligne : 0
Invités en ligne : 2
Pub hébergeur
Pourquoi cette pub ?

Valid XHTML 1.0 Transitional

Valid CSS2

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Compilation - Installation - Réglages IDE
» Comment installer wxpdfdoc ?
Conversation (Résolue) : Comment installer wxpdfdoc ?
19-08-2012 11:32:23  Comment installer wxpdfdoc ? #1
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Bonjour les experts,

la forme ?

Je débute avec wxWidgets et j'ai le problème suivant : Y aurait-il une bonne âme pour m'indiquer comment installer wxpdfdoc avec visual c++ 2008 express ? J'ai déjà installé la bibliothèque wxWidget 2.8.12 !

Merci beaucoup !

A+

Berti
19-08-2012 17:06:37  Re: Comment installer wxpdfdoc ? #2
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Salut.

Quelle procédure as-tu utilisée pour installer les libs wx-2.8.12 ?
es-tu passé par l'installateur de ce site ou les as-tu compilées toi-même ?

Si tu es passé par l'installateur, tu trouveras une version de wxPdfDoc au même endroit.
Si tu les as compilées toi-même, il va falloir en faire autant pour wxPdfDoc.

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
19-08-2012 17:41:35  Re: Comment installer wxpdfdoc ? #3
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Salut Xaviou,

Merci pour la réponse. Je les ai compilées moi-même en suivant la procédure indiquée sur developpez.com.

J'ai également vu que tu mettais à disposition les bibliothèques déjà compilées et prêtes à l'emploi pour wxpdfdoc.

Je souhaiterais néanmoins compiler moi-même ces bibliothèques avec visual c++ 2008 sans passer par la ligne de commande, et là, ... j'ai quelque problème ...

Merci pour ta future aide !

Berti

PS : bravo par ailleurs pour tes excellents tutos, ici et sur siteduzero.com !!!
19-08-2012 18:09:32  Re: Comment installer wxpdfdoc ? #4
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Berti a écrit:
Je souhaiterais néanmoins compiler moi-même ces bibliothèques avec visual c++ 2008 sans passer par la ligne de commande, et là, ... j'ai quelque problème ...
Pourquoi ne veux-tu absolument pas passer par la ligne de commande ?

Je viens de faire quelques tests en ouvrant la fichier solution sous Visual C++ 2010 Express, et effectivement, ça ne marche pas (il a un soucis avec les libs wxWidgets).

Je vais essayer de pousser un peu plus loin, pour voir.

@+
Xav'
----------
Bon, ben je crois que j'ai trouvé.

En fait, j'allais te dire qu'à chaque coup, en ligne de commande, ça marchait nickel, sauf que là, ben c'était pas le cas.

Et d'un coup, j'ai fait le rapprochement entre les erreurs obtenues (qui concernaient toutes les wxString) et une option que j'avais utilisée pour compiler les libs.

Donc, pour la ligne de commande, il faut ajouter "CXXFLAGS=/Zc:wchar_t-".
Et dans l'IDE, il faut modifier l'option :
"Projet" -> "Propriétés" -> "C/C++" -> "Langage" -> "Traitement de WChar_t en tant que type intégré" pour la passer à "Non".

Bonne chance, et @+
Xav'

Dernière modification par Xaviou (19-08-2012 18:34:01)


Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
19-08-2012 19:00:30  Re: Comment installer wxpdfdoc ? #5
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Hello,
j'ai lu sur ce site que les versions wxwidgets supérieures à 2.8 ne sont pas supportées par visual c++ 2010. C'est pourquoi j'utilise visual c++ 2008. Il en est de même peut-être avec les composantes wxpdfdoc...

J'ai essayé de compiler la bibliothèques wxpdfdoc avec la ligne de commande, sans succès...

Je me mets dans le dossier build du package dézippé wxpdfdoc en utilisant la ligne de commande fournie par visual c++ 2008. Puis je lance la commande :

Code D:

nmake.exe -f makefile.vc

Le compilateur râle en me renvoyant :
The selected wxWidgets build is not available!
Please use the options prefixed with WX_ to select another wxWidgets build.
NMAKE : fatal error U1077: 'if' : code retour '0x1'
Stop.

Indépendamment de cette erreur, je souhaite apprendre à compiler une bibliothèque à l'aide des deux manières... d'où ma question initiale !

Merci !

A+

Berti
19-08-2012 20:34:47  Re: Comment installer wxpdfdoc ? #6
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Berti a écrit:
j'ai lu sur ce site que les versions wxwidgets supérieures à 2.8 ne sont pas supportées par visual c++ 2010. C'est pourquoi j'utilise visual c++ 2008. Il en est de même peut-être avec les composantes wxpdfdoc...
Je ne sais pas ce qu'il en est pour la compilation à partir de l'IDE, mais en ce qui concerne la ligne de commande, je peux t'affirmer que c'est faux.
Les libs wx-2.8.12 que je propose ici en téléchargement ont été compilées avec Visual C++ 2010 Express, de même que les libs wx-2.9.3 et wx-2.9.4 en version 32 bits.

Berti a écrit:
Je me mets dans le dossier build du package dézippé wxpdfdoc en utilisant la ligne de commande fournie par visual c++ 2008. Puis je lance la commande :

Code D:

nmake.exe -f makefile.vc

Le compilateur râle en me renvoyant :
The selected wxWidgets build is not available!
Please use the options prefixed with WX_ to select another wxWidgets build.
NMAKE : fatal error U1077: 'if' : code retour '0x1'
Stop.
Le problème vient du fait que tu laisses les paramètres de compilation par défaut, et que ça ne correspond pas à ton installation wxWidgets

En fait, pour la compilation en ligne de commande, il faut soit :
- éditer le fichier "makefile.vc" pour définir quelques options de compilation
- définir ces option dans la ligne de commande

Voici le début de ce fichier (la partie qui est paramétrable)

Code:

# -------------------------------------------------------------------------
# These are configurable options:
# -------------------------------------------------------------------------
 
# C++ compiler
CXX = cl
 
# Standard flags for C++
CXXFLAGS =
 
# Standard preprocessor flags (common for CC and CXX)
CPPFLAGS =
 
# Standard linker flags
LDFLAGS =
 
# Use DLL build of wx library? [0,1]
#   0 - Static
#   1 - DLL
WX_SHARED = 0
 
# Use Unicode build of wxWidgets? [0,1]
#   0 - ANSI
#   1 - Unicode
WX_UNICODE = 1
 
# Use debug build of wxWidgets (linked with debug CRT)? [0,1]
#   0 - Release
#   1 - Debug
WX_DEBUG = 1
 
# Version of the wx library to build against.
WX_VERSION = 28
 
# Use monolithic build of wxWidgets? [0,1]
#   0 - Multilib
#   1 - Monolithic
WX_MONOLITHIC = 0
 
# The directory where wxWidgets library is installed
WX_DIR = $(WXWIN)
 
# Build this wxCode component as DLL or as static library? [0,1]
#   0 - Static
#   1 - DLL
SHARED = 0
 
 
 
# -------------------------------------------------------------------------
# Do not modify the rest of this file!
# -------------------------------------------------------------------------

Tu peux en déduire que la ligne de commande que tu as lancé cherchait à compiler avec ces options : Debug - Static - Unicode - Multilib (ça, ça concerne tes libs wxWidgets) ainsi que Static pour les libs wxPdfDoc à construire.

Donc, c'est soit tu les modifies dans ce fichier ou alors tu ajoutes tes modifications dans la ligne de commande. Par exemple, pour compiler une dll de wxPdfDoc liée avec les libs "Release-Unicode-Static-Monolithic" de wxWidgets, il faudrait donner :

Code:

nmake -f makefile.vc WX_DEBUG=0 WX_MONOLITHIC=1 SHARED=1


Et bien entendu, il ne faut pas oublier l'option concernant les wchar_t dont je t'ai parlé précédemment, ce qui donne :

Code:

nmake -f makefile.vc CXXFLAGS=/Zc:wchar_t- WX_DEBUG=0 WX_MONOLITHIC=1 SHARED=1


En fait, pour ma part, j'ai perdu l'habitude de compiler les libs wxWidgets depuis l'IDE pour deux raisons :
- il y a quelques années, les dépendances entre les libs n'étaient par faites correctement dans les fichiers projet/solution (par exemple, il cherchait à compiler la lib "adv" avant la lib "base"), ce qui fait qu'il fallait connaître ces dépendances pour lancer la compilation de chaque sous-lib séparément, alors qu'avec la ligne de commande, tout était ok.
- depuis que je fournis les libs au téléchargement, et comme je fournis différentes configurations, je me suis fait un petit script batch pour chaque compilateur (Visual et MinGW). Je lance les deux scripts, et quelques temps plus tard, toutes les configurations des libs sont disponibles. Et c'est encore plus utile depuis les versions 2.9.x qui sont compilables en 64 bits : j'utilise 4 scripts batch que je lance en même temps (l'ordi chauffe un peu, mais ça passe).

Voilà.
En tout cas, si tu as besoin d'autres infos, n'hésites pas.

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
19-08-2012 21:28:43  Re: Comment installer wxpdfdoc ? #7
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Merci Xaviou de prendre la peine de me répondre de manière très précise.

Avant de lancer la commande, j'avais déjà modifié le makefile.vc pour qu'il corresponde à une de mes installations de wxWidgets. J'y ai par contre rajouté ta précieuse information concernant l'option concernant les wchar_t !!! Merci beaucoup !!!

En fait, le problème se trouvait ailleurs : il fallait définir la variable d'environnement WXWIN correspondant à mon dossier d'installation de wxWidget !!! Je n'avais pas eu besoin de l'ajouter lors de l'installation de wxWidget... et une fois définie,  il faut surtout QUITTER l'application visual c++ pour qu'elle devienne effective (j'ai perdu quelques heures...) !!!!!!

J'ai maleureusement un autre problème maintenant. Avec l'EDI (en utilisant le fichier wxpdfdoc_vc6, mais le problème persiste avec wxpdfdoc_vc9 par ex.) et les options STATIC UNICODE DEBUG MONOLITHIC STATIC, le fichier wxcode_msw28ud_pdfdoc.lib n'est pas créé car il y a une kyrielle d'erreurs qui apparait, et donc une erreur de lien en résulte (le fichier wxcode_msw28ud_pdfdoc.lib n'est pas créé).

Avec la ligne de commande, c'est pareil !

En ligne de commande, une des nombreuses erreurs signalées par le compilateur :

Code:

c:\wxpdfdoc\src\pdfdc28.inc(62) : error C2511: 'wxPdfDC::wxPdfDC(wxPdfDocument *,double,double)' : impossible de trouver la fonction membre surchargée dans 'wxPdfDC'
C:\wx\include\wx/pdfdc28.h(17) : voir la déclaration de 'wxPdfDC'
c:\wxpdfdoc\src\pdfdc28.inc(74) : error C2065: 'm_templateMode' : identificateur non déclaré
etc...

HELP !!!

Thanx

Berti

P. S. :
La fin de la liste des erreurs se termine par :
c:\wxpdfdoc\src\pdfdc28.inc(1292) : error C2065: 'm_scaleY' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(1292) : fatal error C1003: le nombre d'erreurs est supérieur à 100 ; arrêt de la compilation
NMAKE : fatal error U1077: '"c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : code retour '0x2'
Stop.

Dernière modification par Berti (19-08-2012 22:51:36)

19-08-2012 22:48:17  Re: Comment installer wxpdfdoc ? #8
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
C'est bizarre : chez moi, ça a marché sans problème.
Avec l'IDE, j'ai juste eut un warning concernant le dossier de sortie mais le fichier lib a bien été créé.
Et en ligne de commande aussi : le seul souci que j'ai eut concerne l'exemple "minimal" et surtout son fichier "manifest" qu'il a fallu que je supprime pour pouvoir lancer l'exécutable sinon, ça plantait.

Voici la ligne de commande utilisée (correspondant à la configuration Static Unicode Debug Monolithic Static de l'IDE)

Code:

nmake -f makefile.vc CXXFLAGS=/Zc:wchar_t- WX_MONOLITHIC=1


Tu devrais vérifier le fichier "src/pdfdc28.inc" : à la ligne 61 tu devrais avoir :

Code wxWidgets:

wxPdfDC::wxPdfDC(wxPdfDocument* pdfDocument, double templateWidth, double templateHeight)
{
  Init();
  m_templateMode = true;
  m_templateWidth = templateWidth;
  m_templateHeight = templateHeight;
  m_pdfDocument = pdfDocument;
}
 
wxPdfDC::~wxPdfDC()
{
  if (m_pdfDocument != NULL)
  {
    if (!m_templateMode)
      {
        delete m_pdfDocument;
    }
  }
}

On dirait qu'il t'en manque un morceau (peut-être un problème au moment de la décompression des sources).
Si jamais c'est le cas, je te conseille de supprimer le répertoire dans lequel tu as décompressé les sources de wxPdfDoc, et de le re-créer avant de relancer la compilation.

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
19-08-2012 23:11:31  Re: Comment installer wxpdfdoc ? #9
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Hello,

Merci pour le conseil. Mon fichier comporte les mêmes lignes que celles qui figurent dans ton message !

J'ai retéléchargé et redézippé le dossier wxpdfdoc, remis à jour le makefile.vc et recompilé en ligne de commande, sans succès, hélas !!!

J'ai complété mon message précédent en indiquant la fin de la liste des erreurs que je retrouve après ma compilation.

A suivre...

Pour info : c'est la version wxpdfdoc-0.9.3 que j'utilise
----------
Pour info, j'ai essayé avec la version 0.9.2 et là le nombre d'erreurs en ligne de commande a drastiquement diminué...

Code:

...
c:\wxpdfdoc\src\pdfdc28.inc(62) : error C2511: 'wxPdfDC::wxPdfDC(wxPdfDocument *,double,double)' : impossible de trouver la fonction membre surchargée dans 'wxPdfDC'
C:\wx\include\wx/pdfdc28.h(17) : voir la déclaration de 'wxPdfDC'
c:\wxpdfdoc\src\pdfdc28.inc(81) : error C2065: 'm_templateMode' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(154) : error C2065: 'm_templateMode' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(175) : error C2065: 'm_templateMode' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(187) : error C2065: 'm_templateMode' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(877) : error C2065: 'm_templateMode' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(879) : error C2065: 'm_templateWidth' : identificateur non déclaré
c:\wxpdfdoc\src\pdfdc28.inc(880) : error C2065: 'm_templateHeight' : identificateur non déclaré
NMAKE : fatal error U1077: '"c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN
\cl.EXE"' : code retour '0x2'
Stop.


Mais, toujours pas de résultat positif !
----------
Pour la version 0.9.1.2, à part 2 warnings, rien de spécial sauf la dernière ligne :

Code:

NMAKE : fatal error U1077: '"c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\link.EXE"' : code retour '0x450'
Stop.

Dernière modification par Berti (19-08-2012 23:55:03)

20-08-2012 00:32:09  Re: Comment installer wxpdfdoc ? #10
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
C'est vraiment bizarre.
Je serais tenté de dire que le problème vient de Visual C++ lui-même, mais j'en doute étant donné que pour la version 0.9.12, je l'avais compilée avec Visual C++ 2008 Express.

Juste une petite vérification quand même : est-ce que pour lancer la compilation en ligne de commande tu es bien passé par le raccourci spécifique "Invite de commande de Visual..." (ou un truc de ce genre) ?

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
20-08-2012 10:29:30  Re: Comment installer wxpdfdoc ? #11
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Oui, pas de soucis, j'ai utilisé l'invite de commandes de Visual Studio 2008 !

Pour info, j'ai essayé de refaire ce que j'ai indiqué dans la fin du post précédent avec visual c++ 2010 et j'ai le même problème et le même message (sauf qu'on a cette fois-ci : NMAKE : fatal error U1077: '"c:\Program Files\Microsoft Visual Studio 10.0 ... ).

C'est la version express de visual c++ que j'utilise chaque fois !

A+
----------
il semble que le problème se situe au niveau du fichier pdfdc28.inc.

les messages d'erreurs commencent comme ceci :

Code:

c:\wxpdfdoc\src\pdfdc28.inc(62) : error C2511: 'wxPdfDC::wxPdfDC(wxPdfDocument *,double,double)' : impossible de trouver la fonction membre surchargée dans 'wxPdfDC'
C:\wx\include\wx/pdfdc28.h(17) : voir la déclaration de 'wxPdfDC'
c:\wxpdfdoc\src\pdfdc28.inc(74) : error C2065: 'm_templateMode' : identificateur non déclaré


PS : je ne sais pas si cela sert à quelque chose de lister l'ensemble du texte donné en ligne de commandes...

Dernière modification par Berti (20-08-2012 11:09:06)

20-08-2012 11:30:47  Re: Comment installer wxpdfdoc ? #12
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Berti a écrit:
il semble que le problème se situe au niveau du fichier pdfdc28.inc
C'est bien pour ça que je te demandais d'en vérifier le contenu hier soir.

Mais c'est là que c'est bizarre : le fichier "pdfdc28.inc" est bien appelé depuis "pdfdc.cpp", et il ne contient pas d'erreur.
De plus, le compilateur de met une erreur comme quoi il ne trouve pas l'implémentation d'un fonction membre de la classe wxPdfDC en te donnant le fichier et la ligne dans laquelle elle se trouve : c'est à n'y rien comprendre.

Est-ce que tu peux poster le début du fichier "makefile.vc" (la partie paramétrable) : on ne sait jamais, ainsi que la ligne de commande utilisée.

Et avec l'IDE, tu obtiens quoi comme erreurs ? Les mêmes ?

Berti a écrit:
PS : je ne sais pas si cela sert à quelque chose de lister l'ensemble du texte donné en ligne de commandes...
Non. Pour ma part, j'ai tendance à traiter un problème à la fois, donc, tant que cette erreur n'est pas résolue, ça ne sert à rien d'aller plus loin.

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
20-08-2012 15:06:50  Re: Comment installer wxpdfdoc ? #13
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Hello, merci beaucoup pour cette belle ténacité !!! J'ai de la chance !

En fait, toutes les erreurs mentionnées lors de la compilation sont relatives au fichier pdfdc28.inc.

Voici donc la partie paramétrable de mon fichier makefile.vc

Code:

# C++ compiler 
CXX = cl
 
# Standard flags for C++
CXXFLAGS = /Zc:wchar_t-
 
# Standard preprocessor flags (common for CC and CXX)
CPPFLAGS =
 
# Standard linker flags
LDFLAGS =
 
# Use DLL build of wx library? [0,1]
#   0 - Static
#   1 - DLL
WX_SHARED = 0
 
# Use Unicode build of wxWidgets? [0,1]
#   0 - ANSI
#   1 - Unicode
WX_UNICODE = 1
 
# Use debug build of wxWidgets (linked with debug CRT)? [0,1]
#   0 - Release
#   1 - Debug
WX_DEBUG = 1
 
# Version of the wx library to build against.
WX_VERSION = 28
 
# Use monolithic build of wxWidgets? [0,1]
#   0 - Multilib
#   1 - Monolithic
WX_MONOLITHIC = 1
 
# The directory where wxWidgets library is installed
WX_DIR = $(WXWIN)
 
# Build this wxCode component as DLL or as static library? [0,1]
#   0 - Static
#   1 - DLL
SHARED = 0

Je compile via la ligne de commandes de visual c++ 2008 express :
nmake.exe -f makefile.vc

Avec l'IDE de visual c++ 2008 express j'ai le choix de prendre wxpdfdoc_vc6.sln, wxpdfdoc_vc7.sln, wxpdfdoc_vc8.sln ou wxpdfdoc_vc9.sln pour générer la solution.

En utilisant wxpdfdoc_vc6.sln et les options STATIC UNICODE DEBUG MONOLITHIC STATIC/WIN32, j'obtiens en sortie, entre autres, les messages d'erreurs déjà mentionnés et ========== Génération : 0 a réussi, 5 a échoué, 0 mis à jour, 0 a été ignoré ==========. Sinon, rien de nouveau me semble-t-il... Le log indique en fin de fichier : minimal - 1 erreur(s), 1 avertissement(s)

Voilà pour l'instant. Courage !
20-08-2012 21:31:42  Re: Comment installer wxpdfdoc ? #14
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Ben alors là, c'est à n'y rien comprendre :/

Je viens pourtant de refaire le test en entier, et aucun soucis :

- Décompression de l'archive wxPdfDoc
- Ouverture du fichier "build/makefile.vc"
- Modification de "CXXFLAGS = /Zc:wchar_t-"
- Modification de "WX_MONOLITHIC = 1"
- Ouverture de l'invite de commande de Visual Studio 2010
- Changement de répertoire pour se placer dans le dossier "build" de wxPdfDoc
- Lancement de la commande "nmake -f makefile.vc"

La compilation de la lib et des exemples se fait sans problème.

Ensuite, test avec l'IDE :
- Suppression des dossiers "build/vcmswud" et "lib/vc_lib" créés par le build précédent
- Ouverture de l'IDE Visual C++ 2010 Express
- Ouverture du fichier solution "build/wxpdfdoc_vc9.sln"
- Conversion du fichier solution et des fichiers projet
- Sélection de la configuration "Static Unicode Debug Monolithic Static"
- Modification de l'option concernant les wchar_t pour les 5 projets
- Génération de la solution

A part quelques warnings (un peu bizarre, d'ailleurs), tout passe correctement.
Voici le log de compilation :

Code:

1>------ Début de la génération : Projet : pdfdoc, Configuration : Static Unicode Debug Monolithic Static Win32 ------
1>  pdfannotation.cpp
1>  pdfbarcode.cpp
1>  pdfcffdecoder.cpp
1>  pdfcffindex.cpp
1>  pdfcolour.cpp
1>  pdfdc.cpp
1>  pdfdecode.cpp
1>  pdfdocument.cpp
1>  pdfencoding.cpp
1>  pdfencrypt.cpp
1>  pdffont.cpp
1>  pdffontdata.cpp
1>  pdffontdatacore.cpp
1>  pdffontdataopentype.cpp
1>  pdffontdatatruetype.cpp
1>  pdffontdatatype0.cpp
1>  pdffontdatatype1.cpp
1>  pdffontdescription.cpp
1>  pdffontdetails.cpp
1>  pdffontextended.cpp
1>  pdffontmanager.cpp
1>  pdffontparser.cpp
1>  pdffontparsertruetype.cpp
1>  pdffontparsertype1.cpp
1>  pdffontsubsetcff.cpp
1>  pdffontsubsettruetype.cpp
1>  pdffontvolt.cpp
1>  pdfform.cpp
1>  pdfgradient.cpp
1>  pdfgraphics.cpp
1>  pdfimage.cpp
1>  pdfkernel.cpp
1>  pdflayer.cpp
1>  pdfobjects.cpp
1>  pdfocg.cpp
1>  pdfparser.cpp
1>  pdfpattern.cpp
1>  pdfprint.cpp
1>  pdfrijndael.cpp
1>  pdftemplate.cpp
1>  pdfutility.cpp
1>  pdfxml.cpp
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(1151,5): warning MSB8012: TargetPath(C:\Dev\wxpdfdoc-0.9.3\build\..\lib\vc_lib\pdfdoc.lib) ne correspond pas à la valeur de la propriété OutputFile (C:\Dev\wxpdfdoc-0.9.3\lib\vc_lib\wxcode_msw28ud_pdfdoc.lib) de Library. Cela peut entraîner une génération incorrecte de votre projet. Pour corriger ce problème, vérifiez que les valeurs des propriétés $(OutDir), $(TargetName) et $(TargetExt) correspondent à la valeur spécifiée dans %(Lib.OutputFile).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(1153,5): warning MSB8012: TargetName(pdfdoc) ne correspond pas à la valeur de la propriété OutputFile (wxcode_msw28ud_pdfdoc) de Library. Cela peut entraîner une génération incorrecte de votre projet. Pour corriger ce problème, vérifiez que les valeurs des propriétés $(OutDir), $(TargetName) et $(TargetExt) correspondent à la valeur spécifiée dans %(Lib.OutputFile).
1>  wxpdfdoc_vc9_pdfdoc.vcxproj -> C:\Dev\wxpdfdoc-0.9.3\build\..\lib\vc_lib\pdfdoc.lib
2>------ Début de la génération : Projet : dcsample, Configuration : Static Unicode Debug Monolithic Static Win32 ------
3>------ Début de la génération : Projet : minimal, Configuration : Static Unicode Debug Monolithic Static Win32 ------
4>------ Début de la génération : Projet : makefont, Configuration : Static Unicode Debug Monolithic Static Win32 ------
5>------ Début de la génération : Projet : showfont, Configuration : Static Unicode Debug Monolithic Static Win32 ------
4>  makefont.cpp
2>  printing.cpp
5>  showfont.cpp
3>  attachment.cpp
3>  barcodes.cpp
3>  bookmark.cpp
3>  charting.cpp
3>  cjktest.cpp
3>  clipping.cpp
3>  drawing.cpp
3>  glyphwriting.cpp
4>..\makefont\makefont.cpp(1594): warning C4189: 'hasEnc' : variable locale initialisée mais non référencée
4>..\makefont\makefont.cpp(1593): warning C4189: 'hasFont' : variable locale initialisée mais non référencée
4>..\makefont\makefont.cpp(1595): warning C4189: 'hasPatch' : variable locale initialisée mais non référencée
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Dev\wxpdfdoc-0.9.3\build\..\samples\pdfdc\dcsample.exe) ne correspond pas à la valeur de la propriété OutputFile (C:\Dev\wxpdfdoc-0.9.3\samples\pdfdc\printing.exe) de Linker. Cela peut entraîner une génération incorrecte de votre projet. Pour corriger ce problème, vérifiez que les valeurs des propriétés $(OutDir), $(TargetName) et $(TargetExt) correspondent à la valeur spécifiée dans %(Link.OutputFile).
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(992,5): warning MSB8012: TargetName(dcsample) ne correspond pas à la valeur de la propriété OutputFile (printing) de Linker. Cela peut entraîner une génération incorrecte de votre projet. Pour corriger ce problème, vérifiez que les valeurs des propriétés $(OutDir), $(TargetName) et $(TargetExt) correspondent à la valeur spécifiée dans %(Link.OutputFile).
3>  gradients.cpp
3>  indicfonts.cpp
3>  jsform.cpp
5>  wxpdfdoc_vc9_showfont.vcxproj -> C:\Dev\wxpdfdoc-0.9.3\build\..\showfont\showfont.exe
2>  wxpdfdoc_vc9_dcsample.vcxproj -> C:\Dev\wxpdfdoc-0.9.3\build\..\samples\pdfdc\dcsample.exe
4>  wxpdfdoc_vc9_makefont.vcxproj -> C:\Dev\wxpdfdoc-0.9.3\build\..\makefont\makefont.exe
3>  kerning.cpp
3>  labels.cpp
3>  layers.cpp
3>  minimal.cpp
3>  protection.cpp
3>  rotation.cpp
3>  templates.cpp
3>  transformation.cpp
3>  transparency.cpp
3>..\samples\minimal\templates.cpp(113): warning C4189: 'pages' : variable locale initialisée mais non référencée
3>  tutorial1.cpp
3>  tutorial2.cpp
3>  tutorial3.cpp
3>  tutorial4.cpp
3>  tutorial5.cpp
3>  tutorial6.cpp
3>  tutorial7.cpp
3>  wmf.cpp
3>  xmlwrite.cpp
3>  wxpdfdoc_vc9_minimal.vcxproj -> C:\Dev\wxpdfdoc-0.9.3\build\..\samples\minimal\minimal.exe
========== Génération : 5 a réussi, 0 a échoué, 0 mis à jour, 0 a été ignoré ==========


Je ne sais plus trop où chercher.
Peut-être qu'en recompilant tes libs (ça m'étonne quand même, mais il faut tout tester).
C'est chiant à tester parce que la compilation est longue, mais dis-toi que ça pourrait être plus long (essayes avec MinGW, tu comprendras...)

- Fais une sauvegarde du dossier "$WXWIN\lib\vc_lib" en le renommant par exemple, comme ça, tu pourras le restaurer si besoin.
- Assures-toi que le dossier "$WXWIN\build\msw" ne contient pas de sous-dossier : s'il y en a un , supprime-le (il contient les fichiers objets temporaires de la compilation)
- Ouvres l'invite de commande de Visual Studio, et change de répertoire pour être dans le dossier "$WXWIN\build\msw"
- Relances la compilation avec la commande : "nmake -f makefile.exe CXXFLAGS=/Zc:wchar_t- BUILD=debug UNICODE=1 MONOLITHIC=1 SHAREd=0"
- Lorsque c'est fait, sans fermer l'invite de commande, places-toi dans le dossier "wxPdfDoc/build" et relances la compilation.

Et tiens moi au courant du résultat....

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
21-08-2012 11:35:50  Re: Comment installer wxpdfdoc ? #15
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Cher Xaviou,

C'est en regardant la fin de ton dernier post que ça a fait "tilt" !!!
J'ai bien utilisé l'option "CXXFLAGS = /Zc:wchar_t-" pour compiler chaque fois les composants wxpdfdoc mais je ne l'avais pas fait pour compiler la bibliothèque wxWidgets !!!

Tout est maintenant ok, en utilisant visual c++ 2008 express ou 2010 express en ligne de commandes !

Comme commentionné, wxpdfdoc ne compile pas en utilisant l'EDI de visual c++ 2010; maintenant j'ai néanmoins une erreur si j'utilise l'EDI de visual c++ 2008 pour compiler wxpdfdoc ! Mais tant pis... ça marche en ligne de commandes.

Cher Xaviou, MERCI pour ta disponibilité, ta réactivité et tes compétences !!!

Au plaisir de te lire sur ce site

Berti
21-08-2012 13:59:56  Re: Comment installer wxpdfdoc ? #16
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Bon, ben ça, c'est une bonne nouvelle.

Berti a écrit:
Comme commentionné, wxpdfdoc ne compile pas en utilisant l'EDI de visual c++ 2010
Si, si, je persiste à maintenir que ça marche sans problème :
Xaviou a écrit:
Ensuite, test avec l'IDE :
- Suppression des dossiers "build/vcmswud" et "lib/vc_lib" créés par le build précédent
- Ouverture de l'IDE Visual C++ 2010 Express
- Ouverture du fichier solution "build/wxpdfdoc_vc9.sln"
- Conversion du fichier solution et des fichiers projet
- Sélection de la configuration "Static Unicode Debug Monolithic Static"
- Modification de l'option concernant les wchar_t pour les 5 projets
- Génération de la solution
J'ai bel et bien utilisé la version 2010 et ça a marché.
Le log de compilation de mon post précédent concernait justement cette méthode.

Bref, l'essentiel, c'est que tu y soit arrivé.

Bonne continuation avec wxWidgets, et @+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
21-08-2012 15:09:52  Re: Comment installer wxpdfdoc ? #17
Berti (Membre)
Inscrit le : 19-08-2012
Messages: 15
Snippets: 0
Tutoriels: 0
Hors ligne
Hello,

tu as raison (encore !). Avec le fichier solution wxpdfdoc_vc9 l'EDI de visual c++ 2010 génère les libs (j'avais essayé avec le fichier wxpdfdoc_vc6) !

Merci !
Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Compilation - Installation - Réglages IDE
» Comment installer wxpdfdoc ?