Documentation
Once you have completed a program in SIMPOL and wish to distribute the results, you need to make sure that you
include all the pieces necessary together with your compiled program. Since SIMPOL 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. SIMPOL Runtime Loaders
| Application Type | Loader for Win32 | Loader for Linux x86 |
|---|---|---|
| CGI – Web Server Applications | smpcgi32.exe | smpcgi |
| Fast-CGI – Web Server Applications | smfcgi32.exe | smfcgi |
| ISAPI – IIS Web Server Applications | smisap32.dll | N/A |
| Console Programs | smprun32.exe | smprun |
| GUI Programs | smpwin32.exe | smprun |
| Loader to call SIMPOL Functions as DLL Calls | smexec32.dll | N/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. SIMPOL Runtime Components
| Component | Required File(s) Win32 | Required File(s) Linux x86 |
|---|---|---|
| Web Server Applications | smcgi32.dll | libsmpolcgi.so |
| LXML – XML Document Object Model | smlxml32.dll, iconv.dll, libxml2.dll,
libxslt.dll, zlib1.dll | libsmpollxml.so, Uses the libxml2 support from the distribution |
| ODBC – SIMPOL ODBC Client | smodbc32.dll | |
| PPCS – SIMPOL Multi-User Database Client | smppcs32.dll | libsmpolppcs.so |
| PPSR – SIMPOL Multi-User Database Server | smppsr32.dll | libsmpolppsr.so |
| SBME – SIMPOL Single-User Database Client | smsbme32.dll | libsmpolsbme.so |
| SLIB – SIMPOL Shared Library Access (*.DLL, *.so) | smslib32.dll | libsmpolslib.so |
| SOCK – SIMPOL TCP/IP Socket Support | smsock32.dll | libsmpolsock.so |
| UTOS – SIMPOL File System Support | smutos32.dll | libsmpolutos.so |
| WXWN – SIMPOL GUI Components | smwxwn32.dll, wxbase28u_vc_simpol.dll,
wxmsw28u_adv_vc_simpol.dll, wxmsw28u_core_vc_simpol.dll | libsmpolwxwn.so, plus the wxWidgets runtime package for 2.8.x for the distribution |


![[Note]](images/note.png)

