Compiling Packages in the IDE Using .ppu Compiled Units lazarus / 6-IDE-CodeTools ---------------------------------------------------------------------- TimYoung · 2008-12-02 14:59 Does anyone know if this feature is on the radar screen for Lazarus ?  We develop and market the ElevateDB database engine for Delphi/Visual Studio and recently spent several weeks porting the engine and components to Lazarus for Windows/Windows CE, only to recently find out that we had to pull the trial and non-source code versions of ElevateDB for Lazarus due to the fact that the package manager in the IDE cannot compile/link using pre-compiled .ppu units, even though Free Pascal can do so just fine (which is why it never occurred to us that this would even be an issue). We're being forced to re-evaluate our support for Lazarus because of this short-coming, so we'd like to understand where the Lazarus project stands on this issue.  Any ideas from anyone ? Thanks, Tim Young Elevate Software www.elevatesoft.com ---------------------------------------------------------------------- Paul Ishenin · 2008-12-04 04:11 .ppu is not enough. you need to include also .o files. Though I never tried that. Btw, some people dont use releases and they will not be able to use your trial version with their FreePascal and Lazarus. As result some companies only suggest precompiled demos and versions with source code for Lazarus (like Fastreports company). ---------------------------------------------------------------------- Leledumbo · 2008-12-04 04:46 @PaulIsh I think he means both. The problem is that AFAIK lazarus package must consist of source code of the package, it can't be only the binary version. ---------------------------------------------------------------------- TimYoung · 2008-12-04 14:07 Leledumbo, Yes, the Lazarus docs indicate this to be the case: http://wiki.lazarus.freepascal.org/Unit_not_found_-_How_to_find_units under "Case 2 Compiler finds a unit, but IDE does not". And PaulIsh, yes, we are including both the .ppu and .o files with the distribution, but it still doesn't work.  As for a pre-compiled demo, that's really hard to do for a database engine, but it may be what we end up with (perhaps, a DLL that is called by the trial version).   And finally, yes, we have just resorted to selling our source-code- only version for now.  It's just a shame that we can't create similar distributions to those that we create for Delphi. ---------------------------------------------------------------------- Paul Ishenin · 2008-12-04 15:20 Mattias suggested this solution, though nobody tried: - set package 'update/rebuild' to 'Manual compilation' - add custom compiler option (generate release files) -Ur - compile package - copy package directory and remove all things you don't want to publish (e.g. implementation sections) - codetools will fail to find sources if you removed the whole sources, instead of only the implementation. ---------------------------------------------------------------------- felipemdc · 2008-12-04 15:44 Also, it's important to remember that Lazarus is free software, so you can weight the value added to your software by adding the capabilities that you need (supposing something will need to be changed in Lazarus after you try all possibilities) and the cost of implementing those things in Lazarus. We would hapilly apply a patch with improvements. It may also be interresting to take a look at the bounties page: http://wiki.lazarus.freepascal.org/Bounties ---------------------------------------------------------------------- TimYoung · 2008-12-08 22:20 PaulIsh, Thanks, I will definitely give that a try. sekel, Yes, we need to definitely set aside some time to contribute some code, especially since we are making money off of the Free Pascal project and the efforts of others.  This sounds like an ideal thing to contribute, so I'll take a look at the IDE source code and see what I can find out.