Linkerror
-
hi ich bins schonwieder
ich will ja nicht penetrieren aber wenn ich compile kommt ein toller linkerror:msvcirtd.lib(msvcirtd.dll) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
so, also MSVCIRTD.lib und *.dll ist vorhanden un an der richtigen stelle (in den directories) und bei den project properties ist angegeben:
Target Machine: MachineX86 (/MACHINE:X86)
das kommische ist ja, mein programm hat bisher immer toll gearbeitet aber dann hab ich mal einfach eine ganz einfache klassenmethode ausgebaut und andere kleinere insignifikante dinge getan, wie: variablen deklarieren, funktionen definieren.
hab nicht konkret bei den *.obj-files verstellt oder so.header:
#pragma comment(lib, "opengl32.lib") #pragma comment(lib, "glu32.lib") #pragma comment(lib, "glut32.lib") #include <windows.h> #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <gl\gl.h> #include <gl\glu.h> #include <gl\glut.h>
PS: wenn das thema nicht zu "c++" passt, wo passt es dann hin?
danke für die bemühungen!
-
Hast du auf Debug und Release auf x86 gestellt?
Sonst könnte es noch sein, dass irgendwas, was du includest probleme macht. Also mal ein Projekt machen, dass nichts includet und schauen, ob es da kompilierbar ist.
-
wie meinst du das mit Debug un Release auf X86 stellen? wenn target auf x68 steht dann is doch das sowieso so oder?
oder wo kann man das verstellen?
-normales projekt geht aber ich hab keine seltenen header drin, nur normale wie conio, windows, string, stdio , ...
ich glaub ich steig um auf MAC! das geht einem ja auf die nerven^^ (oder LNX)und ich denke es liegt an msvcirtd.lib, weil sie wird ja in der errormeldung genannt. defekt?
#edit##
letzteres kann zu 90% nicht sein denn: 90% der errors sitzen vor dem bildschirm
-
Naja, in den Projekteinstllungen kannst du ja einstellen, ob du jetzt ein Debug oder ein Release Build haben willst. Und die haben hald verschiedene einstellungen. Glaube nicht, dass es das ist,aber es war ein Versuch.
Und ich muss deinem Edit eben zustimmen.
Also ein bisschen Einstellungen anschauen, oder neu installieren hilft meist.
-
mh aber warum gehen dann andere projecte. nun gut
der fehler steckt in include <fstream.h>
wenn ich das nicht includiere dann funktioniert das programm.
aber ich brauch es ja also includier es doch:
folge:c:\dokumente und einstellungen\drayss\eigene dateien\visual studio 2008\projects\vectorclasstester\vectorclasstester\3dmodels.h(116) : error C2872: 'ifstream' : ambiguous symbol
could be 'c:\programme\microsoft platform sdk\include\fstream.h(98) : ifstream'
or 'c:\programme\microsoft platform sdk\include\iosfwd(268): std::ifstream'joar da denk ich mir, ok , dann hängt ich einfach ein std:: davor un dann weis der compiler welsches fstream ich meine.
jetzt der nächste schinken:
3dmodels.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall std::basic_ifstream<char,struct std::char_traits<char> >::open(char const *,int)" (__imp_?open@?char_traits@D@std@@@std@@QAEXPBDH@Z) referenced in function "public: __thiscall CMD2Model::CMD2Model(char *,char *,unsigned int)" (??0CMD2Model@@QAE@PAD0I@Z)
C:\Dokumente und Einstellungen\Eigene Dateien\Visual Studio 2008\Projects\Main\Debug\VectorClassTester.exe : fatal error LNK1120: 1 unresolved externals.nur zur info, das is die klasse , und die methode "open" wird im klassenkonstruktor aufgerufen:
class CMD2Model { public: std::ifstream f_md2; CMD2Header header; int skins; CMD2Skin *skin; int texcoords; CMD2TexCoord *texcoord; int triangles; CMD2Triangle *triangle; int vertices; CTga tex; char *tex_filename; CMD2Frame *frame; int frames; char *filename; //// CMD2Model(char *arg_md2_filename,char *arg_texture_filename, unsigned int arg_tex_flag); ~CMD2Model();
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.