Author: AlbrechtS Date: 2011-12-10 07:30:07 -0800 (Sat, 10 Dec 2011) New Revision: 9207 Log: Updated README.Cairo.txt with FLTK 1.3 changes.
Modified: branches/branch-3.0/README.Cairo.txt Modified: branches/branch-3.0/README.Cairo.txt =================================================================== --- branches/branch-3.0/README.Cairo.txt 2011-12-10 15:28:13 UTC (rev 9206) +++ branches/branch-3.0/README.Cairo.txt 2011-12-10 15:30:07 UTC (rev 9207) @@ -1,4 +1,4 @@ -README.Cairo.txt - 2010-10-25 - Cairo rendering support for FLTK +README.Cairo.txt - 2011-12-10 - Cairo rendering support for FLTK ---------------------------------------------------------------- @@ -11,40 +11,44 @@ 2.1 Configuration 2.2 Currently supported features 2.3 Future considerations - 3 DOCUMENT HISTORY + 3 PLATFORM SPECIFIC NOTES + 3.1 Linux + 3.2 Windows + 3.3 Mac OSX + 4 DOCUMENT HISTORY - iINTRODUCTION -=============== + INTRODUCTION +============== Cairo is a software library used to provide a vector graphics-based, device-independent API for software developers. It is designed to provide primitives for 2-dimensional drawing across a number of different -wbackends. Cairo is designed to use hardware acceleration when available. +backends. Cairo is designed to use hardware acceleration when available. CAIRO SUPPORT FOR FLTK 1.3 -============================= +============================ It is now possible to integrate cairo rendering in your fltk application more easily and transparently. In 1.3, we provide minimum support for Cairo, -In particular, no "total" cairo rendering layer support is achieved, +in particular, no "total" cairo rendering layer support is achieved, as in fltk2. Configuration --------------- -All the changes are *inactive* as long as the new configuration +All the changes are *inactive* as long as the new configuration option --enable-cairo is not added to the configure command. -For non configure based platforms/ide, the FLTK_HAVE_CAIRO preprocess var. -has to be defined. -All configure based build files has now this feature integrated, +For non configure based platforms/ide, the FLTK_HAVE_CAIRO preprocess +variable has to be defined. +All configure based build files have now this feature integrated, also vc2005 build files have 2 new build modes "Release Cairo" and "Debug Cairo". -Others IDE's will be updated progressively. +Other IDE's will be updated progressively. Currently supported features @@ -64,12 +68,12 @@ This feature should be only necessary in the following cases: - Intensive and almost systematic use of cairo contexts in an fltk application - Creation of a new cairo based scheme for fltk ... - - Other uses of cairo necessiting the flk internals instrumentation + - Other uses of cairo necessitating the fltk internal instrumentation to automatically making possible the use of a cairo context in any fltk window. - A new cairo demo that is available in the test subdirectory and has been - used as a testcase durings the multiplatform tests. + used as a testcase during the multiplatform tests. For more details, please have a look to the doxygen documentation, in the Modules section. @@ -91,7 +95,7 @@ *** POST 1.3 potential cairo use: // Set cr to something you made yourself. This lets you reuse functions -// that use cr, and also tells fltk that cr is not one of it's own and +// that use cr, and also tells fltk that cr is not one of its own and // thus cannot be destroyed or reused for a different window: void Fl::cairo_make_current(cairo_t*) @@ -100,12 +104,71 @@ called, it is exactly as though cairo_make_current(window) has been done. *** -Note that it should be possible to compile so FLTK_HAVE_CAIRO works even if -FLTK_USE_CAIRO does not, and so that turning on FLTK_USE_CAIRO does not break any -programs written for FLTK_HAVE_CAIRO. +Note that it should be possible to compile so FLTK_HAVE_CAIRO works even +if FLTK_USE_CAIRO does not, and so that turning on FLTK_USE_CAIRO does not +break any programs written for FLTK_HAVE_CAIRO. + PLATFORM SPECIFIC NOTES +========================= + +The folowing are notes about building FLTK with Cairo support +on the various supported operating systems. + + 3.1 Linux + --------- + + From Greg (e...@seriss.com): + To get FLTK 1.3.x (r9204) to build on Centos 5.5, I found that + I only needed to install the "cairo-devel" package, ie: + + sudo yum install cairo-devel + + ..and then rebuild fltk: + + make distclean + ./configure --enable-cairo + make + + If you get this error: + + [..] + Linking cairo_test... + /usr/bin/ld: cannot find -lpixman-1 + collect2: ld returned 1 exit status + make[1]: *** [cairo_test] Error 1 + + ..remove "-lpixman-1" from fltk's makeinclude file, i.e. change this line: + + -CAIROLIBS = -lcairo -lpixman-1 + +CAIROLIBS = -lcairo + + ..then another 'make' should finish the build without errors. + You should be able to then run the test/cairo_test program. + + According to the cairo site, "For Debian and Debian derivatives including + Ubuntu" you need to install libcairo2.dev, ie: + + sudo apt-get install libcairo2-dev + + Tested and working with Ubuntu 11.10. Note that this also installs + libpixman-1-dev, so that dependencies on this should be resolved as well. + + + 3.2 Windows + ----------- + TBD + + + 3.3 Mac OSX + ----------- + TBD + + + DOCUMENT HISTORY ================== Dec 20 2010 - matt: restructured document +Dec 09 2011 - greg: Updates for Centos 5.5 builds +Dec 10 2011 - Albrecht: Updates for Ubuntu and Debian, fixed typos. _______________________________________________ fltk-commit mailing list fltk-commit@easysw.com http://lists.easysw.com/mailman/listinfo/fltk-commit