#### Get cmake, git, git-svn #### # Linux sudo apt-get install cmake git git-svn # OSX cmake: http://cmake.org/cmake/resources/software.html git: http://git-scm.com/download #### Get required libraries #### # On Linux (Ubuntu 13.04) sudo apt-get install libboost-dev libboost-system-dev libboost-thread-dev libboost-filesystem-dev libboost-chrono-dev libfreetype6-dev libexpat1-dev libgtk2.0-dev # On OSX (Snow Leopard) sudo port install boost freetype expat # On Windows TODO: How to get "externals folder" + how to install WIX #### Create development folder #### mkdir ~/git cd ~/git #### Get GraphControl Sources #### git clone https://github.com/hpcc-systems/GraphControl.git cd GraphControl git checkout candidate-3.10.x cd .. #### Get Firebreath library #### git clone https://github.com/GordonSmith/FireBreath.git cd FireBreath git checkout closedown-5.0.x cd .. #### Get unrestricted (2.4) agg libraries #### git clone https://github.com/GordonSmith/agg.git cd agg git checkout graphcontrol-3.10.x cd .. #### Get AT&T Graphviz libraries #### wget http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.26.3.tar.gz tar xf graphviz-2.26.3.tar.gz rm graphviz-2.26.3.tar.gz cd graphviz-2.26.3 ./configure cd .. #### Create general build folder #### mkdir build cd build #### Create build folder for GraphControl #### mkdir GraphControl cd GraphControl #### Generate GraphControl make files #### # On OSX and Linux cmake -DCMAKE_BUILD_TYPE=Release -DWITH_SYSTEM_BOOST=1 -DFB_PROJECTS_DIR:PATH=../GraphControl -DGRAPHVIZSRC_DIR=../../graphviz-2.26.3 -DAGGSRC_DIR=../../agg ../../FireBreath # On Windows cmake -DCMAKE_BUILD_TYPE=Release -DWITH_SYSTEM_BOOST=1 -DFB_PROJECTS_DIR:PATH=../GraphControl -DGRAPHVIZSRC_DIR=../../graphviz-2.26.3 -DAGGSRC_DIR=../../agg -DEXTERNALS_DIRECTORY:PATH=c:/full/path/to/externals ../../FireBreath #### Compile the sources #### cmake --build . --config Release #### To install the plugin #### cmake --build . --config Release --target install #### Create an install package #### # On OSX and Linux cmake --build . --config Release --target package # On Windows cmake --build . --config Release --target HPCCSystemsGraphViewControl\HPCCSystemsGraphViewControl_WiXInstall cd .. #### For debugging, create a symbolic link to the built plugin #### # Linux ln -s ~/git/build/GraphControl/bin/HPCCSystemsGraphViewControl/npHPCCSystemsGraphViewControl.so ~/.mozilla/plugins/npHPCCSystemsGraphViewControl.so # OSX ln -s ~/git/build/GraphControl/projects/HPCCSystemsGraphViewControl/HPCCSystemsGraphViewControl.plugin ~/Library/Internet\ Plug-Ins/HPCCSystemsGraphViewControl.plugin