Ошибка преобразования при попытке скомпилировать .hla-файл

Ошибка преобразования при попытке скомпилировать .hla-файл

Недавно я начал изучать ассемблер по книге "The Art Of Assembler Language" Рэндалла Хайда. Он также разработал язык HLA (High Level Assembly), чтобы новичкам было легче изучать ассемблер.

Для компиляции созданных вами программ .hla вы можете загрузить .exe с сайтаздесь, чтобы установить все необходимые настройки. Вы можете просто скомпилировать свою программу, изменив каталог на /hla и введя в командной строке: hla PROGRAM.hla.

Моя проблема: В начале компилятор работал нормально, но теперь, когда я хочу скомпилировать программу, я получаю ошибку. Программа выглядит так:

program helloWorld;
#include ("stdlib.hhf");

begin helloWorld;

    stdout.put("Hello, World of Assembly Language", nl);

end helloWorld;

Теперь, когда я ввожу данные hla helloWorld.hlaв командную строку, появляется окно сошибка преобразования.

Также эта ошибка появляется в командной строке:

POLINK: fatal error: File not found: 'Level.OBJ'.
Error returned by POLINK = 1

И компилятор просто создает файл .link, который выглядит следующим образом:

-heap:0x1000000,0x1000000
-stack:0x1000000,0x1000000
-base:0x4000000
-entry:HLAMain
-section:.text,ER
-section:.data,RW
-section:.bss,RW
kernel32.lib
user32.lib
gdi32.lib

Я попробовал сделать это с помощью этой команды hla -v helloWorld.hlaи получил следующий вывод:

    HLA (High Level Assembler)
    Use '-license' to see licensing information.
    Version 2.16 build 4413 (prototype)
    Win32 COFF output
    OBJ output using HLA Back Engine
    -test active

    HLA Lib Path:     C:\hla\hlalib\hlalib.lib
    HLA include path: C:\hla\include
    HLA temp path:
    Linker Lib Path:  ;D:\hla\hlalib;D:\hla\hlalib;C:\hla\hlalib;C:\hla\hlalib;D:\hla\hlalib;C:\hla\hlalib;C:\hla\hlalib

    Compiling 'helloWorld.hla' to 'helloWorld.obj'
    using command line:
    [hlaparse -WIN32 -level=high  -v -test "helloWorld.hla"]

    ----------------------
    HLA (High Level Assembler) Parser
    use '-license' to view license information
    Version 2.16 build 4413 (prototype)
    -test active
    Output Path: ""
    hlainc Path: "C:\hla\include"
    hlaauxinc Path: ""
    Compiler generating code for Windows OS
    Back-end assembler: HLABE
    Language Level: high

    Assembling "helloWorld.hla" to "helloWorld.obj"
    HLAPARSE assembly complete, 40963 lines,   0.058 seconds,  705043 lines/second
    ------------
    HLA Back Engine Object code formatter
----------------------
Linking via [polink @"helloWorld.link._.link"]
POLINK: fatal error: File not found: 'Level.OBJ'.
Error returned by POLINK = 1

Перезагрузил систему, переустановил .exe, а также пробовал разные программы, но я слишком неопытен, чтобы решить эту проблему.

Любая помощь будет оценена по достоинству.

решение1

HLA НЕ любит пробелы в пути к файлу.

Если в одном из ваших каталогов есть пробел, вы получите такую ​​ошибку. Мне потребовалось некоторое время, чтобы разобраться самому.

кстати

Если вы переименовываете каталог, убедитесь, что вы не нарушили переменные пути среды. Возможно, вам также придется исправить их.

Связанный контент