Lazarus Indy not installable? lazarus / 5-Lazarus Extra Components ---------------------------------------------------------------------- TristamShandy · 2013-09-07 13:44 I use Windows 7, run Lazarus 1.0.12, and from what I can guess from my source code, am attempting to install Indy 10.5.8 on to Lazarus from a DVD (from Blaisepascal.eu). In the Wiki Article "http://wiki.freepascal.org/Indy_with_Lazarus", under "How to Install [3]", I am told that I can "copy the *.pas, *.lrs and *.inc of the \Lib\System, \Lib\Core, and \Lib\Protocols subdirectories into a new directory of your choosing". I just copied the whole source tree from \win\ExtraComponents\Indy to c:\lazarus\fpc\2.6.2\source\packages\IndyLaz. I thought that copying the whole source tree shouldn't hurt it. I guess it must have. When compiling, I got the errors: Code: [Select]G:\Sources\Lazarus\Indy\Lib\Core\IdCompilerDefines.inc(279,4) Warning: Misplaced global compiler switch G:\Sources\Lazarus\Indy\Lib\Core\IdAntiFreeze.pas(78,15) Error: Forward declaration not solved "TIdAntiFreeze.Process;" G:\Sources\Lazarus\Indy\Lib\Core\IdAntiFreeze.pas(60,3) Hint: Unit "IdBaseComponent" not used in IdAntiFreeze G:\Sources\Lazarus\Indy\Lib\Core\IdAntiFreeze.pas(132) Fatal: There were 1 errors compiling module, stopping The code highlighted was line 78 of IdAntiFreeze, in the Type declaration: Code: [Select]procedure Process; override; Since all files from the source were copied, I can't see how "copying too many files" would break this, if that is what I did wrong. Any ideas? TS Later Edit: I noticed from my own message that the drive I used to get Indy was not the drive I thought. So I copied Indy from the DVD to the drive on C: as stated above. I got fresh, shiny new error messages, and the source still refuses to compile. I have now copied all shown and hidden messages here: Code: [Select]Hint: Start of reading config file C:\lazarus\fpc\2.6.2\bin\x86_64-win64\fpc.cfg Hint: End of reading config file C:\lazarus\fpc\2.6.2\bin\x86_64-win64\fpc.cfg Free Pascal Compiler version 2.6.2 [2013/08/24] for x86_64 Copyright (c) 1993-2012 by Florian Klaempfl and others Target OS: Win64 for x64 Compiling indylaz.pas Compiling .\Core\IdAboutVCL.pas Compiling .\Core\IdDsnCoreResourceStrings.pas Writing Resource String Table file: IdDsnCoreResourceStrings.rst Compiling .\System\IdGlobal.pas Compiling .\System\IdException.pas Compiling .\System\IdResourceStrings.pas Writing Resource String Table file: IdResourceStrings.rst Compiling .\System\IdStream.pas Compiling .\System\IdStreamVCL.pas C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(2222, 45) Hint: Local variable "LCPInfo" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(933,2 7) Hint: Parameter "Chars" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(934,7 5) Hint: Parameter "ByteCount" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(935,2 7) Hint: Parameter "Bytes" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(936,7 5) Hint: Parameter "CharCount" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(946,7 5) Hint: Parameter "ByteCount" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(947,3 7) Hint: Parameter "ByteCount" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(956,2 7) Hint: Parameter "AChars" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(958,2 7) Hint: Parameter "ABytes" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(2822, 27) Hint: Parameter "AChars" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(2824, 27) Hint: Parameter "ABytes" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(4013, 26) Hint: Conversion between ordinals and pointers is not portable C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(4211, 3) Note: Local variable "LVoid" is assigned but never used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(4274, 15) Warning: lo\hi(dword\qword) returns the upper\lower word\dword C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(4286, 41) Hint: Local variable "LErr" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(4394, 33) Hint: Local variable "LErr" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(4550, 49) Hint: Local variable "LErr" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(1580, 93) Hint: Parameter "APolicy" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(1581, 31) Hint: Parameter "AName" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(1581, 106) Hint: Parameter "AThreadID" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(5439, 58) Hint: Local variable "tmez" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(5820, 4) Warning: "formal parameter" not yet supported inside inline procedure\function C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(5820, 4) Warning: Inlining disabled C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(5901, 4) Warning: "formal parameter" not yet supported inside inline procedure\function C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(5901, 4) Warning: Inlining disabled C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(5910, 29) Hint: Function result variable does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(1372, 28) Hint: Parameter "ADestEncoding" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6122, 4) Warning: "formal parameter" not yet supported inside inline procedure\function C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6122, 4) Warning: Inlining disabled C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6145, 53) Hint: Local variable "LBytes" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6179, 43) Hint: Function result variable does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6194, 37) Hint: Local variable "Lb" does not seem to be initialized C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6416, 35) Hint: Conversion between ordinals and pointers is not portable C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6416, 27) Hint: Conversion between ordinals and pointers is not portable C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6416, 35) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead. C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdGlobal.pas(6760, 43) Hint: Function result variable does not seem to be initialized IdAboutVCL.pas(38,27) Hint: Parameter "Sender" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\Core\IdAboutVCL.pas(12,52 ) Hint: Unit "ComCtrls" not used in IdAboutVCL C:\lazarus\fpc\2.6.2\source\packages\indylaz\Core\IdAboutVCL.pas(15,3) Hint: Unit "types" not used in IdAboutVCL Compiling .\Core\IdAntiFreeze.pas Compiling .\System\IdAntiFreezeBase.pas Compiling .\System\IdBaseComponent.pas C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdBaseComponent.pa s(150,38) Hint: Parameter "AComponent" not used C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdAntiFreezeBase.p as(104,3) Hint: Unit "windows" not used in IdAntiFreezeBase C:\lazarus\fpc\2.6.2\source\packages\indylaz\System\IdCompilerDefines. inc(279,4) Warning: Misplaced global compiler switch C:\lazarus\fpc\2.6.2\source\packages\indylaz\Core\IdAntiFreeze.pas(78, 15) Error: Forward declaration not solved "TIdAntiFreeze.Process;" C:\lazarus\fpc\2.6.2\source\packages\indylaz\Core\IdAntiFreeze.pas(60, 3) Hint: Unit "IdBaseComponent" not used in IdAntiFreeze C:\lazarus\fpc\2.6.2\source\packages\indylaz\Core\IdAntiFreeze.pas(132 ) Fatal: There were 1 errors compiling module, stopping ---------------------------------------------------------------------- ChrisF · 2013-09-07 14:23 This is a well known issue with Indy for Lazarus. The installation script for Lazarus/FPC has never been updated in Indy; and it can't work properly with subdirectories (plus some other minor issues). Recent topics in this forum about installation for Indy with Lazarus/FPC: http://forum.lazarus.freepascal.org/index.php/topic,21363 http://forum.lazarus.freepascal.org/index.php/topic,20782 And one from Indy forum: http://forums2.atozed.com/viewtopic.php?f=7&t=26483 Concretely, you can: 1/ Respect exactly all the steps described in the "How to install [3] Windows, Indy 10.5.8.0 and above " paragraph at http://wiki.freepascal.org/Indy_with_Lazarus (i.e. all files in one directory only). 2/ Or try to use my updated script  (i.e. indylaz.lpk) to deal with subdirectories during Indy installation. You can find it in one my posts of the second link for this forum (i.e.  "Indy 10 installation instructions on Wiki needs"), or in one of my posts in the link in the Indy forum. Or I can repost, it if you wish. **Edit **: It's possible that the script coming from your DVD is not the old one. And so, that what I've written before is not completely true.  Could you eventually post it, in order I can check it ? ---------------------------------------------------------------------- ChrisF · 2013-09-07 14:29 BTW, you can download the most recent Indy package (currently 10.6) at: http://indy.fulgan.com/ZIP/ **EDIT ** I forgot this link: http://forum.lazarus.freepascal.org/index.php?topic=18191.0 . It seems you have an outdated version of Indy: try with a more recent one. ---------------------------------------------------------------------- TristamShandy · 2013-09-08 00:40 Thanks ChrisF: I have the indylaz.lpk source below. For some reason, it can't be attached. TS Code: [Select]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         Thanks again ---------------------------------------------------------------------- ChrisF · 2013-09-08 13:48 Your script is not the old Indy one, indeed. The most important line in this script being: Code: [Select] So, your problem is probably related to a bug inside Indy itself (as stated into the last link to a topic in this forum I've given in my former post). That's why, unless you really need to use the version present on your CD, I strongly advise you to download the current version of Indy : http://indy.fulgan.com/ZIP/  (current file is "Indy10_5056.zip"). For my own, I'm using them since a while (currently using release 5052) and there is no compilation troubles with them. But, as indicated before, the installation script present in these packages is incorrect. So you'll have to replace it (after having decompress the whole package) by yours, or by mine (I'm attaching it again with this post). You don't need to put all the files into one directory with both these 2 scripts (i.e. the one present on your CD, or mine), but you still need to ask the compilation twice (as indicated into the wiki page) inside Lazarus. Well, if you can at least compile it once, of course ... The second compilation is extremely fast (there is just an minor update for one of the compiled file during this second compilation). Let me know if you still have any problem with your installation.