Recent

Author Topic: Installing JCL (JEDI)  (Read 26538 times)

TeoUrbana

  • New Member
  • *
  • Posts: 39
    • Distração For Fun
Installing JCL (JEDI)
« on: July 25, 2013, 10:43:48 pm »
Hello to all. I am a beginner and do not speak English so excuse any errors.
I'm a fan of jedi components in Delphi. I found in the JCL folder, the installation of JEDI, a folder with some fpc LPK's to install (...\jcl\jcl\packages\fpc). Installed successfully: Jcl.lpk, JclContainers.lpk, JclDeveloperTools.lpk.
Now, the last ... in JclVcl.lpk am with errors:

E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1030,28) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1032,25) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1119,24) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1120,27) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1121,24) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1122,33) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1621,23) Error: Identifier not found "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1622,23) Error: Identifier not found "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1623,24) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1806,14) Error: Identifier not found "GetDIBSizes"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1807,14) Error: Identifier not found "GetDIBSizes"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1817,11) Error: Identifier not found "GetDIB"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(1818,11) Error: Identifier not found "GetDIB"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(2046,20) Error: identifier idents no member "ScanLine"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(2742,9) Error: identifier idents no member "OwnerCriticalSection"
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(3879,19) Error: Can't determine which overloaded function to call
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(3879,40) Error: Can't determine which overloaded function to call
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(3974,19) Error: Can't determine which overloaded function to call
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(3974,40) Error: Can't determine which overloaded function to call
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(4978,11) Error: Can't determine which overloaded function to call
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(4984,14) Error: Can't determine which overloaded function to call
E:\LAZARUS\components\_ComponentesTerceiros\JCL_JEDI\jcl\jcl\source\vcl\JclGraphics.pas(4985,14) Error: Can't determine which overloaded function to call

I use win8 64bit
Lazarus 1.0.10.0
fpc 2.6.2
JEDI installer: JVCL347CompleteJCL241-Build4571
I hope you can help me in this endeavor

howardpc

  • Hero Member
  • *****
  • Posts: 3484
Re: Installing JCL (JEDI)
« Reply #1 on: July 25, 2013, 11:52:53 pm »
You've done well to get as many Jedi packages compiled using Lazarus as you have.
The Jedi project is Windows-specific (it contains quite a lot of Intel assembler that exploits intimate knowledge of the Borland/Embarcadero compiler and libraries, and the Windows APIs), and also is issued under a licence that makes it incompatible with Lazarus/FPC.
To provide cross-platform functionality the FPC graphics routines do not offer for example a scanline property as found in the VCL. This wiki page has more information:
http://wiki.lazarus.freepascal.org/Developing_with_Graphics
If you ask about particular Jedi components you want to use, it may be that people on this list can point you to fpc-compatible alternatives that are not so Windows-centric. A few individual Jedi components have been ported successfully to Lazarus, but not AFAIK the whole Jedi package.

ideabrush

  • New Member
  • *
  • Posts: 24
Re: Installing JCL (JEDI)
« Reply #2 on: July 26, 2013, 07:16:09 am »
Speaking of specific components, I have been looking for a Delphi & FPC compatible alternative for TJvFormStorage and TJvAppINIFileStorage. I realize that in Lazarus there's TIniPropStorage and a Form's SessionProperties that give the same functionality, but using those means I can't have my app's source code compilable in both Delphi and Lazarus.

I also use TJvZlibMultiple. I've found Abbrevia that works on both Delphi and Lazarus. However, I still have problem in zipping a whole folder using Abbrevia, so I have to keep using TJvZlibMultiple for now.

Ultimately, I'd like to migrate completely to Lazarus for multi-platform deployment, but right now I still have other dependencies on Delphi that keeps me from doing so.  :(

BigChimp

  • Hero Member
  • *****
  • Posts: 5740
  • Add to the wiki - it's free ;)
    • FPCUp, PaperTiger scanning and other open source projects
Re: Installing JCL (JEDI)
« Reply #3 on: July 26, 2013, 08:19:53 am »
@howard: as the OP is talking about compiling .lpk files in a folder below Lazarus, these are probably already converted and supplied with Lazarus.

Could be a bug somewhere.
Want quicker answers to your questions? Read http://wiki.lazarus.freepascal.org/Lazarus_Faq#What_is_the_correct_way_to_ask_questions_in_the_forum.3F

Open source including papertiger OCR/PDF scanning:
https://bitbucket.org/reiniero

Lazarus trunk+FPC trunk x86, Windows x64 unless otherwise specified

howardpc

  • Hero Member
  • *****
  • Posts: 3484
Re: Installing JCL (JEDI)
« Reply #4 on: July 26, 2013, 08:31:18 am »
But the only Jedi-based code I know of that is distributed with Lazarus is the code formatter, which is a tiny part of the Jedi library.
I assumed the OP was referring to the .lpk files available at
http://sourceforge.net/projects/jcl/

BigChimp

  • Hero Member
  • *****
  • Posts: 5740
  • Add to the wiki - it's free ;)
    • FPCUp, PaperTiger scanning and other open source projects
