Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi 5 -- INDY does not install?
#1
Brand new out-of-the-box Windows 7 plus Delphi 5.  Tried installing Indy (130) as given in the step by step checklist.

Cannot even get past the first step for compiling Indy System components because I'm getting an RTL package not found error when compiling.

Can't find any RTL in my Delphi installation except under \lib\source.

What now?


[Image: F7Ppi34.jpg]
Reply
#2
(02-22-2019, 12:52 AM)Mark Tettnanger Wrote: Brand new out-of-the-box Windows 7 plus Delphi 5.  Tried installing Indy (130) as given in the step by step checklist.

What checklist are you referring to?

The ...130 packages are not the correct packages to use for Delphi 5 (where did you get that idea from?). For Delphi 5, you need to use the ...50 packages instead. Indy's package names are based on the compiler's package version (yes, I'm aware that {$LIBSUFFIX} and {$LIBVERSION} should be used instead - that will be addressed in Indy 11). In fact, because of this, the ...130 packages are not to be used at all (Indy's installation instructions even say so!), it was a mistake for them to have been created in the first place as Delphi 2009 has a package version of 120 whereas Delphi 2010 has a package version of 140. Embarcadero skipped 130 (superstitious?).

Also, note that Delphi 5 has a number of compiler bugs that affect Indy, so contact me privately for updated files that are specific to Delphi 5 (they are not checked in to Indy's VCS systems).

(02-22-2019, 12:52 AM)Mark Tettnanger Wrote: Cannot even get past the first step for compiling Indy System components because I'm getting an RTL package not found error when compiling.

Can't find any RTL in my Delphi installation except under \lib\source.

Because there is no "RTL" package in Delphi 5. You are compiling the wrong packages.

Reply
#3
Thanks, I was a bit overwhelmed switching from ICS to Indy and assumed Indy was also a VCL component library. I'm still not used to working with objects that are strictly classes as this is a higher technical level of Delphi.

Here's what happened.  Since I thought these were VCL components, I started looking for installation instructions.  The indyproject.org main page had no obvious links for installation. I saw the documentation but since it was a 20 MB zipped PDF I tried seeing if there were already simple install instructions on the Web.  There were, on indyproject's site, this help guide. It said I could either use FULLD#.BAT (there were no such batch files) or I could install IndySystemX0.dpk, etc, in order, where X0 is the product version.  Those files are there. Delphi 5 is VER130 according to this guide, so it seemed certain I needed to be compiling IndySystem130.dpk.

I'm a bit rough around the edges with applying object oriented programming principles in Delphi, so this is why I've been a bit lost with Indy.
Reply
#4
(02-23-2019, 02:37 AM)Mark Tettnanger Wrote: I ... assumed Indy was also a VCL component library.

It is, and an FMX component library, too.

(02-23-2019, 02:37 AM)Mark Tettnanger Wrote: I'm still not used to working with objects that are strictly classes as this is a higher technical level of Delphi.

Much of Indy involves components that can be used at design-time, but it does also consist of code-only classes and functions, too.

(02-23-2019, 02:37 AM)Mark Tettnanger Wrote: Here's what happened.  Since I thought these were VCL components, I started looking for installation instructions.  The indyproject.org main page had no obvious links for installation. I saw the documentation but since it was a 20 MB zipped PDF I tried seeing if there were already simple install instructions on the Web.

Yes, the instructions are buried a little bit, but they do exist on the site, as you discovered:

http://ww2.indyproject.org/Sockets/Docs/...on.EN.aspx

(02-23-2019, 02:37 AM)Mark Tettnanger Wrote: [the help guide] said I could either use FULLD#.BAT (there were no such batch files)

Yes, there are. They are in the root \Lib folder of Indy's source code. There is a FULLD_5.BAT file for Delphi 5.

(02-23-2019, 02:37 AM)Mark Tettnanger Wrote: or I could install IndySystemX0.dpk, etc, in order, where X0 is the product version. Those files are there.

Yes, which is what the BAT files compile, using the command-line compiler. I prefer to compile Indy in the IDE, though.

X0 for Delphi 5 is 50. That should have been obvious with the following statement at the top of the install instructions:

Quote:Delphi/C++Builder 6 is version 6.0, so the Indy packages are:
IndySystem60, IndyCore60, IndyProtocols60, dclIndyCore60, dclIndyProtocols60

So, it should stand to reason that, since Delphi 5 is less than Delphi 6, the package names would be less than 60 (ie, 50), not higher (130).

(02-23-2019, 02:37 AM)Mark Tettnanger Wrote: Delphi 5 is VER130 according to this guide, so it seemed certain I needed to be compiling IndySystem130.dpk.

Delphi 5's COMPILER VERSION is 13.0, but its PACKAGE VERSION is 5.0 instead. Even Borland's native package names end in ...50, not in ...130. Like I said earlier, package names are based on the PACKAGE VERSION, not the COMPILER VERSION. {$VERxxx} conditionals represent the COMPILER VERSION. The guide you linked to shows both compiler and package versions for various Delphi products (though, for some reason, it doesn't show the package versions for Delphi 5 and earlier, but this one does).

Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)