See site in english Voir le site en francais
Website skin:
home  download  forum  link  contact

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Author Topic: Cours sur le C++ (ShuttlePB) unresolved external symbol __DllMainCRTStartup@12  (Read 7426 times)

0 Members and 1 Guest are viewing this topic.

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
30 November 2008, 22:00:40
En suivant le cours de DAN concernant comment compiler un module en C++ avec le ShuttlePB.

En mode debug.... je n'ai aucun problème et quand je passe en mode release ... J'ai le problème suivant

:worry:  unresolved external symbol __DllMainCRTStartup@12 :worry:  



------ Rebuild All started: Project: ShuttlePB, Configuration: Release Win32 ------
Deleting intermediate and output files for project 'ShuttlePB', configuration 'Release|Win32'
Compiling...
ShuttlePB.cpp
Linking...
   Creating library .\..\..\..\Modules/ShuttlePB.lib and object .\..\..\..\Modules/ShuttlePB.exp
ShuttlePB.obj : error LNK2001: unresolved external symbol "const type_info::`vftable'" (??_7type_info@@6B@)
ShuttlePB.obj : error LNK2019: unresolved external symbol "void __cdecl operator delete(void *)" (??3@YAXPAX@Z)
referenced in function "public: virtual void * __thiscall LaunchpadItem::`scalar deleting destructor'(unsigned int)" (??
_GLaunchpadItem@@UAEPAXI@Z)
ShuttlePB.obj : error LNK2019: unresolved external symbol "void __cdecl operator delete[](void *)" (??
_V@YAXPAX@Z) referenced in function "public: virtual void * __thiscall LaunchpadItem::`vector deleting
destructor'(unsigned int)" (??_ELaunchpadItem@@UAEPAXI@Z)
ShuttlePB.obj : error LNK2019: unresolved external symbol "void __stdcall `eh vector destructor iterator'(void
*,unsigned int,int,void (__thiscall*)(void *))" (??_M@YGXPAXIHP6EX0@Z@Z) referenced in function "public: virtual void
* __thiscall LaunchpadItem::`vector deleting destructor'(unsigned int)" (??_ELaunchpadItem@@UAEPAXI@Z)
ShuttlePB.obj : error LNK2001: unresolved external symbol __fltused
ShuttlePB.obj : error LNK2001: unresolved external symbol __purecall
ShuttlePB.obj : error LNK2019: unresolved external symbol "void * __cdecl operator new(unsigned int)" (??
2@YAPAXI@Z) referenced in function _ovcInit
LINK : error LNK2001: unresolved external symbol __DllMainCRTStartup@12



Que faire ?



Message modifié ( 30-11-2008 22:10 )

Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline MartySpaceLines

  • Legend
  • ******
  • Posts: 1096
  • Karma: 0
Reply #1 - 30 November 2008, 22:39:18
**J'y connais pas grand-chose mais j'essaie quand-même**

Quand tu fais les link vers les différentes librairies, il faudrait pas peut-être le faire pour tous les modes, et pas
seulement 'debug'?? (propriétés du projet -> truc "mode" en haut à gauche de la fenêtre)


@++

MSL  


Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #2 - 01 December 2008, 04:12:58
manque lib a mon avis... orbitersdk ou autre. pas le temps de regarder désolé.
compare avec le débug et rgarde celle qui manque...


Dan


Offline no matter

  • Legend
  • ******
  • Posts: 2826
  • Karma: 1
Reply #3 - 01 December 2008, 13:52:45
Rien de très grave, comme dit Dan, c'est probablement une lib qui n'est pas linkée.

Compare entre debug et release, n'hésite pas à fouiller le fichier .vcproj de ta solution si tu ne trouves pas la lib
manquante en fouillant parmis "l'eclatitude" des boites de dialogue de VC++.


------------

no matter.

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #4 - 01 December 2008, 16:41:15
faut voir ca dans le menu "project" proprieté de... etc etc...

Dan


Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #5 - 01 December 2008, 18:53:20
En passant.... c'est un cours extrêmement utile pour moi. Cela me permet de tester un DLL.... autre que celui proposé.

Je vais re-vérifier ce soir. Je sais que j'ai fait exactement la même chose qu'avec DEBUG (j'ai suivi le cours avec minutie).

Dire qu'en mode DEBUG.... tout est ok.... bizarre.



Message modifié ( 01-12-2008 18:55 )

Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline Papyref

  • Legend
  • ******
  • Posts: 5341
  • Country: France fr
  • Karma: 341
  • Je suis dans la Lune ne pas me déranger
Reply #6 - 02 December 2008, 10:38:25
En faisant mes réglages exactement de la même façon entre debug et release je compile sans problème mon dll de
Hercule sur lequel je m'entraine.
Il faut faire très attention à la définition des librairies Include et exclude. VC++ ne pardonne aucune erreur de
syntaxe !

:sage: Papyref


Offline Apofis

  • Sr. Member
  • ****
  • Posts: 349
  • Karma: 0
Reply #7 - 02 December 2008, 13:31:15
Quote
Papyref a écrit:
 VC++ ne pardonne aucune erreur de syntaxe ! :sage: Papyref

perso je dirai la programmation en générale ne pardonne aucune erreur de syntaxe. Petit exemple,je ne sais plus exactement de quelle sonde il s'agissait mais dans le
code un "." fut remplacé par ",". résultat : crash de la sonde.

comme quoi tout ne tiens vraiment a rien en programmation ;)


"Oups c quoi se bruit" Fred Haise, apollo 13 :P

Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #8 - 03 December 2008, 18:02:50
^J'ai xactement le même soucis, si ça peut te consoler ... ;) si je trouve, je le fais savoir



Offline no matter

  • Legend
  • ******
  • Posts: 2826
  • Karma: 1
Reply #9 - 03 December 2008, 19:03:57
toujours pas réglé? ShuttlePB basique ou tu as rajouté des trucs?

regarde si une de celles-ci ne causerait pas le soucis:

kernel32.lib user32.lib gdi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winspool.lib
comdlg32.lib advapi32.lib

ajoutes-les une par une aux "additional dependencies"... desolé version english chez moi!!!



Pour "ПК" j'ai ceci dans ma solution:

AdditionalDependencies="gdi32.lib user32.lib odbc32.lib odbccp32.lib "
et
IgnoreDefaultLibraryNames="msvcrt.lib;msvcirt.lib"

Regarde également si tes libs venant du SDK orbiter (orbiter.lib et orbiterSDK.lib) sont dans ta soluce?



Message modifié ( 03-12-2008 19:13 )

------------

no matter.

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #10 - 04 December 2008, 13:53:39
Je vais regarder cela ce soir. Merci de vos judicieux conseils.


Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #11 - 05 December 2008, 01:21:44
Non... il y a rien a faire. :wall:

Je suis partis d'une version vierge d'Orbiter.... pas rien de mieux.

A moi qu'un généreux puisse me fournir un fichier ShuttlePB.sln (solution de visual studio 2005). Je pourrais essayer
de mon bord si cela fonctionne. En me donnant votre fichier solution et le chemin de votre répertoire Orbiter (genre, si
c'est c:\orbiter ou d:\orbiter ou d:\jeux\orbiter....

J'essayerais de me créer un même répertoire (comme vous) afin de voir si cela fontionne chez moi.

MERCI !

P.S: En passant, j'utilise une version anglaise de visual studio 2005 tel que No Matter.


Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline no matter

  • Legend
  • ******
  • Posts: 2826
  • Karma: 1
Reply #12 - 05 December 2008, 02:15:27
Je t'envoie çà par mail ;)


------------

no matter.

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #13 - 05 December 2008, 03:41:19
OK... j'ai copié intégralement ce que tu m'a fourni dans :

D:\Orbiter\Orbitersdk\samples\ShuttlePB

J'ai recompilé en release et il y avais des des erreurs:

1-il  manquais le chemin afin de trouver les OrbiterSoundSDK35.h et OrbiterSoundSDK35.lib que j'ai ajouté
dans Tools/Options  soit les D:\Orbiter\Sound\OrbiterSound_SDK\VESSELSOUND_SDK\ShuttlePB_project

2-En recompilant, il y avais encore des erreurs et, j'ai ajouté dans les fichiers à ignorer tel que:
msvcrt.lib;msvcirt.lib;LIBCMT.lib

3-Finalement, j'ai recompilé et cela me donne les erreurs que je t'ai envoyé par courriel

______________________
Petit coquin, En passant, dans l'exemple de Dan, il demande de
Allez dans le repertoire "Samples/ShuttlePB" de la SDK et cliquez sur "ShuttlePB.dsw"

Toi, tu as sûrement utilisé la version de D:\Orbiter\Sound\OrbiterSound_SDK\VESSELSOUND_SDK\ShuttlePB_project à la place car, dans cette version, il demande le OrbiterSoundSDK35.... mais c'est pas grâve...

cela ne règle pas plus mon problème :sad:



Message modifié ( 05-12-2008 03:44 )

Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline no matter

  • Legend
  • ******
  • Posts: 2826
  • Karma: 1
Reply #14 - 05 December 2008, 05:43:18
Quote
Toi, tu as sûrement utilisé la version de D:\Orbiter\Sound\OrbiterSound_SDK\VESSELSOUND_SDK
\ShuttlePB_project à la place car, dans cette version, il demande le OrbiterSoundSDK35.... mais c'est pas grâve.
oops oui exact...

Quote
1-il manquais le chemin afin de trouver les OrbiterSoundSDK35.h et OrbiterSoundSDK35.lib que j'ai ajouté
dans Tools/Options soit les D:\Orbiter\Sound\OrbiterSound_SDK\VESSELSOUND_SDK\ShuttlePB_project
Particularité de mon install... dont j'aurais du te parler puisque orbitersound se trouve invité ;)

Quote
cela ne règle pas plus mon problème
Quote
2-En recompilant, il y avais encore des erreurs et, j'ai ajouté dans les fichiers à ignorer tel que:
msvcrt.lib;msvcirt.lib;LIBCMT.lib
... c'est étrange. Les libs à ignorer sont pourtant définies dans le fichier .vcproj, tu ne devrais pas avoir à les
rajouter en compilant ma solution :wonder: Ouvre le .sln pas le .dsw







Message modifié ( 05-12-2008 05:55 )

------------

no matter.

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #15 - 05 December 2008, 13:57:11
J'ai ouvert le sln car c'est la solution et il n'était pas là. Peut-être que ces information ne s'inscrivent pas dans le sln.

En passant, Je sais que le Dsw n'est pas bon.

Un jour, je trouverais ce problème. Je vais essayer d'en parler à des collègues de travail


Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #16 - 05 December 2008, 16:11:05
Rien à faire.... cela donne la même chose au bureau.... BOF


Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #17 - 05 December 2008, 18:40:36
J'aurais ta machine je trouverais en 5mn (l'experience) mais par forum c'est dur...

(cette minute de désespoir vous a été fournie gratuitement par les entrerpises dansteph & cie :badsmile: )

T'a une merde avec les libs, mauvaise declaration, mauvaise SDK, mauvais path etc etc...

Dan



Message modifié ( 05-12-2008 20:43 )


Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #18 - 06 December 2008, 16:49:55
En passant, je travaille avec le groupe de NASSP 7.0 à titre de programmeur depuis peu. Je suis en train de
développer autour d'un MFD de checklist (liste de contrôle)....

Je commence à être meilleur en C++. Au bureau, on utilise Borland et Power++ comme outil de développement et des
base de donnée BTrieve....

Dès lors, la solution NASSP 7.0 étant très stable, elle permet un Debug et un Release sans problème. J'ai essayé de
voir ce qu'il y avait de différence entre les paramètres de certains Projet de NASSP avec celui de ShuttlePB et j'ai mis
les mêmes paramètres.... et cela ne marche pas plus. Bizarre.....

Je ne peut pas mettre le doigt dessus.

Merci pour cette minute de désespoir et sûrtout qu'elle a été fourni gratuitement :badsmile:

Blagueur va ;)


Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #19 - 06 December 2008, 17:44:05
Autre chose.... je développe à 100% en C++ au bureau depuis mon début. Pas encore faire du C#.

J'aime bien le C++


Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #20 - 06 December 2008, 19:22:55
Laisse tomber le C#, c'est du .net propriétaire, malgré le nom ca n'a pas grand chose avoir avec le C++ qui est un
véritable language universel. (et n'écoute pas ceux qui disent que ca devrait remplacer le C++, regarde plutôt le
nombre de gens qui demandent "J'aimerais bien faire tel truc ou ceci en C#"  "ah ben désolé tu peux pas faut C++ !"

Même MS n'y crois pas, la SFK Fs est misérable en ce qui concerne le C#, tu peux rien faire avec (et surtout pas un
FsPX)

Dan

« Last Edit: 06 December 2008, 22:06:14 by DanSteph »

Offline Coussini

  • Legend
  • ******
  • Posts: 3161
  • Country: Canada ca
  • Karma: 28
Reply #21 - 06 December 2008, 22:06:14
Cher Dan, Si mon patron me demande un jour que je dois programmer en C#.... je ne dirais pas non et c'est normal.

Entre temps... je m'amuse avec C++ au travail et à la maison et je le trouve très très bien moi ce C++.... gna. ...
gna... ;)


« Last Edit: 06 December 2008, 22:06:14 by Coussini »
Coussini "Maître des liens"



Que dieu vous éloigne du Covid-19