Имеется следующий код на c++ (файл main.cpp):
#include <iostream>
extern int _sub(int, int);
int main() {
std::cout << _sub(3, 15);
return 0;
}
и реализация функции _sub (файл sub_f.asm):
section .text
global _sub
_sub:
mov rax, rcx
sub rax, rdx
ret
При компиляции и линковке следующим образом;
nasm -f elf64 -g sub_f.asm -o sub_f.o
g++ -c main.cpp -o main.o
g++ -o asm_test.exe main.o sub_f.o
почему-то выдается ошибка: undefined reference to `_sub(int, int)' (компилируется и линкуется на платформе Linux)