Cannot build after reinstalling XE2 [duplicate] - delphi

This question already has answers here:
Closed 10 years ago.
Possible Duplicate:
Delphi XE - F1027 Unit not found: 'System.pas' or binary equivalents (.dcu) upon Activation of trial version
I had to format myu win7 machine so i reinstalled Delphi XE2 from scratch (Embarcadero® RAD Studio XE2 Version 16.0.4429.46931 ).
After installing it I installed all my third party components (some of them were not for Update 4, like SDAC from Devart, I had v 6.1).
Now if I do a new VCL Forms application and build it (so no logic, just an empty form) I have:
[DCC Fatal Error] Project1.dpr(1): F1027 Unit not found: 'System.pas' or binary equivalents `(.dcu)`
My first thought is uninstall all and reinstall, but do you have a clue?
Where should I start from?
Thanks.

1) Tools / Options / Environment / Delphi / Library - check correct paths
2) sysinternals Process Monitor, filter file accesses, filter by path cotaining "system." - look in which folders dcc tries to get that file instead of correct path

Related

Link with Runtime Package in Delphi Tokyo

I'm using Delphi Tokyo and I would like to build my App.exe with some run-time packages, so I have setup my project's options as shown below
I manually typed into the run-time packages list as shown below
While building the project I got error message that those rtl250, vcl250 could not be found
When trying to add those packages using browse button, Delphi asked me to find those packages using .dcp extention not .bpl, which I have no ideas where to find those files
Please guide me how to fix this
The names you must specify there are the names of the .dcp files. These do not contain the version numbers. Use:
rtl, vcl
...rather than:
rtl250, vcl250
...and it will work.
This is actually a feature (introduced many years ago), so you don't have to change those names when you upgrade to a new Delphi version.

Cannot use FireDAC with RAD studio 10.2 release 1

I've updated RAD Studio 10.2 to the recent 10.2.1 release.
Now, when I compile a previously working program, I get this error :
[dcc32 Fatal Error] TestForm.pas(7): F2051 Unit FireDAC.Stan.Error was compiled with a different version of FireDAC.Stan.ResStrs.S_FD_PgUnsupTextType.
It's easy to reproduce on an empty project : I simply insert a TFDPhysMySQLDriverLink or TFDMSSQLDriverLink FireDAC component on a form and I get the same error.
Could you help me ?
--- Edited ---
I've kept RAD 10.1 Berlin installed but it seems that paths are completely separated between both installs (18.0 versus 19.0 directories).
I've installed RAD 10.2.1 yesterday and I've not changed any system path. It was working perfectly with RAD 10.2...
The compiler path of the Test project (see above) is empty.
Here are the "Tools/Options/Delphi Options/Library/Library" paths :
$(BDSLIB)\$(Platform)\release
$(BDSUSERDIR)\Imports
$(BDS)\Imports
$(BDSCOMMONDIR)\Dcp
$(BDS)\include
Here are the related delphi environment variables :
$(BDSLIB) == h:\program files (x86)\embarcadero\studio\19.0\lib
$(BDSUSERDIR) == H:---CCF\Users\CC\Documents\Embarcadero\Studio\19.0
$(BDS) == h:\program files (x86)\embarcadero\studio\19.0
$(BDSCOMMONDIR) == C:\Users\Public\Documents\Embarcadero\Studio\19.0
These paths are correct except H:---CCF\Users\CC\Documents\Embarcadero\Studio\19.0 which doesn't exist.
$(BDSLIB) leads to the correct versions of FireDAC.Stan.ResStrs.dcu (dated on 29/07/2017).
I've tried to displace "h:\program files (x86)\embarcadero\studio\18.0" directory but the problem is still the same.
When I include the H:\Program Files (x86)\Embarcadero\Studio\19.0\source\data\firedac in my project search path, this solves the issue but the FireDAC DCUs come into my project and this is not a normal situation.

Firemonkey designide.dcp 64 bit [duplicate]

This question already has an answer here:
How add Delphi XE2 64bit support to a simple Delphi XE2 32bit VCL component?
(1 answer)
Closed 9 years ago.
Has anyone successfully build a custom component in Firemonkey using designide.dcp for a 64 bit OS?
I am trying to add a design editor to a custom component. I followed the tutorial on http://docwiki.embarcadero.com/RADStudio/XE3/en/Creating_a_Component_Editor_and_a_Property_Editor_for_FireMonkey_Components.
This works just fine when compiling to 32 bit, but I get the following error for 64 bit :
[dcc64 Fatal Error] ComponentEditor.pas(10): E2213 Bad packaged unit format: c:\program files (x86)\embarcadero\rad studio\11.0\lib\win32\release\designide.dcp.DesignEditors - Expected version: 25.0, Windows Unicode(x64) Found version: 25.0, Windows Unicode(x86)
Looking at the path this makes sense as the file refer to lib\win32. However, under lib\win64 there is no such file.
I've been trying to find a solution on the internet without any luck. It does not look like many people have tried this yet.
There is no designide.dcp for 64 bit. The IDE (and therefore all of the design time code) is 32-bit. It can compile 64-bit targets, but the IDE itself (and any components and packages) are 32-bit only.

