Wie kann ich eine x64-Assemblerdatei verlinken?

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

Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von yyami »

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: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von Christian81 »

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 11:49

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von yyami »

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

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von Christian81 »

LIBS += datei.o
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
yyami
Beiträge: 3
Registriert: 19. März 2017 11:49

Re: Wie kann ich eine x64-Assemblerdatei verlinken?

Beitrag von yyami »

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