Voir la version complète : Sxdl et devcpp - Compilation unicode
Salut me revoilà ! Ca fait un moment.
J'ai installé la toute derniere version de sxdl et je me suis mis sur devcpp. J'ai un petit problème du coup.
Lorsque je compile mon projet, il me dit que je dois compiler en unicode. Très bien, je vais donc voir dans les options de compilation de devcpp et je ne vois rien. Je vais voir sur google et je ne trouve rien pour mon cas.
Donc, ami(e)s utilisateur(trice)s de devcpp savez-vous ce que je dois faire ?
Merci beaucoup.
@ Bientôt !
Aie Aie Aie, personne n'utilise donc dev-cpp...
Bon, je vais continuer de chercher, Visual Studio Express Beta 2 demande l'installation du SP2 de windows XP et ça c'est hors de question... :00000010:
@+
Personne qui n'est passé dans le court temps que tu as laissé pour répondre en tout cas.
Personne avec la solution du moins.
Oui c'est sur, mais le sujet est toujours ouvert ;) On peut donc toujours me répondre.
Je vais me coucher ! Bonne nuit tout le monde !
rajoute un
#define UNICODE
#define _UNICODE
dans stdafx.h
LaurentUSA
01/06/2005, 05h37
Exotux : Merci de reposter ici si le conseil donné par MickaGL fonctionne bien pour toi. Je le mettrai alors la soluce dans la FAQ.
MickaGL : Tu as essayé et ca marche ?
Je vais tester ça dès que je rentre. Je suis au boulot là.
Je vous tiens au courant.
@+ et merci !
euh... J'ai beaucoup de stdafx.h sur mon système :00000010: . Je pense que celui qui m'interesse est celui présent dans le répertoire SXDL ?
Si c'est bien celui là ca ne marche pas. :00000012:
LaurentUSA
01/06/2005, 15h01
Si cela doit marcher, les define's doivent etre places en tout premier.
C'est ce que j'ai fait et cela ne marche pas.
Du coup j'ai installé vs studio beta 2 et donc toute la bipbipbip qui va avec.
J'ai installé le framework .net 1.1 et le sdk de dx9 (fev. 2005).
Et j'ai le meme message que les autres mais au moins, pour l'unicode, c'est règlé :
fatal error C1083: Cannot open include file: 'objbase.h': No such file or directory
Quand je fais une recherche du fichier objbase.h je le trouve uniquement dans le repertoire de dev-cpp.
Un post concernant la configuration de VS Studio Beta 2005 indique qu'il faut télécharger le microsoft windows sdk. J'ai rien trouvé de tel sur le site de l'éditeur.
Voilà. Si quelqu'un peux m'aider un peu...
@+
Lenolian
01/06/2005, 15h17
En cherchant platform SDK sur msdn tu devrais trouvé ce que tu cherches.
EDIT : le lien (http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en) exacte. et tu auras besoin aussi des extras (http://www.microsoft.com/downloads/details.aspx?FamilyID=8af0afa9-1383-44b4-bc8b-7d6315212323&DisplayLang=en) de l'update de février du SDK DirectX pour faire tourner SxDL.
J'ai bien trouvé, téléchargé et installé le plateform sdk.
J'ai aussi téléchargé les extras directx que j'ai placés dans le répertoire d'installation du sdk directx.
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Extras
Merci pour tout ca déjà.
Mais j'ai de nouveau un problème. Lorsque j'edite le fichier
..\Microsoft Visual Studio 8\VC\vcpackages\VCProjectEngine.Dll.Express.Config
comme indiqué, je ne trouve pas la section ressource (voir ci dessous) :
<?xml version="1.0" encoding="utf-8"?>
<VCPlatformConfigurationFile
Version="8.00"
>
<Platform
Name="VCProjectEngine.dll"
Identifier="Win32"
>
<Directories
Include="C:\Program Files\Microsoft Platform SDK\Include;$(VCInstallDir)include;$(VCInstallDir)PlatformSDK\include;$(FrameworkSDKDir)include"
Library="C:\Program Files\Microsoft Platform SDK\Lib;$(VCInstallDir)lib;$(VCInstallDir)PlatformSDK\lib;$(FrameworkSDKDir)lib;$(VSInstallDir);$(VSInstallDir)lib"
Path="$(VCInstallDir)bin;$(VCInstallDir)PlatformSDK\bin;$(VSInstallDir)Common7\Tools\bin;$(VSInstallDir)Common7\tools;$(VSInstallDir)Common7\ide;$(ProgramFiles)\HTML Help Workshop;$(FrameworkSDKDir)bin;$(FrameworkDir)$(FrameworkVersion);$(VSInstallDir);$(PATH)"
Reference="$(FrameworkDir)$(FrameworkVersion)"
Source="$(VCInstallDir)crt\src"
/>
</Platform>
</VCPlatformConfigurationFile>
J'ai bien ajouter les includes et les libs comme il se doit je crois.
De plus, je ne trouve pas le fichier .dat qu'il faut supprimer...
<Drive>:\Documents and Settings\exotux\Local Settings\Application Data\Microsoft\VCExpress\8.0\V CComponents.dat
Donc pour terminer rien ne marche :(
Lenolian
01/06/2005, 18h43
Concernant les ressources, c'est bizarre. Je vais regarder de plus près.
Sinon le fichier à effacer est caché par défaut, donc il faut activer l'option voir les fichiers cachés.
Sinon si l'edit du fichier de config pose problème, tu peux toujours spécifier directement dans les options du projets les chemins vers les includes, libs, et ressources.
pour les includes :
Property pages -> Configuration Properties -> C/C++ -> general -> Additional Include Directories
pour les libs :
Property pages -> Configuration Properties -> Linker -> general -> Additional Include Directories
pour les resources :
Property pages -> Configuration Properties -> Resources -> general -> Additional Include Directories
Pour ce qui concerne Dev-Cpp, modifier le fichier stdafx.h ne suffit pas. Ca corrige que l'erreur concernant:
#ifndef UNICODE
#error "The sample framework requires a Unicode build. If you are using Microsoft Visual C++ .NET, under the General tab of the project properties change the Character Set to 'Use Unicode Character Set'."
#endif
Pour le placement du #define UNICODE, moi je l'ai mis ici:
...
#pragma warning ( disable : 4312 ) // 'type cast' : conversion from 'int' to 'void *' of greater size ( Win 64 )
#pragma warning ( disable : 4530 ) // C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
#define UNICODE <---
#define _UNICODE <---
// New Framework includes
#include "DXUT.h"
...
En fait, il faux adapter le DxFramework à Dev-Cpp. SxDL, lui, compile sans problème.
Je pense que mon installation de VC++ beta2 est corrompue. C'est pas normal que j'ai pas les mêmes fichiers que toi Lenolian. Donc j'ai tout désinstaller et je réinstalle. J'en profite pour choper la dernière version de SxDL.
J'espère que ca va marcher j'en est trop marre la....
Pour devCpp je laisse tomber, je voulais eviter d'installer le sp2 de windows mais maintenant c'est fait alors... Merci Mickagl en tout cas ;)
Je vous tiens au courrant
Lenolian
04/06/2005, 11h18
Hmm oui excuse, j'ai oublié de regarder .
Donc je viens de réinstaller Visual C++ Express 2005, et la à ma plus grande surprise la section resource du fichier VCProjectEngine.dll.express.Config n'est plus là... Pourtant je l'ai installé à partir de la même image CD que précédemment, va savoir.
Voilà ce qui msdn pour ajouter et modifier les répertoires de recherches de Visual :
1) utiliser les variables d'environnements.
* Ouvrir Panneau de configuration -> Système
* Aller à l'onglet Avancé et clicker sur Variables d'environnements
* Ajouter une variable INCLUDE avec tous les chemins vers les répertoires d'include
* Ajouter une variable LIB avec tous les chemins vers les répertoires de .lib
* Appliquer les changements
* Lancer Visual Studio et ouvrir la fenêtre de config du projet
* Dans C++/General/Additional Include Directories, ajouter $INCLUDE
* Dans Linker/General/Additional Libraries Directories, ajouter $LIB
Ca devrait compiler.
2) Modifier le fichier VCProject.dll.Express.Config
* Fermer Visual
* Ouvrir le fichier VCProjectEngine.dll.express.config, situé dans le sous-répertoire .\vc\vcpackages du répertoire d'installation de Visual
* Ajouter les répertoires désirés dans les sections correspondantes
* Sauvegarder le fichier.
* Effacer le fichier VCComponents.dat du répertoire <Drive>:Documents and Settings\<user name>\Local Settings\Application Data\Microsoft\VCExpress\8.0
* Relancer Visual
Ca devrait compiler aussi.
A aucun moment ils ne parlent des répertoires de ressources, mais je pense qu'ajouter une variable d'environnements RESOURCE et l'ajouter dans les options de projets. Peut-être que l'on peut ajouter directement le champ Resource au fichier de config (à noter que resource ne prend qu'un S en anglais). Je vais tester cela tout de suite.
Lenolian
04/06/2005, 11h59
Voilà exactement ce que j'ai fait pour compiler SxDL 3.1 :
* Editer le fichier VCProjectEngine.dll.Config
* Ajouter E:\Microsoft SDK\include;E:\Librairies\C++\DirectShow\Include;E:\Microsoft DirectX 9.0 SDK (April 2005)\Include
au paramêtre Include.
* Ajouter E:\Microsoft SDK\Lib;E:\Librairies\C++\DirectShow\Lib\x86;E:\Microsoft DirectX 9.0 SDK (April 2005)\Lib\x86 au paramêtre Library.
* Sauver le fichier
* Recommencer l'opération avec le fichier VCProjetEngine.dll.Express.Config
* Effacer le fichier VCComponent.dat comme indiqué dans le poste ci-dessus
* Relancer Visual et compiler.
Ca a marché chez moi, sans même avoir à ajouter le répertoire des ressources. Compilé LibSxDL, EmptyProject et Fireworks sans problème.
PS: remplacer les répertoires des includes/libs par les tiens evidemment.
PS2: surtout ne pas oublier le sous-répertoire /x86 pour les libs DirectX, puisqu'elles existent aussi pour les PC 64bits dans le répertoire /x64.
Je repart dans une réinstallation complète pour être propre et je te tiens au courant. Merci pour ce post et pour le temps que tu m'accordes.
vBulletin® v.3.6.5, Copyright ©2000-2009, Jelsoft Enterprises Ltd. Tous droits réservés - Version française vbulletin-fr.org