|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
FASM Как подключить include к flat компилятору18.06.2018, 13:10. Показов 13670. Ответов 18
Метки нет (Все метки)
Здравствуйте,как подключить include к flat компилятору?Требуется подключить include 'win32a.inc' к проекту.win32a.inc лежит в папке "include" компилятора.
0
|
|
| 18.06.2018, 13:10 | |
|
Ответы с готовыми решениями:
18
Как подключить библиотеку gluit к компилятору?
|
|
Модератор
|
|
| 18.06.2018, 14:59 | |
|
Почему db можно вставить в конце программы
и обратите внимание на секцию импорта dll с перечислением используемых (строки 33-42)
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 18.06.2018, 22:25 [ТС] | |
|
компилятор(или транслятор,не знаю точно,крч fasm
) ругается что не нашел файлы win32ax.inc,api\kernel32.inc,...В g++/gcc ,к примеру , можно указывать путь к заголовочным файлам и библиотекам в опциях компилятора,например g++ -I... -L... -l... .Ожидаю того же на ассемблере),только ,почему-то, не нашел этих опций в справочнике)
0
|
|
|
Модератор
|
|
| 18.06.2018, 22:47 | |
|
http://www.manhunter.ru/assemb... _fasm.html
предлагают ввести переменную среды окружения include="C:\FASM\INCLUDE" или в исходнике полностью прописывать путь к включаемому файлу.Думаю, что второй путь предпочтительнее, т.к. переменную окружения с таким именем может использовать любой другой компилятор, который перестанет работать.
2
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 19.06.2018, 13:53 [ТС] | |
|
Каждый раз прописывать полный путь как-то трудоемко,лучше,наверное,с переменной окружения.Только не знаю где это прописывается
0
|
|
|
Модератор
|
|
| 19.06.2018, 15:31 | |
|
Меню - Компьютер - кнопка под строкой меню "Свойства системы" - вкладка "дополнительно" кнопка "переменные среды"
Там для пользователя добавите нужные переменные и перезагрузите компьютер.
2
|
|
|
Эксперт Hardware
|
|||||||
| 19.06.2018, 16:17 | |||||||
Сообщение было отмечено ФедосеевПавел как решение
Решение
3
|
|||||||
|
4187 / 1835 / 220
Регистрация: 06.10.2010
Сообщений: 4,123
|
|
| 19.06.2018, 16:20 | |
Сообщение было отмечено ФедосеевПавел как решение
Решение
В файле fasm.ini в секции [Environment] нужно задать переменную Include.
Добавлено через 24 секунды R71MT Опередил
3
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 19.06.2018, 17:32 [ТС] | |
|
Но я работаю не в flat assembler,а в geany.
Настроил его для ассемблера,только заголовочные файлы осталось добавить ФедосеевПавел, а в какую переменную нужно добавить?
0
|
|
|
Модератор
|
|
| 19.06.2018, 17:38 | |
|
FASM всё равно обращается к собственным ini-файлам.
Я - ошибся. R71MT и murderer описали правильный вариант.
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 19.06.2018, 17:44 [ТС] | |
|
0
|
|
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
| 19.06.2018, 18:06 | |
|
Определите переменную окружения INCLUDE, и всё будет работать.
Добавлено через 1 минуту А fasmw.ini работает только для редактора fasmw, к консольному fasm этот ini не имеет никакого отношения...
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 19.06.2018, 21:14 [ТС] | |
|
0
|
|
|
Модератор
|
|
| 19.06.2018, 21:56 | |
|
Не IncludeAssembler, а просто Include
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 19.06.2018, 22:00 [ТС] | |
|
Сработало)А какая разница какое имя у переменной?
0
|
|
|
Модератор
|
|
| 19.06.2018, 22:03 | |
|
Эта переменная "среды окружения" - она глобальная, видна изо всех программ на компьютере. И fasm ищет переменную с точно заданным именем, а не похожим.
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 19.06.2018, 22:09 [ТС] | |
|
понятно,спасибо)
0
|
|
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
| 19.06.2018, 23:37 | |
|
Потому что fasm (да и многие другие компиляторы) читают именно эту переменную, а IncludeAssembler им фиолетов
![]() Добавлено через 18 секунд Ой, не заметил, что уже ответили...
2
|
|
|
Эксперт Hardware
|
||||||||||||||||
| 02.07.2018, 10:13 | ||||||||||||||||
Сообщение было отмечено ФедосеевПавел как решение
Решение
Система инклуд в FASM чуть запутанная,
что порождает некоторые вопросы при программировании по винду. Например, могут возникнуть проблемы импорта функций, если структура программы не соответствует требованиям компилятора. Когда-то исследовал содержимое его файлов и обнаружил следующею закономерность - может кому пригодится.. Значит дополняем INI-файл секцией 'Environment' как описано выше, и теперь FASM находит инклуды только по имени, без полного пути. А вот дальше интересней.. Вызывать в шапке программы 'win32a.inc' нет никакого смысла, т.к. в своём теле этот инклуд просто вызывает макросы и их описатели: Содержимое win32a.inc
Значит идём дальше и открываем следующий по списку 'win32ax.inc'. В нём описываются несколько макросов, а в начале и конце можно обнаружить следующие строки. То-есть '32ах' вызывает '32а':
что если вызвать в исходнике этот файл, то можем пользоваться укороченными директивами, при этом если укажем в конце .end метка, то отпадает надобность в импорте буквально любой из задействованных в исходнике API-функций - макрос '.end' сделает это за нас. Например, исходник чтения строки из реестра может быть оформлен так (замечу, что я не указываю секцию импорта, а компиль добавит её сам):
Таким образом мы лишились головной боли по импорту, но приобрели зубную боль, связанную с импортом отсутствующих в перечисленных библиотеках функций, ведь по-умолчанию FASM импортирует не все DLL-ки винды, а только 8 из них. К примеру, как теперь импортировать удобные для нас функции prinf/scanf из либы msvcrt.dll, ведь её нет в списке макроса '.end'?Думаю не трудно догадаться, что решение лежит на поверхности и я не буду его здесь приводить. Отмечу лишь, что полный список импортируемых функций из этой библиотеки можно получить в Тотале (C:\WINDOWS\system32\msvcrt.dll), по клавише [Ctrl+Q] на вкладке Import/Export. После всех манипуляций, вы должны добавить в макрос '.end' девятым файлом include 'api/msvcrt.inc'
2
|
||||||||||||||||
| 02.07.2018, 10:13 | |
|
Помогаю со студенческими работами здесь
19
как подключить директорию #include <irrlicht.h> в Qt include require как подключить правильно файл Как быстро подключить сразу несколько include
Как подключить несколько файлов директивой #include Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|