DevProg: Блог для программистов

Секреты программирования. Примеры разработки. Обзоры программёрского софта, блогов и форумов и просто полезные советы!

Как настроить RadAsm под MASM32

Опубликовал devprog на Октябрь 14, 2008

Привет. Если вы уж выбрали эту замечательную среду разработки например для программирования например на С++ или С, то обязательно прочтите данный материал. Дело в том, что RadAsm можно настроить не только под Си или Си++, так же это может быть PHP, Basic, или даже HTML, не говоря уже про все ассемблеры. Давайте я покажу вам на примере, как настроить RadAsm для программирования на ассемблере MASM32. Со всеми остальными всё делаеться аналогично.

Шаг 1: Качаем RadAsm + пакеты
Дело это не хитрое. Нам необходимо пройти по этой ссылке: скачать саму среду. Далее нам нужен пакет поддержки языков ассемблеров. Можно ещё пройти по этой ссылке и скачать пакеты поддержки разных языков, если вы говорите например по португальски.

Шаг 2: Качаем компилятор
Кто-то когда то сказал такие слова: Компилятор – всему голова. И я с этим полностью согласен. Так что качаем его вот по этой ссылке для Windows 2000 и XP или вот по этой для Windows 95/98/ME. Скачали – установим.

Шаг 3: Установка компилятора
Установка проста как 5 копеек. При установке выберите диск C: . Делайте пока так, потом переставите на другой диск как вам удобно, но желатель ставить в корень диска. То есть если вы поставите его например в C:\MyCompiler\SuperMASM32\MASM32 – ничего плохого не произойдет но и ничего хорошего тоже не выйдет. Итак поствили. Как только перед вами всплывает консоль (чёрненькая такая ) жмите любую клавишу – этим мы даём добро на сборку библиотек. Потом будет предложено нажать любую клавишу – жмём! Потом ещё раз. И ещё  Всё, пакет программирования MASM32 в который входит и 32 битный компилятор MASM установлен в системе.

Шаг 4: Пропишем пути
Для этого: правый клик на Мой компьютер -> Свойства -> вкладка Дополнительно -> Переменные среды. Добавляем к переменной PATH такое значение:

;C:\MASM32\BIN

Именно с точкой с запятой в начале – этим мы отделяем значения от друг друга.

Шаг 5: Установка RadAsm
Распакуйте архив RadAsm.zip в любую удобную для вас папку. Допустим это будет C:\RadAsm\ . В эту же папку распаковываем архив Assembly.zip, а именно всё содержимое директории Assembly. То есть файлы masm.ini, fasm.ini, nasm.ini и т.д. включая все директории должны попасть в папку с установленным RadAsm, в нашем случаи – C:\RadAsm\ .

Шаг 6: Добавим новый язык
Запускаем RadAsm, заходим в Option -> Programming languages -> Внизу окошка нажимаем на троеточие (выбор) -> выбираем masm.ini -> нажимаем Add -> OK. Всё, настройка RadAsm для MASM32 завершена. Осталось проверить всё ли работает.

Шаг 7: Проверка
Делаем : File -> New Project -> Выбираем из выподающего списка MASM -> выбираем Win32 App -> Вводим название проекта и его описание -> DialogApp.tpl -> Next -> Next -> Finish. Теперь нажмём Ctrl+F5 (компиляция с запуском) и видим окошечко. Значит программа скомпилировалась и всё настроенно и поставленно верно. Если окошка нет – значит вы что-то пропустили. Вот и всё – надеюсь всё понятно. Если нет спрашивайте и комментируйте.

