|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.07.2010, 11:11 | #21 |
Пользователь
Регистрация: 03.06.2010
Сообщений: 19
|
Безусловно,так было бы проще.
Serge_Bliznykov, можешь поподробнее написать как это сделать Друзья, есть еще одна загвоздка. Компилирую проект вот такой строкой 'C:\dcc32.exe -B C:\Folder\Project1.dpr' Сложность в том, что ему вообще не нужен файл Unit1.pas, т.е. он не ищет в нем ошибки. Компилятору нужен Unit1.dcu, а это Unit1.dfm+Unit1.pas. Если Unit1.dcu нет, то ругается,но если запустить сам проект в делфи без Unit1.dcu, то он его создает. Значит как-то его можно получить. Ключ -B - означает собирание всех модулей, а как то не работает Вопрос: Как запустить компилятор, чтобы он просмотрел Unit1.pas на наличие ошибок Или как консольно создать dcu Последний раз редактировалось Obsever0; 14.07.2010 в 13:49. |
14.07.2010, 12:09 | #22 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,792
|
Цитата:
Цитата:
А потом считывай out.txt
I'm learning to live...
|
||
14.07.2010, 14:47 | #23 |
Пользователь
Регистрация: 03.06.2010
Сообщений: 19
|
Разобрался сам, может кому понадобится:
Чтобы компилятор проверял код на ошибки, нужно скачала натравить его на Unit ExecNewProcess('"C:\dcc32.exe" "C:\Folder\unit1.pas"'); После этого создаться файл dcu, который нужен, чтобы создать exe А потом на файл проекта ExecNewProcess('"C:\dcc32.exe" "C:\Folder\Project1.dpr"'); Притом если к Unit прицеплены другие модули он их тоже проверит! |
14.07.2010, 15:06 | #24 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Зачем такие танцы? Компилятор сам соберёт все модули, перечисленные в uses проекта.
пыщь
|
15.07.2010, 13:27 | #25 |
Пользователь
Регистрация: 03.06.2010
Сообщений: 19
|
Но вот почему-то не собирает проект,может что-то не так делаю:
Код:
Код:
Последний раз редактировалось Stilet; 15.07.2010 в 14:19. |
15.07.2010, 16:17 | #26 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
А так?
dcc32 -W -H -U"C:\путь_к_froms_и_остальным\Li b" -U"C:\путь_к_своим_модулям\" "C:\PROJECT\project1.dpr"
пыщь
|
16.07.2010, 09:20 | #27 |
Пользователь
Регистрация: 03.06.2010
Сообщений: 19
|
Попробовал, как ты предложил. Работает в случае если:
-U"C:\путь_к_своим_модулям\" лежат свои_модули.dcu Если их там нет, то их требует, т.е. сам не собирает проект. dcc32 - это же компилятор, может он и не должен собирать, есть еще make.exe - может им как-то можно собрать? Это просто удивительно написал bat файл и туда просто: dcc32 project1.dpr Он собирает весь проект, создает все необходимые dcu для unit, которые лежат в разных папках. Решение найдено: нужно сделать текущей папку проекта, который нужно откомпилить: SetCurrentDir('C:\PROJECT'); И вызвать: ExecNewProcess('dcc32 project1.dpr') В результате он все модули откомпилирует, покажет ошибки если есть! Последний раз редактировалось Obsever0; 16.07.2010 в 10:42. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
компилятор для Delphi 7 | |{ () T | Общие вопросы Delphi | 7 | 31.12.2019 18:18 |
Компилятор | Avel | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 7 | 27.11.2008 18:14 |
Компилятор | Лубышев | Помощь студентам | 7 | 15.10.2008 18:53 |
компилятор | ZhekON | Общие вопросы Delphi | 6 | 13.09.2007 18:00 |