Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
Expertise Level:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)

This page was last modified 06:05, 26 November 2007.

How to build cross-referencing DLLs

From Forum Nokia Wiki

Definition: cross-referencing DLLs are dynamic libraries that depend on each other in terms of using each other's services.

Problem: building such components might be problematic as their build cycle relies upon the fact that the "other" component has already been built beforehand. Note that the problem arises if the components are built separately. But in that case it generates a fatal build error.

Solution: write a common bld.inf file in which both components' MMP file are present. The new subsystem, i.e. the one containing at least our two components, is to be treated as a single package, which ensures that the code will compile and build properly.

Explanation: as it pointed out in abld syntax, abld build performs the following actions one after another

  • export
  • makefile
  • library
  • resource
  • target
  • final.

In our case, it means that instead of building each component separately one after the other, they are to be built together: first step is to export each component's header (and other required) files, third is to generate LIB files and only the fifth is to make the executable from the generated code. This build sequence ensures that the code compiles (i.e. all required exported header files are present) and can be linked against the imported libraries.

Caution: this article is NOT to encourage you to write cross-referencing DLLs as it's usually not an elegant solution. Nevertheless, it may happen in some rare cases (e.g. being constrained in a legacy framework) that you can't avoid using them in your implementation.

Related Discussions
Thread Thread Starter Forum Replies Last Post
Can't start OpenC examples on emulator el_Tuba Open C 8 2008-01-02 16:11
i can't SEE my application when run with BORLAND C++BUILDERX! help! pulboron Symbian Tools & SDKs 12 2005-01-20 00:53
getting IMSI of Nokia 6600 gs_cmans General Symbian C++ 20 2008-01-25 09:25
Cross Resolution Problem sidduexpert Browsing and Mark-ups 2 2003-09-19 06:09
How to programatically start an application on startup chavasekhar General Symbian C++ 3 2003-04-09 18:54
 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX