Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Флейм на общие темы »   Хочется странного
RSS

Хочется странного

Выбор С компилятора

<<Назад  Вперед>> Страницы: 1 2 3
Печать
 
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Иногда бывает нужно как-то по-быстрому обработать какие-нибудь файлы (отконвертировать, обрезать и т.п.).
С древних пор держал для этого TurboC. При необходимости накропать програмку занимает максимум 5 минут и результат есть.
Но недавно пересел с WinXP на Win 8.1 Pro x64. И теперь и сам TC не запускается, и .exe от него.
Поставил VC++. Но он не умеет делать .exe под DOS, а мне иногда это тоже нужно (например, написать какую-нибудь тестилку для восстанавливаемого старого компьютера ).
оставить только TC через DosBox или вируталку - неудобно. Держать и VC++ и ТС - далеко не факт что не придётся две версии программы (исходников) писать и держать.

Вопрос: есть ли какой-либо компилятор С (мне даже C++ не надо, достаточно только С), работающий под современными виндами и умеющий генерить .exe как под новые винды, так и под DOS? Обязательно чтобы с IDE и с пошаговым отладчиком.
Флуд про извращенчиские потребности прошу не писать ;-)
AnyOne
Advanced Member


Всего сообщений: 671
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 янв. 2010
Мне кажется, что самое простое - изготовить консольное приложение (console application) в VC++, отладить его. А затем перенести на машину с TurboC (реальную или виртуальную - не важно) текстовой файлик *.cpp и скомпилировать под DOS. Если речь идет о простых операциях, типа обработки файлов, переносимость кода должна быть 100%.

Если данный способ "извращенчИские потребности" не удовлетворяет, можно посмотреть в сторону Watcom C. Но насколько он нормально будет работать в Win8 - вопрос неоднозначный.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Упс, не заметил 64 bit. Тут дос-приложения бессильны, только виртуалка.
Sozdatel
Advanced Member


Всего сообщений: 3518
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
15 апр. 2010
Можно установить DOS-Box и компилировать в нем.

Для этого нужно создать специальную папку, в которой будет компилятор и проги, туда же положить какую-нибудь оболочку (Norton Commander, Volcov Commander) и прописать в автозагрузке. Затем смонтировать ее (папку), как жесткий диск.
Например: "mount d: c:\turboc\"

Правда следует учесть, что при нажатии Ctrl+F9 (компиляция) DOSBox ылетает, т.к эта же комбинация клавиш служит для закрытия DOSBox. Так что придется либо перенастроить комбинации клавиш либо компилировать через меню.
Sozdatel
Advanced Member


Всего сообщений: 3518
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
15 апр. 2010
Вот что еще нашел.

Всем прекрасна среда программирования Borland C++ 3.1 for DOS ! Как говорится, классика жанра! И проста и функциональна и к ресурсам не требовательна. Ну просто сказка. Да вот только с выходом каждой новой операционной системы все больше проблем возникает. Ну не хотят граждане-сотоварищи из Микрософта старый добрый ДОС поддерживать. Тут то и начинаются все тяжкие... Пока DOS и Win95-98-Me были - проблем не было таки они сами по сути и есть DOS с графической оболочкой. Но вот первй звонок - XP. Доса нету, только виртуальная машина ntvdm, которая ресурсов под себя забирает мама не горюй! Ну, в общем-то это и понятно: ДОС-то многозадачным не был, стало быть все что мог под себя прибрать - прибирал. Ну да бог с ним. Ctrl+Alt+Del и ставим ntvdm-у нижайший приоритет. Теперь и работать можно. Дальше хуже: Vista появилась. Тут другая хворь нашлась - полноэкранный режим наглухо отсутствует. А кому-то это весьма неудобно бывает. Ну и финальный аккорд - выход 64 битных систем. Тут и вообще труба дело - даже инсталятор запустить не удастся.
Так что теперь - все на Builder-a перелазим? А как же ностальгия и все дела? Оказывается есть выход! К счастью ntvdm - не единственная виртуальная машина DOS. В частности существует замечательная софтина DosBox именуемая. Собственно на базе ее и сделана сборочка, позволяющая комфортно работать что в Висте, что в Севане. Причем хоть в 32, хоть 64 разрядной.
Лично проверял на XP(32)(64) Vista(32) Win7(64). Работает.
По той же методике и Turbo Pascal 7 собирал. Результат - положительный.

Borland C++ 3.1 for DOS теперь и для Windows 7 64bit !!!
DrPass
Advanced Member


