Betriebssysteme

Cross Plattform Entwicklung

Statisches Linken

Info

Es führt immer wieder zu Problemen, daher ein Hinweis zu statischem Linken: Die vorkompilierten statischen Importbibliotheken für Linux, Unix und Mac OS X sind immer von einer bestimmten GCC oder LLVM Version abhängig. Das liegt an bestimmten Versionen von Standard Bibliotheken wie der libc, von der das Archiv abhängig ist.

GCC und LLVM können eine statische Bibliothek leider nicht linken, wenn irgendeine von dem Archiv abhängige Systembibliothek in einer anderen Version vorliegt. In diesem Fall können Sie leider nur auf die Shared Library ausweichen, die funktioniert immer. Mit welcher GCC Version eine Bibliothek kompiliert wurde, erfahren Sie im Downloadbereich.

Das Problem tritt übrigens nie auf, wenn Sie die Bibliothek auf Ihrem System selbst kompilieren. Daher gab es früher auch keine Linux oder Unix Versionen ohne DynaPDF Enterprise Lizenz. Letztendlich ist das der einzige Weg, um Kompatibilitätsprobleme zu vermeiden.

Softwarefirmen die ihre Software auf ein anderes Betriebssystem portieren möchten, stehen vor einer enormen Herausforderung. Was funktioniert auf beiden Plattformen? Welche Teile der Software müssen neu entwickelt werden?

Letztendlich ist das Ziel immer so viel bestehenden Code wie möglich weiter zu verwenden. Je größer die gemeinsame Codebasis, desto geringer die Kosten für die Softwarewartung.

DynaPDF läuft auf fast allen Plattformen und die API ist auf allen Plattformen gleich. Eine PDF Ausgabe für mehrere Plattformen zu entwickeln ist mit DynaPDF ein Kinderspiel. Ein Problem weniger mit dem sie sich befassen müssen!

Android

Android wird leider nicht mehr unterstützt. Nach dem Umstieg von Eclipse auf Android Studio ist das Einbinden von nativen Bibliotheken zwar immer noch möglich, die Einbindung ist aber viel zu kompliziert, daher musste die Plattform leider wieder entfernt werden. Ob sich daran künftig etwas ändern wird hängt von Google ab.

DynaPDF lässt sich natürlich nachwievor für Android kompilieren. Nur der Weg bis zur fertigen Java Anwendung ist viel zu lang.

HP-UX 10 oder höher

Eine vorkompilierte Bibliothek ist derzeit nur für 64 Bit Itanium Systeme verfügbar. HP-UX wird kaum noch verwendet, daher wird auch diese Version spätestens mit Erscheinen von DynaPDF 5.0 nicht mehr ausgeliefert werden.

IBM AIX 4 oder höher

Für AIX ist eine vorkompilierte 64 Bit Version für PA-RISC erhältlich. Die Bibliothek wird mit Visual Age kompiliert und als Static und Shared Library ausgeliefert. Da es unter AIX kein Standardschriftenverzeichnis gibt, müssen Systemschriften manuell mit AddFontSearchPath() geladen werden.

iOS

Für iOS wird derzeit keine vorkompilierte Bibliothek ausgeliefert. DynaPDF Enterprise enthält jedoch ein fertiges XCode Projekt, mit dem die Bibliothek für iOS kompiliert werden kann. Unter iOS kann nur statisch gelinkt werden, daher ist eine DynaPDF Enterprise Lizenz erforderlich.

Linux

DynaPDF ist für Linux in einer 32 Bit und 64 Bit Version erhältlich. Die Bibliothek wird als Static und Shared Library ausgeliefert. Da es unter Linux kein Standardschriftenverzeichnis gibt, müssen Systemschriften manuell mit AddFontSearchPath() geladen werden.

Mac OS X ab Version 10.4

DynaPDF wird für Mac OS X als Universal Binary ausgeliefert. Die Bibliothek wird mit LLVM kompiliert und ist als Static und Shared Library verfügbar. Unterstützt werden 32 und 64 Bit Intel CPUs. DynaPDF kann unter Mac OS X fast wie unter Windows verwendet werden. Systemschriften werden automatisch geladen, daher ist ein sehr komfortables Arbeiten möglich.

Solaris 8 oder höher

Für Solaris ist eine vorkompilierte 64 Bit Version für SPARC erhältlich. Die Bibliothek wird mit Solaris Studio kompiliert und als Static und Shared Library ausgeliefert. Da es unter Solaris kein Standardschriftenverzeichnis gibt, müssen Systemschriften manuell mit AddFontSearchPath() geladen werden.

Windows

DynaPDF wird unter Windows entwickelt, daher werden mit Ausnahme der Mobile Varianten natürlich alle Windows Versionen ab 2000 unterstützt. DynaPDF wird für Windows als 32 Bit und 64 Bit DLL ausgeliefert. DynaPDF Enterprise enthält Projektbereiche für Visual Studio 6 und 2005, mit denen die Bibliothek statisch gelinkt oder kompiliert werden kann.