Dafür müsste man erstmal Dein Projekt und Deine Umgebung kopiert haben.dani93 hat geschrieben:Sollte es jemand hinbekommen wäre das einen FAQ-Eintrag wert.
Mit Visual C++ kompilierte Programme weitergeben
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Mit Visual C++ kompilierte Programme weitergeben
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Mit Visual C++ kompilierte Programme weitergeben
Das war eher allgemein gemeint und nicht auf mein Projekt bezogen.Xin hat geschrieben:Dafür müsste man erstmal Dein Projekt und Deine Umgebung kopiert haben.dani93 hat geschrieben:Sollte es jemand hinbekommen wäre das einen FAQ-Eintrag wert.
Mein Projekt könnt ihr gerne haben. Ist aber nur C++ mit SDL, SDL_ttf und SDL_net. Und an SDL liegt es wahrscheinlich nicht.
Als Umgebung habe ich MS Visual C++ Express 2008 SP 1. Kopieren wäre da etwas aufwändiger
Ich hab sogar versucht das Programm mit wine zu starten:
Code: Alles auswählen
fixme:actctx:parse_assembly_elem wrong version for assembly manifest
fixme:actctx:parse_manifest_buffer failed to parse manifest L"c:\\pfadzum\\projekt\\Microsoft.VC90.CRT.manifest"
fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.VC90.CRT"
err:module:attach_process_dlls "MSVCR90.dll" failed to initialize, aborting
err:module:LdrInitializeThunk Main exe initialization for L"c:\\pfadzum\\programm.exe" failed, status c0000142
- cloidnerux
- Moderator
- Beiträge: 3123
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Mit Visual C++ kompilierte Programme weitergeben
Es kann auch daran liegen, das du das Projekt im Debug-Modus Kompilierst, wobei der Compiler automatisch Debug-Hilfen einbaut.
probeirs doch mal mit Dem Umstellen von Debug auf Relese, entweder oben im Menü oder unter den projekteigenschaften.
probeirs doch mal mit Dem Umstellen von Debug auf Relese, entweder oben im Menü oder unter den projekteigenschaften.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Mit Visual C++ kompilierte Programme weitergeben
Hab bereits zuvor beides probiert, immer mit dem gleichen Ergebnis.cloidnerux hat geschrieben:Es kann auch daran liegen, das du das Projekt im Debug-Modus Kompilierst, wobei der Compiler automatisch Debug-Hilfen einbaut.
probeirs doch mal mit Dem Umstellen von Debug auf Relese, entweder oben im Menü oder unter den projekteigenschaften.
- cloidnerux
- Moderator
- Beiträge: 3123
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Mit Visual C++ kompilierte Programme weitergeben
Ich habe noch das hier gefunden: http://www.gm-d.de/wbb/sonstiges/andere ... ss-progra/
Projekteigenschaften->Konfiguration->C/C++->Codegenerierung->Laufzeitbibilothek und dann auf Multithread.
Wenn das nciht geht musst du auf dienem Anderen Rechner mal die Visual C++ 2008 Resttributale Instalieren.
Projekteigenschaften->Konfiguration->C/C++->Codegenerierung->Laufzeitbibilothek und dann auf Multithread.
Wenn das nciht geht musst du auf dienem Anderen Rechner mal die Visual C++ 2008 Resttributale Instalieren.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Mit Visual C++ kompilierte Programme weitergeben
So will das Programm überhaupt nicht kompilieren/linken:cloidnerux hat geschrieben:Ich habe noch das hier gefunden: http://www.gm-d.de/wbb/sonstiges/andere ... ss-progra/
Projekteigenschaften->Konfiguration->C/C++->Codegenerierung->Laufzeitbibilothek und dann auf Multithread.
Code: Alles auswählen
1>msvcrt.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) ist bereits in LIBCMT.lib(typinfo.obj) definiert.
1>msvcrt.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) ist bereits in LIBCMT.lib(typinfo.obj) definiert.
1>msvcrt.lib(MSVCR90.dll) : error LNK2005: _isspace ist bereits in LIBCMT.lib(_ctype.obj) definiert.
1>msvcrt.lib(MSVCR90.dll) : error LNK2005: ___iob_func ist bereits in LIBCMT.lib(_file.obj) definiert.
1>msvcrt.lib(MSVCR90.dll) : error LNK2005: _fclose ist bereits in LIBCMT.lib(fclose.obj) definiert.
1>msvcrt.lib(MSVCR90.dll) : error LNK2005: _exit ist bereits in LIBCMT.lib(crt0dat.obj) definiert.
Da bleib ich lieber bei mingw, da muss ich auch nur eine zusätzliche DLL mitgeben.cloidnerux hat geschrieben:Wenn das nciht geht musst du auf dienem Anderen Rechner mal die Visual C++ 2008 Resttributale Instalieren.
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Mit Visual C++ kompilierte Programme weitergeben
Offensichtlich bindest Du so die gleichen Funktionen mehrfach ein. Also ist die Frage, ob Du die LibCMT.lib brauchst oder eine andere... Diejenige, die Du nicht brauchst, musst Du dann sperren. (Linker, Libs nicht verwenden: Libcmt.lib - bzw. die andere)dani93 hat geschrieben:So will das Programm überhaupt nicht kompilieren/linken:cloidnerux hat geschrieben:Ich habe noch das hier gefunden: http://www.gm-d.de/wbb/sonstiges/andere ... ss-progra/
Projekteigenschaften->Konfiguration->C/C++->Codegenerierung->Laufzeitbibilothek und dann auf Multithread.Code: Alles auswählen
1>msvcrt.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) ist bereits in LIBCMT.lib(typinfo.obj) definiert. 1>msvcrt.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) ist bereits in LIBCMT.lib(typinfo.obj) definiert. 1>msvcrt.lib(MSVCR90.dll) : error LNK2005: _isspace ist bereits in LIBCMT.lib(_ctype.obj) definiert. 1>msvcrt.lib(MSVCR90.dll) : error LNK2005: ___iob_func ist bereits in LIBCMT.lib(_file.obj) definiert. 1>msvcrt.lib(MSVCR90.dll) : error LNK2005: _fclose ist bereits in LIBCMT.lib(fclose.obj) definiert. 1>msvcrt.lib(MSVCR90.dll) : error LNK2005: _exit ist bereits in LIBCMT.lib(crt0dat.obj) definiert.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- cloidnerux
- Moderator
- Beiträge: 3123
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Mit Visual C++ kompilierte Programme weitergeben
Vielleicht wäre es hilfreich mal dein Komplettes projekt zu bekommen um es auf dem eigenen Rechner zu Compilieren.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Mit Visual C++ kompilierte Programme weitergeben
Ich hab keine Ahnung was libcmt oder "die andere" ist. Bewusst habe ich die nicht eingebunden. Ich hab ein paar Header mehrfach eingebunden, die haben aber alle eine Präprozessor-Bedingung, damit der Code nicht eingefügt wird.Xin hat geschrieben:Offensichtlich bindest Du so die gleichen Funktionen mehrfach ein. Also ist die Frage, ob Du die LibCMT.lib brauchst oder eine andere... Diejenige, die Du nicht brauchst, musst Du dann sperren. (Linker, Libs nicht verwenden: Libcmt.lib - bzw. die andere)
Ich habe jetzt alle Einstellungen zurückgesetzt, so dass man es kompilieren kann. Zum Kompilieren müssen SDL, SDL_ttf und SDL_net Header im include/SDL/-Verzeichnis liegen und die libs im libs/-Verzeichnis. Zum Ausführen des Programms außerhalb der IDE muss der Inhalt des Ordners "DLLs" ins Verzeichnis der exe kopiert werden. Das gleiche gilt für "arial.ttf" und "typing.bmp".cloidnerux hat geschrieben:Vielleicht wäre es hilfreich mal dein Komplettes projekt zu bekommen um es auf dem eigenen Rechner zu Compilieren.
Bugs sollten im Programm keine sein, aber einige Sachen sind nur halb fertig (z.B. kann man mehrzeiligen Text eingeben, bei der Ausgabe steht aber alles in einer Zeile) bzw. übers GUI noch nicht verfügbar. Der Ordnername ist eigentliche nur eine Abkürzung, trifft aber zurzeit auch auf den Code zu ^^
Aber hier gehts ja nicht um das was drinsteht sondern wie mans ausführt.
Link
- Dirty Oerti
- Beiträge: 2229
- Registriert: Di Jul 08, 2008 5:05 pm
- Wohnort: Thurndorf / Würzburg
Re: Mit Visual C++ kompilierte Programme weitergeben
Woran es liegt, dass du dein Programm nicht ausliefern kannst ist dir aber inzwischen klar, oder?
Es fehlt einfach die "Laufzeitumgebung" von Visual C++.
Dieser Compiler erstellt nämlich "optimierten" Code, der im Gegenzug dafür aber die CRT braucht.
Es fehlt einfach die "Laufzeitumgebung" von Visual C++.
Dieser Compiler erstellt nämlich "optimierten" Code, der im Gegenzug dafür aber die CRT braucht.
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne!
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.
Ich helfe gerne!
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.