Вниз
Скачать: CL | DM;

Как сделать Variants и System.Variants одним юнитом в XE6?   Найти похожие ветки 

← →
Дмитрий Белькевич ©   (2014-11-05 19:51) [0]

Добрый день.

Пытаюсь собирать проект из командной строки с помощью компилятора dcc32.exe. Он не распознает модули, описанные кратко, как "Variants" с новыми названиями типа "System.Variants". Пишет Fatal: F1026 File not found: "...Variants.dcu". В среде проект собирается нормально. Скажите - какой параметр нужно передать для dcc32, что бы он собирал проект так же, как это происходит в среде?


← →
MBo ©   (2014-11-05 20:18) [1]

namespace определить
-NSSystem;VCL и т.д.

Возможно, если собирать с помощью MSBuild - будет проще (я не использовал)


← →
MBo ©   (2014-11-05 20:23) [2]

Вот что в dproj за это отвечает:
       <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;D atasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>

И эмэсбилд этот файл берет:
msbuild ATest.dproj /t:Rebuild /p:Config=Release


← →
Rouse_ ©   (2014-11-05 20:25) [3]


> Пытаюсь собирать проект из командной строки с помощью компилятора
> dcc32.exe. Он не распознает модули

Значит неверно указаны параметры командной строки на входе.
Дам совет, сделай прокси, которая выступит в качестве dcc32 и напишет тебе все параметры передаваемые компилеру на вход.


← →
Игорь Шевченко ©   (2014-11-05 23:47) [4]

Среда при сборке показывает dcc command line


← →
DVM ©   (2014-11-05 23:52) [5]

MSBuild надо использовать как уже сказали. В файле проекта все эти Unit Scope описаны.


← →
DVM ©   (2014-11-05 23:55) [6]

А использовать dcc32 напрямую - пустая трата времени, т.к. любые настройки относительно параметров компиляции и сборки придется делать в таком случае дважды - один раз для компиляции в среде, второй - из командной строки. MSBUILD вообще очень гибкое средство, есть кучи тасков под разные задачи, можно наклепать и своих.


← →
Германн ©   (2014-11-06 02:30) [7]

Любопытства ради. А кто такой MSBuild? И где его найти?


← →
MBo ©   (2014-11-06 07:37) [8]

>Германн ©   (06.11.14 02:30) [7]
Утилита для сборки (типа make), входит в состав последних RAD Studio. Её использует и сама среда.


← →
Дмитрий Белькевич ©   (2014-11-06 08:15) [9]

MSBuild собрало :) I"m like it :) буду разбираться и скрипты под него переписывать...

нашел такую ссылку еще.

http://docwiki.embarcadero.com/RADStudio/XE6/en/Building_a_Project_Using_an_MSBuild_Command

на удивление - всё заработало, собрало и для win64 и для win32 с первого раза, можно признать чудом :)


← →
DVM ©   (2014-11-06 10:18) [10]


> Дмитрий Белькевич ©   (06.11.14 08:15) [9]

В дополнение, чтобы dcc32 распознавал алиасы, надо ему в командной строке в ключе -A их перечислять все:

SET UNITALIASES=-ARtti=System.Rtti -ATypInfo=System.TypInfo -AZLIB=System.ZLIB -ADB=Data.DB -AStrUtils=System.StrUtils -AShellAPI=Winapi.ShellAPI ....

"%DELPHIROOT%\bin\dcc32.exe" -CG -Q -B+ -$B- -$D- -$A8+ -$Q- -$R- -$S- -$L- -$M- -$O+ -$W- -$Y- -$Z1+ -$J- -$C- -$U- -$I- %UNITALIASES% ....

только муторно это


← →
jack128 ©   (2014-11-06 14:59) [11]


> Утилита для сборки (типа make), входит в состав последних
> RAD Studio.

Это часть .NET


← →
Дмитрий Белькевич ©   (2014-11-06 18:31) [12]

Да, MSBuild в дотнете лежит.

>строке в ключе -A их перечислять все:

можно утащить список параметров компиляции, но буду пробовать на msbuild перейти.


← →
Rouse_ ©   (2014-11-06 19:22) [13]


> Игорь Шевченко ©   (05.11.14 23:47) [4]
> Среда при сборке показывает dcc command line

Мы тоже так думали, когда билдсервер поднимали, в итоге там был какой-то нюанс, который показала только прокся над dcc32.exe.
Давно конечно было, но может Jack128 вспомнит, бо сейчас это его епархия :)


← →
jack128 ©   (2014-11-06 21:13) [14]


> Мы тоже так думали, когда билдсервер поднимали, в итоге
> там был какой-то нюанс, который показала только прокся над
> dcc32.exe.

не-не-не, ты перепутал. Проксю для dcc мы писали, когда с эврекой разбирались.


← →
Rouse_ ©   (2014-11-06 21:25) [15]


> jack128 ©   (06.11.14 21:13) [14]
> не-не-не, ты перепутал. Проксю для dcc мы писали, когда
> с эврекой разбирались.

Это тоже, но помнишь ты говорил что там не все гладко с переменными окружения, когда мы еще без эврики билдсервак запускали. Траблы кажется с директивами DEBUG/RELEASE были...


← →
Германн ©   (2014-11-07 02:59) [16]


> jack128 ©   (06.11.14 14:59) [11]
>
>
> > Утилита для сборки (типа make), входит в состав последних
> > RAD Studio.
>
> Это часть .NET

Теперь понятно почему у меня его нет.


← →
Дмитрий Белькевич ©   (2014-11-08 15:39) [17]

Вот это дополнительно нужно:

http://stackoverflow.com/questions/5633221/how-to-compile-a-delphi-projectgroup-using-msbuild-called-from-an-embarcadero-ma

запускать rsvars.bat.


← →
MBo ©   (2014-11-10 07:59) [18]

До кучи - про использование bat-файлов в сборке
http://wiert.me/2014/11/06/delphi-and-batch-files/



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.034 c
15-1418765402
Юрий
2014-12-17 00:30
2015.09.10
С днем рождения ! 17 декабря 2014 среда


15-1420313485
alexdn
2015-01-03 22:31
2015.09.10
Конвертер php в delphi


15-1413357927
ВладОшин
2014-10-15 11:25
2015.09.10
Думаю писать StringToТелефоны


15-1412782525
alexdn
2014-10-08 19:35
2015.09.10
Вот тоже просьба!


15-1417210278
Юрий
2014-11-29 00:31
2015.09.10
С днем рождения ! 29 ноября 2014 суббота




   Наверх