Delphi как IDE для FPC

Вопросы использования сторонних (не входящих в состав FPC и Lazarus) утилит и библиотек.

Модератор: Модераторы

Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Delphi как IDE для FPC

Сообщение Mirage »

Обнаружил, что Delphi2007 (а может и более ранние) при компиляции вызывает dcc32.exe. Т.е. компилятор стал внешним, в отличии от, скажем, Delphi 7.
А это значит, что сделать враппер с таким же названием, который, в зависимости от настроек вызывает либо оригинальный dcc32, либо fpc, не составляет особого труда. Сюда же кросскомпиляция и прочие прелести.
Кто-нибудь знает - может это уже сделано?
Аватара пользователя
Alexander
энтузиаст
Сообщения: 864
Зарегистрирован: 18.12.2005 18:10:00
Откуда: оттуда
Контактная информация:

Сообщение Alexander »

Насколько я знаю Делфи всегда использовал этот консольный
компилятор. Мой знакомый отделял его и использовал отдельно.
Это был кажется 3й Делфи.
Аватара пользователя
NXP
постоялец
Сообщения: 187
Зарегистрирован: 02.01.2008 15:11:56
Откуда: Воронеж
Контактная информация:

Сообщение NXP »

Delphi 7 (и более ранние версии) использует компилятор в виде либы.
Это лего установить с помощью Process Explorer
Про другие не знаю, т.к. забил на Delphi
Внешний bcc32 - для совместимомти
spv
новенький
Сообщения: 71
Зарегистрирован: 26.09.2006 13:57:46
Откуда: Подмосковье

Сообщение spv »

Есть даже такая штука- SDelphi (или SimpleDelphi) - самопальная программка, использующая куски Delphi для компиляции дельфевого проекта без дельфей. Компилирует с использованием VCL, работает даже с флешки.

Выложить не могу- она как-бы пиратская (т.к. использует дельфевые либы), сходу найти ее тяжело, но в сети она есть. Весит несколько мегабайт.
Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Сообщение Mirage »

Да меня собственно наоборот интересует - IDE Delphi, а компилятор чтоб можно было FPC подключать когда надо. Эксперт такой типа. Неужели нет такого??
D7 точно не использует внешний компилер в IDE, а D2007 точно использует.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Это просто лишено смысла. В Дельфи компилятор очень сильно интегрирован с IDE. Если просто заменить его на что-то другое, не будут работать ни навигация по коду, ни отладка - а без них от IDE остается текстовый редактор... Перепиливать же FPC, чтобы он выдавал совместимые бинарники, нереально хотя бы потому, что формат этих бинарников закрыт.
Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Сообщение Mirage »

Когда я переименовываю dcc32.exe работает все (включая навигацию и всякие инсайты), кроме собственно компиляции. Так что интергрирован другой компилятор, попроще (у меня навигация не всегда фурычит, а если используются пакеты то вообще редко).
И потом, что лишено смысла? Сейчас, чтобы проверить компилируется ли проект посредством FPC мне надо переключиться в Фар, и запустить батник (который надо еще догадаться сделать :) ). Легко? Если нет ошибок, то да. А если есть, то гулять по исходникам и искать указанные места довольно тоскливо. И с варнингами тоже самое (у меня их ~200 штук, в основном не по делу).
Перепиливать ниче не надо.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Батник можно запихнуть в Project Group. Туда, кстати, можно вообще черта лысого запихнуть, потому что это обычный makefile.
А что мешает вместо фара Лазарь запустить? К нему и dcc32.exe можно прикрутить - вполне возможно, что вообще безо всяких изменений.
Аватара пользователя
FedeX
постоялец
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Сообщение FedeX »

Глянул в тему да вспомнил, что у меня уже с год как в Delphi7 не знаю от куда появился вроде как эксперт под названием DXP вродь. Я Д7 давно не юзаю. Так стоит... Если что TurboDelphi или Lazarus. Чо это такое не знаю - вроде я его не устанавливал. Я даже думал, что это он с Лазарем установился. Но вроде это то о чём вы говорите :lol:

Изображение

правка... Заглянул в Гугль и по первой же ссылке понял, что это GLScene мне прицепила такой плагин. Воть кто-то пишеть:
But I didn't use Lazarus to make them, I used DXP (IDE plugin
for Delphi 7, you can find it in the Utilities/DXP CVS directory
of GLScene), which adds FreePascal compilation capability into
the Delphi IDE.
Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Сообщение Mirage »

А по какому запросу в гугл заглянул? Мне че-то не находит никакого DXP. А так вроде то что надо.
Аватара пользователя
FedeX
постоялец
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Сообщение FedeX »

запрос FreePascal DXP.
Как я понял он написан автором ГЛСцены и лежит гдето в CVS репозитории оной.
vital
новенький
Сообщения: 86
Зарегистрирован: 17.10.2007 14:52:59

Сообщение vital »

Помедитировал тут над крупицами доки по ToolsAPI :) и исходниками из каталога ...\Source\ToolsAPI... В принципе, попробовать прикрутить FPC к Delphi можно.
Что и где можно почитать об отладочной информации, генерируемой FPC и прочих вопросах такого плана(форматы модулей и т.д. и т.п.)?
Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Сообщение Mirage »

По идее все должно быть в доках фрипаскаля.
Но очевидно, что заставить дельфю отлаживать пошагово fpc-экзешник не получится, т.к. отладочная инфа совсем другая у FPC.
А вот скомпилировать посредством FPC и запустить экзешник, а также в нужной точке тормознуть (int 3) и глянуть asm-код можно будет не выходя из IDE.:)
Собственно, запуск FPC вместо dcc32 делается на счет раз и без ToolsAPI (переопределением этого самого dcc32), а вот чтобы ошибки/варнинги выдавал в понятном дельфе виде (чтоб кликнул и перешел на место ошибки), тут основной гемор, я так думаю.
vital
новенький
Сообщения: 86
Зарегистрирован: 17.10.2007 14:52:59

Сообщение vital »

Mirage писал(а):1. По идее все должно быть в доках фрипаскаля.
2. Но очевидно, что заставить дельфю отлаживать пошагово fpc-экзешник не получится, т.к. отладочная инфа совсем другая у FPC.
А вот скомпилировать посредством FPC и запустить экзешник, а также в нужной точке тормознуть (int 3) и глянуть asm-код можно будет не выходя из IDE.:)
3. Собственно, запуск FPC вместо dcc32 делается на счет раз и без ToolsAPI (переопределением этого самого dcc32), а вот чтобы ошибки/варнинги выдавал в понятном дельфе виде (чтоб кликнул и перешел на место ошибки), тут основной гемор, я так думаю.


1. Думал, может, общественности известны какие-нибудь статьи по этой теме, хотя бы англоязычные. Ну да ладно, будем курить доку фрипаскаля :)
2. Ничего пока сказать не могу см. выше :) Правда, есть один момент: что означает в Options->Compiler->Assembler output пункт Use TASM? Генерировать отладочную информацию в формате, понятном Turbo debugger'у? Так в Delphi оный как раз и используется... Извините за идиотские вопросы, просто в этом вопросе я пока представитель отряда ламеровидных :lol:
3. Некошерно как-то - переименования всякие туда-обратно. Понимаете о чём я :wink:
Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Сообщение Mirage »

2. Нет такого уже в D2007. Только опция генерации инфы для TD32 есть.
3. В смысле лицензии и т.п.? Ну не факт. Вроде ничему не противоречит. Да и реализовать-то по-ращному можно. Главное чтоб работало.
Ответить