Operating Systems

Cross Platform Development

Static Linking

Info

A note about static linking: The pre-compiled static libraries for Linux, Unix and Mac OS X dependend always on a specific version of GCC or LLVM. This is due to certain versions of standard libraries, such as the libc, on which the library depends.

GCC or LLVM cannot link a library statically, if a depending library is available in a different version as the one that was used during compilation.

In this case you can only use the dynamic library, this one works always. In the download area you find an info about the GCC version that was used to compile the library.

BTW - The safest way to avoid linker errors is to compile the library on your own system . That is the reason why a DynaPDF Enterprise license was required earlier for non-Windows operating systems.

Software companies who need to port their software to another operating system are facing a huge challenge. What works on both platforms? Which parts of the software must be re-developed?

Ultimately, the goal is always to use as much existing code as possible. The larger the common code base, the lower the cost of software maintenance.

DynaPDF runs on almost all platforms and the API is always identically. The development of PDF output for multiple platforms is a breeze with DynaPDF. One problem less that you have to deal with!

Android

Android is currently not officially supported. Since Android now also supports C++ exceptions natively and thus no more patched NDKs are required, Android will soon be added to the officially supported operating systems...

HP-UX 10 or higher

A pre-compiled library is available for 64 bit Itanium only. HP-UX is not often used anymore. Therefore, this version will no longer be delivered when DynaPDF 5.0 will be released.

IBM AIX 4 or higher

DynaPDF can be compiled on AIX with Visual Age or alternatively with GCC. A precompiled version is no longer available due to the weak demand.

iOS

No pre-compiled library is delivered for iOS but DynaPDF Enterprise contains a finish XCode project to compile the library. Since iOS supports static libraries only, a DynaPDF Enterprise license is required for this operating system.

Linux

DynaPDF for Linux is available as 32 bit and 64 bit library. Both versions are delivered as static and shared library. Since Linux has no default font directory, system fonts must be loaded with AddFontSearchPath().

MacOS 10.9 or higher

DynaPDF is ship as 64-bit version only for MacOS, since 32-bit libraries are no longer officially supported since XCode 10. DynaPDF can also be compiled as 32-bit version if the system has an older XCode version than 10 installed.

DynaPDF can be used on MacOS almost like on Windows. System fonts are loaded automatically, therefore a very comfortable working is possible.

Solaris 8 or higher

The Solaris version is delivered as 64 bit static and shared library for SPARC. The libraries are compiled with Solaris Studio. Since Solaris has no default font directory, system fonts must be loaded with AddFontSearchPath().

Windows

DynaPDF is developed on Windows. Therefore, with the exception of the mobile variants, of course all versions of Windows since 2000 are supported. DynaPDF is delivered for Windows as a 32-bit and 64-bit DLL. DynaPDF Enterprise includes project areas for Visual Studio 6, 2005, 2010, and 2017 that can be used to compile the library as a DLL or as a static import library. Visual Studio 6 workspaces are no longer delivered when DynaPDF 5.0 is available.