# # $Id$ # # Installation notes. # # Author: Wolfgang Glas # UNIX environments ----------------- Go to the directory build/unix-shared and type make; make install If you encounter problems, supposedly you don't have the freetype library installed or you're using a libc, which does not include the iconv library such as glibc. Under linux, you should check, whether you have the freetype2, freetype2-devel, glibc-devel packages installed. Otherwise, consider compiling freetype and/or iconv on your own and adding the appropriate include and library paths to build/unix-shared/Makefile links: http://www.freetype.org/ http://www.gnu.org/software/libiconv/ If you'd like to compile hpgs using special compiler flags, such as compiler oiptimizations, consider building with make COPT='-O3 -march=pentium4 -msse2 -mfpmath=sse' (These are the options, which give the best performance on my Pentium 4) Truetype fonts for the support of HPGL labels: In order to enable rendering of HPGL labels hpgs needs a set of Truetype fonts, which are published by Artifex as urwfonts-1.40.tar.gz available at http://www.artifex.com/downloads/ Unpack the archives so, that the ttf files are placed in /usr/local/share/hpgs Cairo backend (experimental) --------------------------- Starting with hpgs-0.7.2, a backend using the cairo library from http://www.cairographics.org is provided. As of 04/2005 (cairo 0.4.0) the cairo display model does not allow to represent PCL raster operations (ROP3) to be represented precisely. However, the antialiasing capabilities of cairo are impressive and you might get an impression, of what will be possible, if we conclude the ongoing discussion with the cairo developers about extending their display model. To build the backend, you have to build hpgs using a shared library and afterwards you have to build the cairo plugin for hpgs (assuming you have cairo and it's header files installed): cd build/unix-shared make make -C hpgscairo make install make -C hpgscairo install Afterwards, try the device cairo_png using the cmd line option -d of hpgs. Windows Environments -------------------- Currently, only the mingw/MSYS development environment from http://www.mingw.org is supported, although others might be easily added due to the fact, that hpgs is purely written in C and only uses highly portable libraries. All the required libraries zlib,iconv,linpng and freetype are available as mingwPORTs from http://www.mingw.org and the Makefiles in build/mingw and build/mingw-shared are adapted to the file system layout of these mingwPORTs beginning with hpgs-0.9.0. In former versions of hpgs, the MinGW Makefiles assumed the libraries to be installed in /usr/local. After that go to the directory build/mingw (static build) or build/mingw-shared (DLL build) and type make; make install Truetype fonts for the support of HPGL labels: In order to enable rendering of HPGL labels hpgs needs a set of Truetype fonts, which are published by Artifex as urwfonts-1.40.zip available at http://www.artifex.com/downloads/ Unpack the archives so, that the ttf files are placed in PREFIX\share\hpgs, where PREFIX is the value of the registry key HKEY_CURRENT_USER\SOFTWARE\EV-i\hpgs\prefix or HKEY_LOCAL_MACHINE\SOFTWARE\EV-i\hpgs\prefix respectively. If neither registry key is found the default path %PROGRAMFILES%\EV-i\share\hpgs is used instead. Installing from SVN ------------------- If you got a fresh copy from SVN, please issue the command make dep=no pre in order to generate the file src/hpgsrop.c If you ever intend to modify the ROP3 tables in hpgsop.dat or the ROP3 generator hpgsrop.c, this instruction applies to you, too. I18N ---- hpgs may be compiled with internationalization support by using the -DHPGS_HAVE_GETTEXT comile time switch. This setting is used by the unix-shared build configuration by default. I highly appreciate additional translations for hpgs, currently there is only my own german translation available. If you start a new translation, add your language to the POLANGS varaible in src/include.mak and type 'make update-po' in the po subdirectory. Then you'd prbpably like to start the translation task on the generated hpgs_.po file using your favourite po-file editor like kbabel. If you like to have i18n support for Windows, you have to fetch the experimental mingwPORT of libgettext from https://sourceforge.net/tracker/?func=detail&atid=752210&aid=1421286&group_id=2435 and add -DHPGS_HAVE_GETTEXT to the mingw compiler options and -lintl to the mingw link libraries in mingw/Makefile or mingw-shared/Makefile. Custom configurations --------------------- At the time of writing, no fancy Makefile generation utility like autoconf is used, because compiling hpgs is terribly simple by now. Mainly you have to adapt the freetype and iconv include and library paths and to choose your compiler. If need to compile hpgs with a special configuration, consider to make your own build subdirectory and create your own Makefile based on the one in unix/Makefile.