Откуда: Донецк
Всего сообщений: 3566
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
17 апр. 2005
dk_spb написал:
[q]
Вопрос: есть ли какой-либо компилятор С (мне даже C++ не надо, достаточно только С), работающий под современными виндами и умеющий генерить .exe как под новые винды, так и под DOS? Обязательно чтобы с IDE и с пошаговым отладчиком.
Флуд про извращенчиские потребности прошу не писать ;-)
[/q]
Генерить может и получится. Если мне память не изменяет, Borland C++ 5.0 еще имел target DOS, и при этом был честным 32-битным приложением, т.е. под Вин64 должен работать. А вот отлаживать уже без виртуальной машины не получится. Запустить 16-битное приложение в Вин64 нельзя.
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
dk_spb а чем виртуалка не устраивает ? У меня вот в Oracle VirtualBox-е какой только хрени не крутится, от DOS и всяких Линухов до старой винды со старой java (нужно для некоторых железок).

https://ru.wikipedia.org/wiki/VirtualBox
он бесплатный
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Как-то похоже меня почти никто не понял :-(
Всякие DOSBox'ы/виртуалки неинтересны в принципе. Точнее по ним как раз вопросов нет.
Нужен C компилер, который работает под Win8.1 x64 и умеет генерить как под эту же Win, так и под DOS.
Спасибо, BC++ 5.0 попробую посмотреть.

> А вот отлаживать уже без виртуальной машины не получится.
Почему, все получится. Я же могу сначала генерить виндовое приложение и отладить программку, а потом уже сгенерить DOS приложение.
Fe-Restorator
Гость

Ссылка

dk_spb написал:
[q]
Почему, все получится. Я же могу сначала генерить виндовое приложение и отладить программку, а потом уже сгенерить DOS приложение.
[/q]
Если под виндой пользоваться ООП, то не все оной конструкции переносимы в дос, увы. Отладка под виндой прокатит, а сборка под дос будет нерабочей.
Сейчас на форуме
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Я выше писал "мне даже C++ не надо, достаточно только С". И я слов-то таких не знаю, ООП ;-)
Fe-Restorator
Гость

Ссылка

dk_spb написал:
[q]
Я выше писал "мне даже C++ не надо, достаточно только С". И я слов-то таких не знаю, ООП ;-)
[/q]
Читали - знаем! :)
Фишка в том, что даже модуль "console", пользуемый для написания консольных приложений под виндой, сам написан с применением ООП... Неважно, состоит-ли твоя прога только из printf('Hello World'), после трансляции будет около 15К бинарного кода "виндовой дос-консоли". И знаменитый заголовок "не запускается под досом" будет на своём месте.

Разве-что скопипастишь код программы в тот-ж древний "турбоС" и скомпилишь в ём, мож и под тем-ж досбоксом, неважно. Полюбому с глобальными переменными и их видимостью будут траблы, без проверки и корректуры не обойдёшься.
Сейчас на форуме
ys05
Advanced Member


Откуда: spb
Всего сообщений: 389
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
27 фев. 2012
Можно посмотреть open watcom, но не помню, есть ли для него IDE, я из командной строки юзаю.
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Fe-Restorator написал:
[q]
Фишка в том, что даже модуль "console", пользуемый для написания консольных приложений под виндой, сам написан с применением ООП... Неважно, состоит-ли твоя прога только из printf('Hello World'), после трансляции будет около 15К бинарного кода "виндовой дос-консоли". И знаменитый заголовок "не запускается под досом" будет на своём месте
[/q]
Вот поражает меня как Вы всегда с такой уверенностью говорите ерунду:
Если включить target DOS (standard) то BC++ 5.02 генерит обычный досовский .exe и никакой фразы "должно запускаться под win32" там нет. И откуда там ей быть? Мы же генерим .exe под DOS. Сразу скажу что прежде чем утверждать это, я, в отличие от Вас, я проверил на практике.
Вам самому не надоело вводить людей в заблуждение? Я то уже привычно всё сказанное Вами умножаю на 0.00001, но есть же еще люди, которые не пробовали проверить Ваши утверждения на практике ;-)

