Ergebnis 1 bis 15 von 15
  1. #1
    ... Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Computer

    Hi!

    Ich hab ein ganzes einfaches Programm geschrieben mit der iostream und der ctime bibliothek!

    Wie kann ich das Programm so kompilieren dass es auf anderen Rechnern läuft (mit VS2010), ohne das ich .net oder vcredist oder sonstiges mist installieren muss!

    Ohne dieses zeug meckert er immer an ein paar dll's rum, die fehlen z.b. msvcp100.dll^^

    Wie kann ich das Programm nun kompilieren ohne diesen mist???

    -flasher

  2. #2
    Mitglied Avatar von Jodocus_
    Registriert seit
    Aug 2010
    Ort
    Groß Wasserland
    Beiträge
    338

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    >> Wie kann ich das Programm so kompilieren dass es auf anderen Rechnern läuft (mit VS2010), ohne das ich .net oder vcredist oder sonstiges mist installieren muss!

    Gar nicht.

    >> Ohne dieses zeug meckert er immer an ein paar dll's rum, die fehlen z.b. msvcp100.dll^^

    Sollte nur diese eine sein. Und die muss auf dem Zielrechner installiert sein. Oder du lieferst die DLL mit aus. Oder du kompilierst die CRT statisch in das Binary. Das sollte automatisch im Release-Modus passieren. (Debug-Modus auf anderen Computern macht nicht viel Sinn, zumal der Compiler im Debug-Modus nicht optimiert (!)).
    Das Problem gab es schon so oft, da musst du einfach mal Google bemühen. Stichworte: CRT statisch linken C++ Visual Studio

    >> Wie kann ich das Programm nun kompilieren ohne diesen mist???

    Das ist kein Mist, das ist das Herz von C++ auf Windows.

  3. #3
    Mitglied Avatar von lupo1977
    Registriert seit
    Feb 2006
    Ort
    Hier & Jetzt
    Beiträge
    1.151

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Wie kann ich das Programm nun kompilieren ohne diesen mist???
    Du kannst Dir natürlich auch Deine eigene Runtime programmieren. Würde ich Dir aber nicht empfehlen.

    Edit:
    Ich benutze in letzter Zeit auch viel CodeBlocks in Verbindung mit Mingw. Damit gibt es weniger Probleme. Vor allem wenn Du auch für ältere System (Win2000, WinXP) ausliefern musst/willst. Allerdings werden die ausführbaren Dateien dann nochmal um einiges Größer/Langsamer als mit dem M$ Compiler/Linker :P. Aber das interessiert heute niemanden mehr so richtig .
    Geändert von lupo1977 (07. 10. 2011 um 04:29 Uhr)

  4. #4
    ...

    (Threadstarter)

    Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Jetzt soll sich mal bitte mal einer Fragen, warum ich Microsoft hasse^^


    Dieses CRT Kram hab ich nicht gefunden in den Einstellungen (wahrscheinlich fehlt das bei VS2010)!
    Aber ich hab jetzt mal in den Einstellungen, dieses zusätzliche Runtime kram auf nicht vorhanden gestellt und die MFC Bibliothek auf statisch!

    Ich habs mal auf nem andern PC ausgetestet (bin mir aber fast schon sicher, dass dort weitere M$ Bibliotheken installiert waren) und es hat funktioniert!

    Was sagt ihr dazu, geht das jetzt auf sogut wie allen Rechnern, oder nicht?

    -flasher

  5. #5
    Mitglied Avatar von lupo1977
    Registriert seit
    Feb 2006
    Ort
    Hier & Jetzt
    Beiträge
    1.151

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Zitat Zitat von flasher4401 Beitrag anzeigen
    Jetzt soll sich mal bitte mal einer Fragen, warum ich Microsoft hasse^^
    Niemand zwingt Dich VS2010 einzusetzen.
    Microsoft scheint sein VC++ nur noch Stiefmütterlich zu behandeln. Du solltest wirklich über legen zu C# zu wechseln .

    Was sagt ihr dazu, geht das jetzt auf sogut wie allen Rechnern, oder nicht?
    Wenn die Rechner alle aktuellen Updates haben hast Du gute Karten. Bei älteren Systemen wirst Du Probleme bekommen.

  6. #6
    Mr. Floppy is da

    Moderator

    Avatar von Larius
    Registriert seit
    Aug 2004
    Ort
    Österreich
    Beiträge
    4.913

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Lupo, blöde Frage, aber kontrollier mal ob bei den Compilerflags für Mingw -O angegeben ist. Mich würd das doch verwundern wenn MS etwas kompakter hält als so manch Open Source Compiler

    Die MSVC Runtime wird, wenn ichs richtig weiß, net mit den Updates ausgeliefert. Dafür installiert so gut wie jedes neue Spiel (bsp. Battlefield 3 Beta) die Runtime nach, da es ansonsten zu hässlichen Fehlern kommt. Lustig dann nur, wenn die Installation einen Fehler meldet, wenn die Runtime schon darauf installiert ist.

    Und hey, nichts gegen MSVC Runtimes - die ATI Treiber benötigen das .Net Framework, damit sie überhaupt sich installieren lassen :P

  7. #7
    ...

    (Threadstarter)

    Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Dann wird ich mal sagen ATI RAUS!!! D

    Aber es ist doch dumm, das bei solchen 30 Code-Zeilen Programmen, extra Runtimes benötigt werden!

    P.S.: Zu C# wechseln werd ich glaub ich nicht (komme von da, hab schon 2-3 größere Programme geschrieben), denn soviel ich weiß programmieren die "großen" Firmen mit C++. Und ich wollte mal vorlernen, falls ich später mal (falls ich dann überhaupt noch Lust habe) bei solch einer Firma anfangen möchte.

  8. #8
    Mitglied Avatar von lupo1977
    Registriert seit
    Feb 2006
    Ort
    Hier & Jetzt
    Beiträge
    1.151

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Zitat Zitat von Larius
    Lupo, blöde Frage, aber kontrollier mal ob bei den Compilerflags für Mingw -O angegeben ist.
    Kann natürlich sein das mein Mingw nicht optimal konfiguriert ist. Habe es gleich so benutzt wie es nach dem Installieren vorgelegen hat . Werde das mal überprüfen. Danke.

    Zitat Zitat von flasher4401
    Zu C# wechseln werd ich glaub ich nicht (komme von da, hab schon 2-3 größere Programme geschrieben), denn soviel ich weiß programmieren die "großen" Firmen mit C++.
    Der Trend geht eindeutig weg von C++. Zu kompliziert, zu viele Möglichkeiten Fehler zu machen. Es gibt natürlich Wege diese Probleme zu minimieren, aber um wirklich gut C++ zu programmieren, braucht man doch viel Hintergrundwissen. Wenn es nicht unbedingt nötig ist nah an der Maschine zu bleiben sollte man C++ meiden.
    Moderne Sprachen wie C# haben viele Vorteile und nur wenig Nachteile (da der größte Teil der Nachteile durch Hardware erschlagen wird).

    Trotzdem ist es natürlich gut wenn man sich mit C++ auskennt . Ich will Dir also keinesfalls den Spaß verderben.

    EDIT:

    Zitat Zitat von flasher4401
    Aber es ist doch dumm, das bei solchen 30 Code-Zeilen Programmen, extra Runtimes benötigt werden!
    Das ist der Preis wenn Du höhere Programmiersprachen in Verbindung mit Standardbibliotheken verwendest. Irgend woher muss der Code den Du benutzt ja kommen .
    Geändert von lupo1977 (07. 10. 2011 um 14:28 Uhr)

  9. #9
    ...

    (Threadstarter)

    Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Naja wenn der Trend zu C# geht (die Sprache mag ich übrigens tausend mal lieber) dann wechsel ich doch lieber DDDDD

    wobei ich nciht glaube, dass z.b. spiele in der zukunft mit c# entwickelt werden, da einfach die performance nicht so groß ist wie bei c++

    -flasher

  10. #10
    Mitglied Avatar von lupo1977
    Registriert seit
    Feb 2006
    Ort
    Hier & Jetzt
    Beiträge
    1.151

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    wobei ich nciht glaube, dass z.b. spiele in der zukunft mit c# entwickelt werden
    Wieso sollte dafür C++ erforderlich sein? Es gibt sicher viele gut Bibliotheken in diesem Sektor für C++. Und es existiert auch viel Beispielcode für C++.
    Performancegründe hat das so in dem Maß, wie vor 15 Jahren nicht mehr. Die meisten grafischen Operationen werden mittlerweile sowieso in die Grafikkarte ausgelagert. Der CPU kommen oft nur noch Steuerungsaufgaben zu. Ich glaube es gibt mittlerweile sogar Frameworks für C#, die speziell für Spiele zugeschnitten sind.

    Aber natürlich hat C++ auf diesem Sektor eine lange Tradition, das lässt sich nicht leugnen.

  11. #11
    ...

    (Threadstarter)

    Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    , naja wenn ich soweit bin, wird wahrscheinlich eh wieder alles anders sein, also wieso jetzt schwer machen, wenns auch einfach geht

    -flasher

  12. #12
    Mitglied Avatar von Jodocus_
    Registriert seit
    Aug 2010
    Ort
    Groß Wasserland
    Beiträge
    338

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    >> Microsoft scheint sein VC++ nur noch Stiefmütterlich zu behandeln. Du solltest wirklich über legen zu C# zu wechseln .
    >> Der Trend geht eindeutig weg von C++.

    Da hast du den letzten Hype verpasst. Mit Windows 8 und WinRT ist natives C++ und C++0x auf einmal wieder in (auch wenn die C++0x-Unterstützung eher mau ausfällt und sehr enttäuschend ist in VC11, u.a. keine Variadischen Templates. )
    Mittlerweile sind auch in der Entwicklung die von dir genannten Gefahren keine Probleme mehr (wie z.B. Pufferüberläufe und Speicherlecks), da die Standardlibrary langsam auch von Microsoft zunehmend gehypt, verstanden und besser umgesetzt wird. C++0x verbessert diesbezgl. auch viel im Standard. Das größte aller Übel ist und bleibt wohl Threadsicherheit, und da ist C# C++ nicht vorraus. Sie nutzen sogar gleiche (und leider komplizierte) Techniken.

    >> Aber es ist doch dumm, das bei solchen 30 Code-Zeilen Programmen, extra Runtimes benötigt werden!

    Du hast nicht richtig gegooglet. Noch mal: du kannst die CRT mit hinein kompilieren, dann läuft das auf jedem x86er-Windows oder auf Windows x64 mit WoW-Unterstützung.
    Unterm Strich sind deine 30 Zeilen Code das wenigste im Binary, die Standardlibrary (wie z.B. cout, Locales etc.) wollen nun mal auch programmiert sein. In Mnemonic-Code hättest du sehr viel mehr zu tun und würdest um eine Runtime betteln.

    >> Ich glaube es gibt mittlerweile sogar Frameworks für C#, die speziell für Spiele zugeschnitten sind.

    Die ganze XNA-Sparte um genau zu sein. Trotzdem, in richtigen Spielen sind manche Codeteile einfach zu kritisch, dass man das letzte bisschen Performance mit guten alten Inline-Assembler in C(++)-Code rausholen muss. Das sind aber natürlich nur Sonderfälle. Vieles (vllt. auch das meiste) geht mittlerweile in C#.

    Ich habe C++ nicht gelernt, weil ich Sachen machen muss, die C# nicht könnte. Aber ich kann jetzt einfach diese Sachen machen und das macht großen Spaß. C++ ist kein Muss, es gibt keinen logischen Grund, diese Sprache unbedingt lernen zu müssen.

  13. #13
    ...

    (Threadstarter)

    Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Also vom "Handling" her find ich C# wirklich um längen besser, allein schon wegen der einfachen GUI Programmierung durch WPF und WinForms (obwohl das natürlich auch in C++) geht.
    Das schönste an C# ist aber schlicht und einfach das IntelliSense.
    Denn wenn man keine ahnung hat wie man etwas umsetzen soll, kann man einfach durch die Zeilen Scrollen und sich die Erklärungen durchlesen, da ist nichtmal Googlen notwendig!

    Aber das soll jetzt kein Thread für C++ / C# werden!!!

    Ich habs jetzt hinbekommen in dem ich mit umwegen (die microsaft schweine hatten die einstellung versteckt) die libraries statisch eingebunden habe!

    -flasher

  14. #14
    Mitglied Avatar von Jodocus_
    Registriert seit
    Aug 2010
    Ort
    Groß Wasserland
    Beiträge
    338

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    >> Das schönste an C# ist aber schlicht und einfach das IntelliSense.

    Das schönste am Fliegen ist die tolle Aussicht.
    Mal im Ernst, Intellisense hat nichts mit C# zu tun. Das ist Eye-Candy, die eine bestimmte IDE dir bietet. C++ mit Visual Assist Pro ist genau das selbe.

    >> die microsaft schweine hatten die einstellung versteckt

    Mit der Einstellung solltest du schleuningst aufhören, das ist einfach nur unreif. Bei Microsoft arbeiten viele, sehr clevere Leute, die interessante Sachen entwickelt haben. Sachen wie dein heiß geliebtes Intellisense programmieren sich nicht von alleine. Das sind quasi On-the-fly-compiler, etwas, was du vermutlich nie programmieren kannst und wirst. Außerdem kann dir in speziellen Foren schnell Hilfe von Experten verweigert werden, weil du sie als Schweine beschimpfst.

  15. #15
    ...

    (Threadstarter)

    Avatar von flasher4401
    Registriert seit
    May 2008
    Beiträge
    668

    Standard Re: [VS2010 - C++] Programm Kompilieren ohne Zusätze, für nutzung auf anderem Compute

    Ja ist ja gut, hör auf zu meckern! (Ich möchte hier jetzt keinen Streit anfangen, denn natürlich ist das nicht ernst gemeint, denn ohne Microsoft, gäb es das alles erst garnicht und ja ich liebe IntelliSense, das ist das beste Feature überhaupt!)

    Und wie gesagt, wir sind inszw. nicht mehr beim eigtl. Thema und ich hab das Problem inszw. gelöst,

    desw. -> vote4close

    -flasher
    Geändert von flasher4401 (07. 10. 2011 um 23:39 Uhr)

  16.  
     
     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •