Ошибка при компиляции кода ассемблера NASM

Написал простенькую программу на ассемблере NASM:

global _start       ; делаем метку метку _start видимой извне
 
section .text       ; объявление секции кода
_start:             ; метка _start - точка входа в программу
    mov rax, 40     ; произвольный код возврата - 40
    ret             ; выход из программы

Далее создал объектный файл путем написания команды:

nasm -f win64 hello.asm -o hello.o

А затем, открыв под приложение Native Tools Command Prompt for VS 2022, записал следующую команду для создание исполняемого файла:

link hello.o /entry:_start /subsystem:console /out:hello2.exe

И получил ошибку:

Microsoft (R) Incremental Linker Version 14.42.34321.1
Copyright (C) Microsoft Corporation.  All rights reserved.

LINK : error LNK2001: неразрешенный внешний символ _start.
hello2.exe : fatal error LNK1120: неразрешенных внешних элементов: 1

Как ее исправить?


Ответы (1 шт):

Автор решения: Chaos_Sower

Перевод ответа пользователя @K.R. на вопрос LNK 2001 unresolved external symbol _mainCRTStartup MASM:

Другие ответы меня смутили, поэтому я добавлю своё решение. В свойствах проекта перейдите в:

Свойства конфигурации >> Компоновщик >> Дополнительно

В Дополнительно вверху должна быть Точка Входа. Введите туда main.

→ Ссылка