Solved

Project

Posted on 2003-11-19
10
399 Views
Last Modified: 2010-04-05
I have a very big project that usess many 3rd party components.
Compile/Build of the project takes a lot of time.  

I want to devide the project to several sub-projects.

I taked some component and add it to delphi package. I Compile the package and get a bpl file. Now I want to remove the component source from a computer and only use a bpl file.

If component source contains only pas files it works, but if there some resource files (dfm, drc, res) then main project cannot be compiled (linked) without the files.

Does I did something wrong?
Is there a way to put ALL component files to bpl?
0
Comment
Question by:Slavak
  • 2
  • 2
  • 2
  • +1
10 Comments
 
LVL 9

Accepted Solution

by:
mocarts earned 168 total points
Comment Utility
hi, Slavak :)
did you copied also DCP file for component package? this file is required to link exe with required packages (i.e. with runtime packages noted in Porject | Options... Packages page).

wbr, mo.
0
 
LVL 8

Assisted Solution

by:gmayo
gmayo earned 166 total points
Comment Utility
You could put some of your modules into DLLs. That way, they can be used by C++ and other apps too.

Geoff M.
0
 
LVL 2

Assisted Solution

by:alijunior
alijunior earned 166 total points
Comment Utility
You need implicity add all resources used to dpk. Then recompile it. The compiled files necessaries are: .bpl, .dcu, .dcp (when exists) and .res files. You can set in your dpk options, at "Directories/Conditionals" the two first combos ("Output Dir" and "Unit Output Dir.") with some path (both equals) and when you recompile it Delphi will put all necessary files in that directory automatically. In the tab "Description", set the "Explicit Rebuild" item at "Build Control" radiogroup.

I wait could solve your trouble.

[]'s

PS: Sorry about my poor english...
0
 
LVL 3

Author Comment

by:Slavak
Comment Utility
to mocarts.

i have dcp files. In package project I can add them to required part.
But how I can use them for exe project.

to gmayo.

i cannot divide executable. I only want to devide source.

to alijunior

I actually use Output dir and Unit Output and place the directory in search path for main project, but required files also a *.dfm files that (from my point) should be in same directory as corresponding *.pas file.

0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 8

Expert Comment

by:gmayo
Comment Utility
Remove all the unwanted .pas files to a safe location. Delphi will then use the .dcu files, ie the already-compiled files.

Geoff M.
0
 
LVL 9

Expert Comment

by:mocarts
Comment Utility
Slavak, dcp files (generated for packages) are necesary for linking with exe.
but to use them you need first to add these packages to your exe runtime package list (Project | Options.. Packages page. check Build with runtime packages and write package names you need)
ok, a little bit from the begining.. :)
packages (generally package is dinamically loadable dll, but with lot of pluses versus dll) are of two types - designtime and runtime. designtime packages are used only at designtime usually for components and you can install such package in Delphi IDE. runtime packages are used to share (or devide) your code into separate module at runtime. general purpose for runtime packages are for code sharing among different applications - for example, you have two small exes and one large runtime package with Delphi vcl compiled. similary you can use runtime package for code devision into logical modules.
so.. compile your components (or other source) package as runtime (optionally there can be runtime and designtime), save dcp (for linking) and bpl (for execution) files and compile your exe with this runtime package in your runtime packages list (located in Project | Options.. dialog)
ok, there is also some information about packages in Delphi help - read it too

wbr, mo.
0
 
LVL 3

Author Comment

by:Slavak
Comment Utility
to gmayo

Problem is not with *.pas files. Linker looking for *.dfm files that should be added as resource to compiled executable.

to mocarts

The problem with this solution is that I cannot divide the excutable: I should provide to customer only one executable file. With the solution I must provide *.bpl files also.

0
 
LVL 2

Expert Comment

by:alijunior
Comment Utility
Try add the dfm and pas files to the dpk!
0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
In my programming career I have only very rarely run into situations where operator overloading would be of any use in my work.  Normally those situations involved math with either overly large numbers (hundreds of thousands of digits or accuracy re…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now