Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Forentreff 2012     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: Assembler ::  NASM Ausführbare Datei unter Windows 7 64Bit     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
RGEE
Mitglied

Benutzerprofil
Anmeldungsdatum: 15.11.2009
Beiträge: 11
Beitrag RGEE Mitglied 11:35:10 09.03.2010   Titel:   NASM Ausführbare Datei unter Windows 7 64Bit            Zitieren

Hallo ich habe bis jetzt nur nasm Files unter Linux kompiliert. Jetzt habe ich mir Nasm unter Windows 7 64Bit installiert und komm zu keiner Wirklichen ausführbaren Datei.

nasm dateiname.nasm -f bin -o dateiname.exe --> kommt nix gescheites heraus

Kann mir jemand sagen wie ich Ausführbare exe Dateien erstellen kann welche only 64Bit sind oder halt 32Bit und auch unter 64Bit laufen? :warning:
Nobuo T
Moderator

Benutzerprofil
Anmeldungsdatum: 09.10.2001
Beiträge: 4737
Beitrag Nobuo T Moderator 14:25:45 09.03.2010   Titel:              Zitieren

Steht im Wesentlichen im NASM Manual, section 1.1.1.
...

Ist in Microsofts Welt klassischerweise nicht ganz so intuitiv:
Um exe-Dateien erstellen zu koennen, musst du zunaechst eine objekt-Datei erzeugen (zB. mit "-f win32" oder "-f win64" fuer 32- oder 64Bit-Windows-Objekt-Dateien) und daraus dann mittels Linker (und zusaetzlichen Libs oder dll-Listen - je nach Linker) eine .exe-Datei. Jeder aktuelle Linker, der Windows-Programme erstellen kann, sollte irgendwo auch mit 64Bit-Objs klar kommen.

Hast du ansonsten ueberhaupt schon eine Ahnung, wie du an das Schreiben von Windows-Programmen mit der WinAPI und ihren ganzen dlls herangehst?

_________________
==Mod im Assembler-Forum==

http://z0r.de/2908
fr33g
Mitglied

Benutzerprofil
Anmeldungsdatum: 07.01.2010
Beiträge: 803
Beitrag fr33g Mitglied 13:23:26 10.03.2010   Titel:              Zitieren

Also einfach nasm dateiname.asm -f win64
anschließend dann die obj datei mit nem linker wie alink linken?
weil mit nasm dateiname.asm -f win64 bekomme ich immer nen fehler....
Nobuo T
Moderator

Benutzerprofil
Anmeldungsdatum: 09.10.2001
Beiträge: 4737
Beitrag Nobuo T Moderator 14:47:45 10.03.2010   Titel:              Zitieren

Bist du "RGEE"?
Wusste doch, dass mir die Frage bekannt vorkommt.

Mit der beschriebenen Methode kannst du zwar 32- oder 64Bit-Windows-Obj-Dateien und damit via Linker auch .exe-Programme erzeugen, aber wie ich bereits erwaehnte, brauchst du dafuer auch extra fuer 64Bit Windows geschriebene Quellcodes. Ich kenne kein Anfaengertutorial, das solche Quellcodes behandelt.

Alink wurde AFAIK vor 10 Jahren das letzte mal aktualisiert... Vielleicht solltest du dich fuer 64Bit-Programme nach einem aktuelleren Linker umsehen. Ich verwende fuer meine ASM-Spielereien im Moment ganz gern den GoLink Linker von GoAsm (funktioniert natuerlich auch mit von nasm erstellten Objs).

_________________
==Mod im Assembler-Forum==

http://z0r.de/2908
fr33g
Mitglied

Benutzerprofil
Anmeldungsdatum: 07.01.2010
Beiträge: 803
Beitrag fr33g Mitglied 17:10:14 10.03.2010   Titel:              Zitieren

Danke für die Antwort, aber nein ich bin fr33g ;-) und nicht RGEE
Ja die Frage kann dir durchaus bekannt vorkommen, da ich so eine ähnliche ja stellte bzw glaube sogar die gleiche.
Aber dachte wenn hier nen thread offen ist kann ich ja hier nochmal nachfragen, weil es eben hier so rüber kam als wie man mit -f win64 das Problem lösen kann ohne extra für 64 bit zu schreiben.
Aber jetzt wurde ich ja eines besseren belehrt;-)
Gruß freeG
C/C++ Forum :: Assembler ::  NASM Ausführbare Datei unter Windows 7 64Bit   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.