Как откомпилировать программу на Си в бинарник?
У меня есть Borland C++ 3.1. У меня есть вопрос, как на нём откомпилировать программу на Си в бинарник.
Очевидно, что руками и через меню "Compile". Хотя есть и иные способы.
Нет, вопрос в другом. Как откомпилировать программу на Си не в EXE-файл, а например в .COM. И еще: очень важно чтобы не было всяких стандартных библиотек.
А вы вообще знаете что такое "всякие стандартные библиотеки"?
Сдается мне что нет.
Что же это такое?
Цитата:
Что же это такое?
я бы хотел слышать что вы под этим понимаете, тогда можно будет ответить что-то по теме..
Посмотри что умеет ecl.exe (он наверно компилирует исходники, в VC6 например это файл cl.exe).... скомпануй сишный файл без линковки (обычно это ключ -c).... а потом линкером попробу в бинарник засунуть.....
Думаю, если не указывать лишние includ то лишнего компилер не пристегнет.
Формат вызова: exe2bin file1.exe file2.com
Правда, преобразовывается далеко не любой exe-файл.
Exe-файл должен быть не больше 64 КБайтов, в нём не должно быть сегмента стека (только сегмент кода и сегмент данных).
Иначе будет ошибка, exe2bin откажется работать.
Так что писать программу придётся, скорее всего, на ассемблере, в языках высокого уровня нельзя напрямую работать с сегментами.
Как правило код инициализации пишут на Assembler, на нём же переходят в защищённый режим. А дальше уже используют современные 32-битные компиляторы, которые относительно просто умеют компилировать в чистый бинарник.