14 коммент. к “Как настроить RadAsm под MASM32”

  1. javampishu сказал

    Большое спасибо за подробную инструкцию.
    А какой отладчик Вы можете посоветовать и как его установить? :) Заранее спасибо.

  2. devprog сказал

    Тут смотря какой отладчик нужен, вернее для каких нужд. Если отлаживать драйверы то SoftIce от NuMega, а если 32битные приложения то мой выбор – это OllyDbg. Для 16 битных также SoftICE но можно использовать и отладчик Turbo Debugger поставляемый с любым продуктом от борланд.

    Установка Olly очень тривиальна и не требует обьяснения. А вот SoftICE – дело десятое, если очень нужно то я конечно расскажу, но я бы рекомендовал начинающиму программисту использовать всётаки OllyDbg.

  3. evgeniy сказал

    Всё сделал как у Вас написано. Но почему-то почти не один example не компилится пишет:
    » Make error(s) occured.»
    и указывает на ошибку в строке:
    «include \RadASM\Masm\Inc\Debug.Inc»
    ещё бывает:
    «LINK : fatal error LNK1104: cannot open file «masm32.lib»"
    «error during process creation Masm32\Bin\DOSLNK.EXE»
    но в этой директории нет DOSLNK.EXE
    а бывает сначала не компилится а после 2-3 -ёх попыток получается.

    Этот момент у меня получился «Шаг 7: Проверка»

    от примера с opengl-ом вообще система зависла

    да, кстати, я установил не на диск C:\ а на диск H:\ и потом пришлось править masm.ini
    а может надо было ещё что-нибудь?

  4. devprog сказал

    У вас не компилируется вообще то нибудь????

    >> “include \RadASM\Masm\Inc\Debug.Inc”
    Пропишите этот путь в переменных PATH системы!

    >> но в этой директории нет DOSLNK.EXE
    Дайте ссылку, где вы скачали свой MASM32 ! По моему вы скачали не то что вам нужно!

  5. Ivan_32 сказал

    А такой же инструкции для настройки под FASM у вас нет?) Я никак настроить не могу.

  6. evgeniy сказал

    devprog сказал:
    «У вас не компилируется вообще то нибудь????

    >> “include \RadASM\Masm\Inc\Debug.Inc”
    Пропишите этот путь в переменных PATH системы!

    >> но в этой директории нет DOSLNK.EXE
    Дайте ссылку, где вы скачали свой MASM32 ! По моему вы скачали не то что вам нужно!
    »

    Спасибо! Действительно была проблема в PATH(я кроме того ещё неправильно там написал путь masm-a).
    Но также повлияло то, что у меня было два masm-a(один из них я скачал по вашей ссылке — он и был мне нужен, а из-за другого была проблема).
    Насчёт opengl-а: проблема была с дровами к видюхе(переустановил теперь работает)

    По поводу DOSLNK.EXE — его действительно нет в директории masm/bin
    DOSLNK.EXE — это линкер для сборки 16-битных программ.
    Только вот ещё не понял какой мне нужен: я два пока что нашёл.
    http://win32assembly.online.fr/files/Lnk563.exe
    ftp://ftp.microsoft.com/developr/win32dk/sdk-public/LINK16.ZIP
    первый что-то долго не линкует, а второй работает, но, по-моему, программа должна не так работать(которую он слинковал из примеров по masm) почти сразу завершается.

  7. Devprog сказал

    Ivan_32:
    Следующая статья будет именно про это. Сегодня вечером или завтра днём.

  8. devprog сказал

    >> Только вот ещё не понял какой мне нужен: я два пока что нашёл.
    Не совсем понял вас, вы хотите 32б виндовые программки компилировать 16б ассемблером? Качайте Хатчевый MASM32 отсюда http://website.assemblercode.com/masm32/m32v9r.zip

    Если MASM нужен 16b то качайте с моей старенькой странички> http://robo9.xaker.name/asm/MASM613.ZIP

    Да и кстати, что должна делать ваша программа? Как она должна себя вести?

  9. evgeniy сказал

    >>Да и кстати, что должна делать ваша программа? Как она должна себя вести?
    это оказывается была STUB-программа.

    А что Вы могли бы сказать про GoAsm? В сравнении с FASM, MASM, TASM.
    Я читал, что из плюсов у него простой синтаксис и компактный код.

  10. Devprog сказал

    Я никогда не использовал GoAsm, так что, сказать что-то внятное скорее всего не смогу ) На синтаксис взглянул – предельно схож с MASM. Смотрел вот тут http://www.jorgon.freeserve.co.uk/GoasmHelp/GoAsm.htm . А вообще, неважно какой это ассемблер, главное, что ассемблер ;)

  11. Аркадий сказал

    Читаю что Вы пишете – дом2 вспоминается :)

  12. лякa сказал

    Спорить по этому поводуможно бесконечно, поэтому просто хочу поблагодарить автора. Спасибо!

  13. tapakah сказал

    Вообще, когда читаешь такое, посещает мысль, а ведь это ж так просто, ну почему я это не смог придумать Респект автору :)

  14. кaмycя сказал

    На самом деле, как говорится – Без пользы жить – безвременная смерть.

Ответить

XHTML: Вы можете использовать эти метки: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>