'designide' must be recompiled when installing DWScript on Delphi XE2

I'm running Delphi XE2 w/ update 3.
I've just checked out the read-only branch of DWScript from the svn repository. I try to install dwsLib.dpk from the DelphiXE2 folder but receive the following error:
[DCC Fatal Error] dwsLibRuntime.dpk(30): E2225 Never-build package 'designide' must be recompiled
I tried building dwsLibRuntime.dpk first, but I get an error about missing TdwsUnit component, so that doesn't work, either. I'm not having any luck finding contact info for the author, so am trying here.
Any advice would be greatly appreciated.
The short answer is: DWScript doesn't target Delphi XE2.
Quote:
DWScript lead platform is currently Delphi XE, compatibility with
Delphi 2009 & Delphi 2010 is maintained, but some features may be
restricted (RTTI f.i.).
You must fix the source code if you want it to work with Delphi XE2.
I.am using XE2 with the trunk code and it works fine. I loaded up each dpi (there are two) and built and installed the first. Then compile your code ensuring that you point to the source folders (there are at least three). Failing that I'll post you an innosetup exe that installs it into XE2 that I've made,

Install the latest build of Indy 10 on Delphi 2009 [duplicate]

This question already has an answer here:
Step by step upgrade of Indy 10 in Delphi 2009
(1 answer)
Closed 3 years ago.
Is there a step-by-step guide for updating the Indy 10 components in Delphi 2009?
I've read the uninstalling thread and have the latest build (IndyTiburon.zip). However there appears to be no installation instructions.
If you have accomplished this, please share the details.
Edit: I have managed to get the packages installed by messing with the "requires" section in dclIndyProtocols120 and dclIndyCore120.
Essentially removed all Indy package dependencies from "requires" section and just used the Library path resolve things. Added ..\Lib\Core, ..\Lib\System and ..\Lib\Protocols to the Lib path. Had to leave dclIndyProtocols120 in requires for dclIndyCore120 as it wont install without this.
All 3 packages compiled (including IndySystem120) and seems to be working okay now.
This should be easier for D2009 users. I had to update to resolve an SMTP bug in Indy (see link).
On this question there is a more satisfying answer.
For all versions before D2009 you can use a Fulldx.bat script to recompile the packages and then just open the BPL files in (for example Indy-10.5.5\D6\dclIndyCore60.bpl and Indy-10.5.5\D6\dclIndyProtocols60.bpl) in the Delphi 2009 IDE packages dialog. Now with Delphi 2009, the FullD12.bat is there but it is not doing anything.
My simple solution is to create Indy components at run time only. I add the Indy Tiburon Core, System and Protocols to the projects search path, and also use Apache Ant with a build script to run the compiler for the final build.
One IIRC needs to compile system core and protocols in that order.
Moreover a package is a .BPL and a .DCP. So you probably would have to copy the .bpl and the .dcp to that directory in a normal case. The .BPL is what programs need to run, but to compile something that uses the .BPL (statically) you also needs the .dcp.
But that doesn't work for the Indy caseafaik because it also needs includefiles, so you need to add all their paths to the library path.
IIRC is that Delphi (at least the versions that I know) don't add directories to paths when installed, and one must always add paths to directories with .dcp or .dcu's manually.
(contrary to Lazarus that builds a list of dirs from the installed packages. But partially that is maybe also a fix for not having something akin .dcp yet, and in generally be more source oriented)
Note that I don't have D2009, it is just experience from general manual Indy compilation.
Maybe a simple method for anyone looking 10 years later... (tested under Delphi XE5):
Download the latest Version from https://indy.fulgan.com/ZIP/.
Extract the ZIP-archive into a folder of your choosing (I made a folder "Delphi Lib" under my Documents).
Throw out all Indy .dcu Files (Indy[...].dcu and Id[...].dcu) from your Delphi installation (for Example: C:\Program Files (x86)\Embarcadero\RAD Studio\12.0 (The last folders name may vary on your installation))
Open Delphi and go to Tools -> Options. Get to the "Library"-Listing and add the following folders of your newly downloaded Indy: /lib/Core/, /lib/System, /lib/Protocols.
As always: Help yourself and make backups before deleting anything. You do not want to reinstall your comlete Delphi because you threw away a file you should've kept...

Resources