Но выяснилась другая проблема: если включить target DOS (standard) то для компиляции IDE вызывает не компилятор bcc32, а компилятор bcc, который, в свою очередь, вызывает tlink.exe, а он не совместим с x64 :-( Так что использовать BC++ 5.02 на x64 тоже приходится с финтами.
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Open Watcom пока с задачей компиляции и под DOS и под Win32 справился. Но отладчик не совместим с x64. Так что тоже вычеркиваем :-(
Fe-Restorator
Гость

Ссылка

dk_spb написал:
[q]
Вот поражает меня
[/q]
Включённый target.trolling скомпилирован правильно: форумчане получили краткую инструкцию по пользованию ВС++ на платформе х64. ;) Не все мои высказывания являются утверждениями, но все они приводят к раскрытию темы обсуждения, с той или иной стороны.
Сейчас на форуме
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Fe-Restorator написал:
[q]
Включённый target.trolling скомпилирован правильно: форумчане получили краткую инструкцию по пользованию ВС++ на платформе х64. ;) Не все мои высказывания являются утверждениями, но все они приводят к раскрытию темы обсуждения, с той или иной стороны.
[/q]
А, ну да, Вы абсолютно правы: Вы, как обычно, бредите вслух, а я привык читать гуру (типа Кая) и на Ваш бред ведусь. Добавлю-ка я Вас в соответствующий список ;-)
Fe-Restorator
Гость

Ссылка

dk_spb написал:
[q]
бред ведусь. Добавлю-ка я Вас в соответствующий список
[/q]
Странная логика у ваших программ... Раздел называется "флейм", бреду здесь самое место. ;)
Сейчас на форуме
DrPass
Advanced Member


Откуда: Донецк
Всего сообщений: 3566
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
17 апр. 2005
Fe-Restorator написал:
[q]
Если под виндой пользоваться ООП, то не все оной конструкции переносимы в дос, увы
[/q]
Иногда лучше жевать молча...
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
dk_spb написал:
[q]
Нужен C компилер, который работает под Win8.1 x64 и умеет генерить как под эту же Win, так и под DOS.
[/q]
Таких нет в природе.
Вы не пробовали подменить tlink в BC 5.0 на альтернативный линковщик?


dk_spb написал:
[q]
Почему, все получится. Я же могу сначала генерить виндовое приложение и отладить программку, а потом уже сгенерить DOS приложение.
[/q]
Хм, сомнительное утверждение. В любом случае желательна отладка, так как кроссплатформенность компиляторов далеко не идеальна. Я уже попадался на этом, последний раз с месяц назад :biggrin:


dk_spb написал:
[q]
Open Watcom пока с задачей компиляции и под DOS и под Win32 справился.
[/q]
Open Watcom уникален тем, что порой генерирует неработающие экзешники, даже не сделав ни одного предупреждения. Стоит скормить тот же сорс BC 3.1, как тот выдаст кучу предупреждений, после устранения которых программа начинает работать.


Fe-Restorator написал:
[q]
Фишка в том, что даже модуль "console", пользуемый для написания консольных приложений под виндой, сам написан с применением ООП...
[/q]
С какого перепуга? Сорсы RTL доступны как у борландов, так и у мелкософта, по крайней мере в вижен 2008 были. Никакого ООП там и близко не было. Да и не идиоты же они, чтобы такие вещи на ООП писать :biggrin:
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
>Таких нет в природе.
Вот я и хотел в этом убедится, надеясь таки на чудо ;-)

>Вы не пробовали подменить tlink в BC 5.0 на альтернативный линковщик?
Нет, я в этом вопросе не силен. Если порекомендуете какой-нибудь - попробую.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Сам не силен в этом вопросе, так как борландом под вин32 не пользовался. Зато по Lazy Assembler помню хороший линковщик: ALINK
Работает под вин32 и при этом умеет генерить дос-проги. По параметрам ком. строки он несовместим с tlink, так что придется что-то делать. Можно подправить исходный код, заодно компильнув под х64. Или можно написать програмку, назвав ее tlink, которая будет вызывать alink с нужными параметрами.
Как-то так.
La Forge
Advanced Member
Lt. Cmdr.

Откуда: Рязань
Всего сообщений: 3248
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 нояб. 2012
Вообще конечно странно, что для С подобного нет, ибо в моём Паскалевском направлении есть Free Pascal, который всё это умеет. http://freepascal.org/ Сам, правда, пробовал только Lazarus для Win32.
dk_spb
Advanced Member


Всего сообщений: 5056
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 сен. 2009
Насколько я с наскока понял из С остались только Visual C++ и GCC. Все остальные умерли, хотя некоторые еще делают вид что трепыхаются.
Visual'у DOS не нужен по религиозным соображениям, и в этом корень моей проблемы.
Есть ли к GCC нормальные IDE с отладчиком под win64 я так и не понял пока.
<<Назад  Вперед>> Страницы: 1 2 3
Печать
Полигон-2 »   Флейм на общие темы »   Хочется странного
RSS

1 посетитель просмотрел эту тему за последние 15 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS