简体   繁体   English

从FinalBuilder与IDE进行编译时,$(BDSCOMMONDIR)不同

[英]$(BDSCOMMONDIR) different when compiling from FinalBuilder vs IDE

I am in the middle of upgrading from Delphi XE3 to XE7 and I have noticed that my FinalBuilder script is no longer working as expected. 我正在从Delphi XE3升级到XE7的过程中,并且我注意到我的FinalBuilder脚本不再能按预期工作。

I have various Delphi projects configured to output the BPL / DCP files to $(BDSCOMMONDIR)\\* which is set as a system environment variable to C:\\Users\\Public\\Documents\\Embarcadero\\Studio\\15.0 . 我配置了多个Delphi项目,以将BPL / DCP文件输出到$(BDSCOMMONDIR)\\* ,该文件设置为系统环境变量,设置为C:\\Users\\Public\\Documents\\Embarcadero\\Studio\\15.0 Opening up the projects in the IDE & compiling works as expected, however, whenever I compile using FinalBuilder the files are built to C:\\Users\\Public\\Documents\\RAD Studio\\15.0 and I have no idea why, I have searched everywhere and can't see where this path is set ie 在IDE中打开项目并按预期进行编译,但是,每当我使用FinalBuilder进行编译时,文件都构建到C:\\Users\\Public\\Documents\\RAD Studio\\15.0 ,我不知道为什么,我到处搜索了无法看到在哪里设置此路径,即

  • (IDE) Tools -> Options -> Environment Variables (IDE)工具->选项->环境变量
  • %APPDATA%\\Embarcadero\\BDS\\15.0\\environment.proj
  • FinalBuilder environment variables FinalBuilder环境变量
  • System environment variables 系统环境变量

In all those locations the path is as expected. 在所有这些位置,路径均符合预期。 My suspicion is it's an issue with having both XE3 and XE7 installed on the same machine, purely because for the XE3 setup $(BDSCOMMONDIR) points to C:\\Users\\Public\\Documents\\RAD Studio\\10.0 (only difference is the product version). 我的怀疑是在同一台计算机上同时安装XE3 XE7是一个问题,纯粹是因为对于XE3设置, $(BDSCOMMONDIR)指向C:\\Users\\Public\\Documents\\RAD Studio\\10.0 (唯一的区别是产品版本)。 As I am only evalulating XE7 at the moment I would like to try avoid having to uninstall XE3 unless it's absolutely necessary. 由于我目前仅评估XE7,因此除非绝对必要,否则我想避免避免卸载XE3。

Note - one other difference here is when I installed XE7 I chose the Delphi install rather than RAD Studio one which I used previously when installing XE3 (I don't need the C++ Builder stuff). 注意-这里的另一个区别是,当我安装XE7时,我选择的是Delphi安装,而不是以前安装XE3时使用的RAD Studio(我不需要C ++ Builder的东西)。

Does anyone have any idea why this is happening? 有谁知道为什么会这样吗?

BDSCOMMONDIR is virtualised along with all the other delphi variables like BDS, otherwise it's impossible to compile with multiple versions of delphi.. which is something library/component vendors do all the time. BDSCOMMONDIR与所有其他的delphi变量(例如BDS)一起被虚拟化,否则就不可能使用多个版本的delphi进行编译。这是库/组件供应商一直在做的事情。

The issue here is a bug in Finalbuilder's XE7 support, a fix will be released shortly. 这里的问题是Finalbuilder的XE7支持中的错误,很快将发布修复程序。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM