SIMPOL Documentation

Deploying Superbase NG Programs

Once you have completed a program using Superbase NG and wish to distribute the results, you need to make sure that you include all the pieces necessary together with your compiled program. Since Superbase NG provides a component architecture, only the components required to run your application need to be redistributed with it. These files can be found in the simpol\redist directory. The essential components include the application loader, the core SIMPOL language library, and your program. In addition, if you used any components, then the associated library files must also be included. There are various loaders, depending on the type of program you are running. Below is a list of them:

Table 1.1. Superbase NG Runtime Loaders
Application TypeLoader for Win32Loader for Linux x86
CGI – Web Server Applicationssmpcgi32.exesmpcgi
Fast-CGI – Web Server Applicationssmfcgi32.exesmfcgi
ISAPI – IIS Web Server Applicationssmisap32.dllN/A
Console Programssmprun32.exesmprun
GUI Programssmpwin32.exesmprun
Loader to call SIMPOL Functions as DLL Callssmexec32.dllN/A

There are two different loaders for regular programs on Windows; this is because Windows differs between programs that have their own window, and programs that do not. On Linux, all programs share the same loader program (except for specialized programs such as web server applications). The list of required libraries, arranged by component, is shown below:

Table 1.2. Superbase NG Runtime Components
ComponentRequired File(s) Win32Required File(s) Linux x86
Web Server Applicationssmcgi32.dlllibsmpolcgi.so
LXML – XML Document Object Modelsmlxml32.dll, iconv.dll, libxml2.dll, libxslt.dll, zlib1.dlllibsmpollxml.so, Uses the libxml2 support from the distribution
ODBC – SIMPOL ODBC Clientsmodbc32.dll 
PPCS – SIMPOL Multi-User Database Clientsmppcs32.dlllibsmpolppcs.so
PPSR – SIMPOL Multi-User Database Serversmppsr32.dlllibsmpolppsr.so
SBME – SIMPOL Single-User Database Clientsmsbme32.dlllibsmpolsbme.so
SLIB – SIMPOL Shared Library Access (*.DLL, *.so)smslib32.dlllibsmpolslib.so
SOCK – SIMPOL TCP/IP Socket Supportsmsock32.dlllibsmpolsock.so
UTOS – SIMPOL File System Supportsmutos32.dlllibsmpolutos.so
WXWN – SIMPOL GUI Componentssmwxwn32.dll, wxbase28u_vc_simpol.dll, wxmsw28u_adv_vc_simpol.dll, wxmsw28u_core_vc_simpol.dlllibsmpolwxwn.so, plus the wxWidgets runtime package for 2.8.x for the distribution

[Note]Note

The only item listed above that cannot be distributed simply as a library file is the PPSR component. This is the code that implements the multi-user database server. To distribute the server, it is necessary to buy the appropriate database license and then use that registration number to install the Superbase NG database server engine on the customer's computer. Copying the PPSR component's DLL will result in the engine simply not working at all. It requires a correct installation with a valid registration number.