Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2015.09.10;
Скачать: 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 вся ветка

Текущий архив: 2015.09.10;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.06 c
2-1394229671
alexdn
2014-03-08 02:01
2015.09.10
Мигает картинка


2-1397634920
lewka_s
2014-04-16 11:55
2015.09.10
Список баз данных


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


15-1421340945
Fox
2015-01-15 19:55
2015.09.10
Ранжирование игр на Google Pkay


15-1417815002
Юрий
2014-12-06 00:30
2015.09.10
С днем рождения ! 6 декабря 2014 суббота