Re: Installing JCL (JEDI)
« Reply #5 on: July 26, 2013, 08:43:55 am »
@Howard, I think you're right after all - the OP implied he found it in his Laz install but I can't find those lpks... so they're probably indeed hosted externally.
Sorry for the noise.
Want quicker answers to your questions? Read http://wiki.lazarus.freepascal.org/Lazarus_Faq#What_is_the_correct_way_to_ask_questions_in_the_forum.3F

Open source including papertiger OCR/PDF scanning:
https://bitbucket.org/reiniero

Lazarus trunk+FPC trunk x86, Windows x64 unless otherwise specified

wp

  • Hero Member
  • *****
  • Posts: 7353
Re: Installing JCL (JEDI)
« Reply #6 on: July 26, 2013, 09:25:18 am »
Quote
I can't have my app's source code compilable in both Delphi and Lazarus
But in practice, is this really feasible at all? When you modify a Lazarus form the changes go into the lfm file but not into Delphi's dfm. My opinion is that once you decided to follow the Lazarus path there's no way back without a lot of rework. To the experts in this forum: Is this correct?
« Last Edit: July 26, 2013, 09:50:34 am by wp »
Mainly Lazarus trunk / fpc 3.2.0 / all 32-bit on Win-10, but many more...

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8583
  • FPC developer.
Re: Installing JCL (JEDI)
« Reply #7 on: July 26, 2013, 10:34:36 am »
But the only Jedi-based code I know of that is distributed with Lazarus is the code formatter, which is a tiny part of the Jedi library.

Not true, since Lazarus distributes FPC:
- Jedi api lib is in FPC as "packages/winunits-jedi". Hasn't been synchronized in one or two years though.
- Jedi SDL is in packages/sdl

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8583
  • FPC developer.
Re: Installing JCL (JEDI)
« Reply #8 on: July 26, 2013, 10:45:30 am »
Quote
I can't have my app's source code compilable in both Delphi and Lazarus
But in practice, is this really feasible at all? When you modify a Lazarus form the changes go into the lfm file but not into Delphi's dfm. My opinion is that once you decided to follow the Lazarus path there's no way back without a lot of rework. To the experts in this forum: Is this correct?

Designtime is a problem indeed.  But not all applications have a high designtime percentage.

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3807
  • I like bugs.
Re: Installing JCL (JEDI)
« Reply #9 on: July 26, 2013, 12:46:26 pm »
Quote
I can't have my app's source code compilable in both Delphi and Lazarus
But in practice, is this really feasible at all? When you modify a Lazarus form the changes go into the lfm file but not into Delphi's dfm. My opinion is that once you decided to follow the Lazarus path there's no way back without a lot of rework. To the experts in this forum: Is this correct?

People do maintain projects that compile and work with Delphi and Lazarus. Surely it is possible, but it requires IFDEFs and some extra maintenence work.
However I think people are less motivated to do so because Delphi's VCL is not being improved much (FireMonkey gets more attention) and Lazarus is getting better and robust. People don't need Delphi as a backup solution any more.

The default form file suffix is different (.dfm <-> .lfm) but Lazarus supports the use of .dfm, too. In theory you could design the same GUI in both tools but in practice it is not a good idea. Even with similar components there are small differences in published properties. Lazarus may remove a property which was added by Delphi or vice versa. You cannot use IFDEFs in a form file like you can use in pascal source.
Mostly Lazarus trunk on Manjaro Linux.

ideabrush

  • New Member
  • *
  • Posts: 24
Re: Installing JCL (JEDI)
« Reply #10 on: July 26, 2013, 04:00:36 pm »
Thanks Juha for the clarification. Some time ago I tried converting a test project using Lazarus' built-in tool and was presented with an option of keeping the source code compilable via "Delphi Mode" switch so I thought that was possible.

TeoUrbana

  • New Member
  • *
  • Posts: 39
    • Distração For Fun
Re: Installing JCL (JEDI)
« Reply #11 on: July 26, 2013, 06:11:29 pm »
Well ..
all very interesting answers, but if the "Project JEDI" released an FPC folder containing LPK files, means that something has been ported. As I said in the original post, I managed to successfully compile almost all (did not install anything), lacking only the JCLVcl.lpk.

I still use Delphi 7 and really wanted to use Lazarus for development. Despite finding some interesting components, unfortunately Delphi wins by far in this regard. Here in Brasil I don't have noticed a movement so strong by Lazarus, sure is growing, but it seems that the movement in the United States is much higher.

But back to the subject, what are the LPK files? Are found in this way (... \ jcl \ jcl \ packages \ fpc). I think if you are there is because they are ready for use.
Again, sorry for the bad english.   :(

taazz

  • Hero Member
  • *****
  • Posts: 5365
Re: Installing JCL (JEDI)
« Reply #12 on: July 26, 2013, 06:18:00 pm »
did they come with the pre packaged files or you got them from svn? If you got them from SVN then it might be anything even a half finished conversion or even a fast test to see what is needed to convert them.
Good judgement is the result of experience … Experience is the result of bad judgement.

OS : Windows 7 64 bit
Laz: Lazarus 1.4.4 FPC 2.6.4 i386-win32-win32/win64

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8583
  • FPC developer.
Re: Installing JCL (JEDI)
« Reply #13 on: July 26, 2013, 08:07:20 pm »
It might be worth checking recent JVCL and JCL packages. I assume they cleaned up the assembler a bit since Delphi 64-bit had limited assembler in XE2/3

 

TinyPortal © 2005-2018