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?
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

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.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
You could put some of your modules into DLLs. That way, they can be used by C++ and other apps too.

Geoff M.
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.


PS: Sorry about my poor english...
Rowby Goren Makes an Impact on Screen and Online

Learn about longtime user Rowby Goren and his great contributions to the site. We explore his method for posing questions that are likely to yield a solution, and take a look at how his career transformed from a Hollywood writer to a website entrepreneur.

SlavakAuthor Commented:
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.

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

Geoff M.
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.
SlavakAuthor Commented:
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.

Try add the dfm and pas files to the dpk!
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.