Deploying an Application Based on PDAC
With a few variations regarding the Embarcadero and other runtime libraries, there are two basic ways to build PDAC applications for deployment to end users: using runtime packages or statically linking the PDAC libraries into the application's executable file. C++ Builder also offers the option of dynamically or statically linking the Embarcadero runtime library.
*Note: The SDK-supplied file DRM.DLL (from the Pervasive PSQL installation BIN directory after an SDK installation) must be installed into the path in all deployment configurations, and either a Pervasive PSQL Client or a Pervasive PSQLengine (Server or Workgroup) must be properly installed on the target computer for a PDAC application to run.
Deciding Whether to Use Runtime Packages
Using runtime packages has several advantages. It provides the smallest executable possible; this can be important where the executable or updates must be downloaded or transferred over slow links. This option allows sharing of the PDAC and Embarcadero runtime binaries; this can save considerable disk space and memory in environments with many Embarcadero and PDAC applications.
A disadvantage is that more files must be distributed and kept current, and the shared files can be vulnerable to third party installations that install incorrect versions of them in shared subdirectories. If runtime packages are not used, only the application and DRM.DLL must be deployed; the PDAC libraries are statically linked into the executable, which will be correspondingly larger.
To use runtime packages, the developer must deploy both the application's executable and the appropriate PDAC libraries (from the redist subdirectories in the PDAC installation directories), as well as any Embarcadero or other runtime libraries (borlndmm.dll, found in the compiler's bin directory, is often needed) to end users.
Redist Subdirectory
There is a redist directory for each Embarcadero compiler. This directory contains the .BPL libraries that must be distributed with an application compiled with Build with runtime packages.
*Note: Each redist directory also includes .DCP or .BCP files that are not redistributable except within the licensee's organization to allow development with derived classes. Only the .DPL and .BPL packages may be distributed with applications.
IDS Deployment
PDAC applications cannot be used with the I*net Data Server. I*net Data Server (IDS) is no longer a separately installable component of Pervasive PSQL. Most of the features that were part of IDS are now integrated into the main product.
Building and Deployment Instructions for Delphi or C++ Builder
The following instructions are for building and deploying with the following versions:
In the Delphi IDE, set the appropriate options as follows:
1
2
Click the Packages tab.
To have the application dynamically link with the PDAC libraries at runtime, select Build with runtime packages, and add the appropriate PDAC packages to the edit box list, as follows:
*Note: If the PDAC packages were added to the Build list at installation, this step is not necessary.
The following table lists the runtime packages (.bpl files) required for the MicroKernel Engine depending on your version of Delphi.
 
1 The Btrieve components include TPvSession, TPvDatabase, TPvTable, TPvBatchMove, and TwwPvTable. See Btrieve (transactional) Interface Components.
2 Requires the latest update for Pervasive PSQL v11 SP3.
The following table lists the runtime packages (.BPL FILES) required for the Relational Engine depending on your version of Delphi.
 
1 The Relational components include TPvSQLSession, TPvSQLDatabase, TPvQuery, TPvUpdateSQL, TPvSQLStoredProc, TwwPvQuery, and TwwPvSQLStoredProc. See Relational Interface Components.
2 Requires the latest update to Pervasive PSQL v11 SP3.
To select packages, click Components > Install, and select the packages from the directory that matches your version of Delphi. All the packages may be selected at once.
 
*Note: If the PDAC packages are not added to the list, they will be compiled into the executable and the shared libraries will not be used, even if the box is checked.
To statically link the PDAC libraries into the application's executable, clear Build with runtime packages.
If Build with runtime packages is checked at compile time, the following libraries must be installed when the application is deployed, in addition to the application itself, drm.dll, and any other packages or DLLs it requires.
Delphi 2006/Delphi 2007 Package Build List
From \SDK\PDAC\Delphi2006\REDIST, if their respective .DCP files are in the package build list:
pc200d2006.bpl
pb200d2006.bpl
ps200d2006.bpl
RAD Studio 2009 Package Build List
pc200r2009.bpl
pb200r2009.bpl
ps200r2009.bpl
RAD Studio 2010 Package Build List
pc200r2010.bpl
pb200r2010.bpl
ps200r2010.bpl
RAD Studio XE Package Build List
pc200rXE.bpl
pb200rXE.bpl
ps200rXE.bpl
RAD Studio XE2 (32-bit) Package Build List
pc200rXE2.bpl
pb200rXE2.bpl
ps200rXE2.bpl
RAD Studio XE3 (32-bit) Package Build List
pc200rXE3.bpl
pb200rXE3.bpl
ps200rXE3.bpl
RAD Studio XE3 (64-bit) Package Build List
w64pc200rXE3.bpl
w64pb200rXE3.bpl
w64ps200rXE3.bpl
RAD Studio XE4 (32-bit) Package Build List
pc200rXE4.bpl
pb200rXE4.bpl
ps200rXE4.bpl
RAD Studio XE4 (64-bit) Package Build List
w64pc200rXE4.bpl
w64pb200rXE4.bpl
w64ps200rXE4.bpl
RAD Studio XE5 (32-bit) Package Build List
pc200rXE5.bpl
pb200rXE5.bpl
ps200rXE5.bpl
RAD Studio XE5 (64-bit) Package Build List
w64pc200rXE5.bpl
w64pb200rXE5.bpl
w64ps200rXE5.bpl
RAD Studio XE6 (32-bit) Package Build List
pc200rXE6.bpl
pb200rXE6.bpl
ps200rXE6.bpl
RAD Studio XE6 (64-bit) Package Build List
w64pc200rXE6.bpl
w64pb200rXE6.bpl
w64ps200rXE6.bpl
These files may be installed in the same subdirectory as the application executable, but we recommend placing them in the target machine path so they may be shared by other applications. The Pervasive PSQL installation \bin directory is a good choice on computers where it is the primary Pervasive executable directory.
In addition, the Delphi - PDAC application will require an installation of either a Pervasive PSQL engine (Server or Workgroup) or a Pervasive PSQL client and a remote server appropriately installed and configured.
Updated Package Names Starting with Delphi 6
Starting with Delphi 6, we have changed the package naming conventions to be more compatible with Embarcadero standards. Also, the runtime packages have been separated from the design time packages in order to comply with Embarcadero requirements.
The following shows how to interpret the runtime package names if you are coming from a previous version of Delphi and PDAC:
pc200r60.bpl
pb200r60.bpl
ps200r60.bpl
*Note: Starting with Delphi 6, InfoPower functionality has been merged into the main packages. There are no longer separate packages for InfoPower Woll2Woll components.