Compiler error when compiling runtime package using MSBuild on Delphi XE2 - delphi

I am in the process of upgrading our build server (Jenkins) to Delphi XE2. While compiling a runtime package the following error occurs:
ComponentsR.vrc(61): error RC2135: file not found: ComponentsR_Icon4.ico
There are no icons or resources in this runtime package, so I don't know what to do with this message. What's the "vrc" file btw?
Thanks for your help.

This happens while upgrading the dproj file of a package. The entry is created but the ico file is not (it is not used anyway).
Open the dproj file, search for the ico name and delete that entry.

Related

Vclimg: Needs Vclimg.bpl file from its compiled file Vclimg.dcp

I'm using the Rad Studio 10.4.2 Sydney.
I build a project with runtime packages. One package required - Vclimg.dcp. The final program needs the Vclimg.bpl for that runtime plugin to load successfully.
I search for it on my PC but there is no such a bpl file, only it's dcp equivalent (Vclimg.dcp).
Can we build the *.bpl file from only its compile file *.dcp. If we can, then how? If not, from where can I get the required Vclimg.bpl for my runtime plugin?
The required bpl filename was Vclimg followed by the version number:
Vclimg270.bpl
So always keep in your mind that the version number is a part of the filename.

Delphi XE2 compile error: package compiling tries to create directory?

Why am I getting this error, compiling a package in Delphi XE2 32bits platform:
c:\program files (x86)\embarcadero\rad
studio\9.0\Bin\CodeGear.Delphi.Targets(465,5): error MSB3191: Unable
to create directory "C:\Program Files\Adobe\Adobe Photoshop
CS2\Plug-Ins\Import-Export". Access to the path 'C:\Program
Files\Adobe\Adobe Photoshop CS2\Plug-Ins\Import-Export' is denied.
I found that directory in the package resource directory and conditional search path, and I have removed it from there, but I am still getting this error. Where does it find this path and why does it attempt to create the folder?
This error started to appear when I change the unit output directory to a relative path, that is: "..\source\win32"
Problem solved by creating new package and copying the source file of old package. I think some old info was left incorrectly inside the old package.

Delphi XE2 error building a package

I have a package where a unit uses JCL.
When I try build the package it states
E2225 Never-build package 'Jcl' must be recompiled
So I load the package Jcl.dproj / Jcl160.bpl file into Delphi and build it. No errors here.
But I still get the same error afterwards?
Any possible reasons? I have checked the file Jcl160.bpl get updated on re-build
Had the same error a while ago. Check your system if older versions of the jcl package/bpl is somewhere present. Clean those up and the problem will most likely be gone...

RAVE Report Error "dbrtl160.bpl missing"

When I run RAVE Reports Designer from an IDE (Delphi XE2) I get this error:
"The program can not start because dbrtl160.bpl missing from your computer. Try reinstalling the program to fix this problem"
However, in the Delphi XE2 folder the file dbrtl160.bpl exists.
What is going wrong here?
The file needs to be either in the same folder as your application, or a folder on the system PATH. The IDE uses it from it's own folder, but when your app (or in this case, RAVE) runs it's not in the IDE folder. The IDE usually adds the necessary RAVE folder to the PATH during installation, but if you've installed a RAVE update it could have been deleted or changed, or something else you've installed damaged thte PATH statement.
Delphi packages are just special DLLs, and they're loaded by LoadLibrary when your app starts. The rules for finding them are those that LoadLibrary uses, as well. The search order is specified in the Remarks section of the LoadLibrary documentation on MSDN.
if you using x64 windows, you must copy rave files to C:\Program Files\Embarcadero\RAD Studio\8.0\Rave...

Default Library Path

Prior to my problem, I attempted to install a component which required me to change my Library - Win32 library path. The installation did not work out so I left it. A few days ago, I ran Delphi to work on my project. I compiled the program but Delphi told me "Unit not found: 'Systems.pas' or binary equivalents (.dcu) so I changed the Library path to: C:\Program Files (x86)\Embarcadero\RAD Studio\7.0\lib. I was then able to compile my program but when I clicked a button, none of the code ran!
I went back to check my syntax and everything was correct hence why I was able to compile my program (note: my code and program was left untouched for weeks). I then tried to re-install Delphi (2 times) expecting that the Library Path would fix, but it didn't.
After the failed attempts of trying to restore default settings I did some researched on stackoverflow but I could still not find the answer. Topics I've come across:
Delphi XE : Lost Library path
Delphi can't find System.dcu; what should the default path settings be?
I added the ShowMessage function to test if it worked and it did so I really have no clue what the problem is. However I am still suspecting that my Library Path is incorrect.
What do you guys think the problem could be?
my code
or my IDE library path
Note: current library path = C:\Program Files (x86)\Embarcadero\RAD Studio\7.0\lib
Also, how can I fix this problem?
I guess the linked answer should solve you problem. If you need specific data for Delphi 2010, here is the registry file for 64-bit Windows (for 32-bit Windows the registry branch should be [HKEY_LOCAL_MACHINE\SOFTWARE\CodeGear\BDS\7.0\Library]):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\CodeGear\BDS\7.0\Library]
"Browsing Path"="$(BDS)\\SOURCE\\WIN32\\VCL;$(BDS)\\source\\Win32\\rtl\\common;$(BDS)\\SOURCE\\WIN32\\RTL\\SYS;$(BDS)\\source\\Win32\\rtl\\win;$(BDS)\\SOURCE\\WIN32\\WEBSNAP;$(BDS)\\source\\ToolsAPI;$(BDS)\\SOURCE\\WIN32\\IBX;$(BDS)\\source\\Win32\\Internet;$(BDS)\\SOURCE\\WIN32\\PROPERTY EDITORS;$(BDS)\\source\\Win32\\soap;$(BDS)\\SOURCE\\WIN32\\XML;$(BDS)\\source\\Win32\\db;$(BDS)\\source\\Indy\\Indy10\\Core;$(BDS)\\source\\Indy\\Indy10\\System;$(BDS)\\source\\Indy\\Indy10\\Protocols;$(BDS)\\source\\database;"
"Debug DCU Path"="$(BDS)\\lib\\Debug;$(BDS)\\Lib\\Debug\\Indy10;$(BDS)\\RaveReports\\Lib"
"Language Library Path"="$(BDS)\\lib\\$(LANGDIR);(BDS)\\lib\\$(LANGDIR)\\Indy10"
"Package DCP Output"="$(BDSCOMMONDIR)\\Dcp"
"Package DPL Output"="$(BDSCOMMONDIR)\\Bpl"
"Package Search Path"="$(BDSCOMMONDIR)\\Bpl"
"Translated Debug Library Path"="$(BDS)\\lib\\$(LANGDIR)\\Debug"
"Translated Library Path"="$(BDS)\\lib\\$(LANGDIR)"
"Translated Resource Path"="$(BDS)\\lib\\$(LANGDIR)"
"Search Path"="$(BDS)\\lib;$(BDSUSERDIR)\\Imports;$(BDS)\\Imports;$(BDS)\\Lib\\Indy10;$(BDSCOMMONDIR)\\Dcp;$(BDS)\\include;$(BDS)\\RaveReports\\Lib"
If plain import of the above registry file does not help:
Reboot and try again;
If the problem persists, delete
Software\CodeGear\BDS\7.0 branches from both
HKEY_CURRENT_USER\ and HKEY_LOCAL_MACHINE\ hives and reinstall
Delphi;
Never run automatic installation procedure for unknown
component packages on your working system.

Resources