Wie kann ich eine x64-Assemblerdatei verlinken?

Verschiedenes zu Qt
Antworten
yyami
Beiträge: 3
Registriert: 19. März 2017 12:49

Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von yyami » 19. März 2017 12:57

Hallo,
Um vernünftig mit C++ Fensteranwendungen programmieren zu können, habe ich mir Qt installiert. Bin mit der Umgebung aber noch nicht so vertraut. Nun frage ich mich, wie ich eine Datei mit x64-Assembler einbinden/verlinken kann? Vorzugsweise mit NASM

danke

Christian81
Beiträge: 7315
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von Christian81 » 19. März 2017 18:49

Hat nix mit Qt zu tun sondern eher mit dem verwendeten Buildwerkzeug. Was benutzt Du? qmake, cmake, ...?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung

yyami
Beiträge: 3
Registriert: 19. März 2017 12:49

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von yyami » 20. April 2017 14:38

qmake

Christian81
Beiträge: 7315
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von Christian81 » 21. April 2017 20:08

LIBS += datei.o
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung

yyami
Beiträge: 3
Registriert: 19. März 2017 12:49

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von yyami » 4. Juli 2017 15:23

Habe ich etwas vergessen?

.pro

Code: Alles auswählen

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = test---
TEMPLATE = app

SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

DISTFILES += \
    asm.o

LIBS += asm.o
cpp:

Code: Alles auswählen

//irrelevanter Code hier

extern "C" __int64 assembly();

//irrelevanter Code hier

void MainWindow::on_pushButton_clicked()
{
    QString s = QString::number(assembly());
    ui->label_2->setText(s);
}
asm.o:

Code: Alles auswählen

.code
assembly proc

mov rax, 1
ret

xor rax, rax

assembly endp
end
Das Label sollte nach Clicken des Buttons "1" anzeigen.
In Visual Studio kann ich so problemlos eine .asm-Datei mit einbinden

Antworten