diff options
-rw-r--r-- | README | 76 | ||||
-rw-r--r-- | README.building-boost | 47 |
2 files changed, 68 insertions, 55 deletions
@@ -1,5 +1,5 @@ # -# Copyright 2001,2002,2003,2004,2005,2006,2007,2009 Free Software Foundation, Inc. +# Copyright 2001-2007,2009,2012 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -53,14 +53,13 @@ How to Build GNU Radio: for additional software. On Linux, this means what "distribution" means. - With the exception of SDCC, the following GNU/Linux - distributions are known to come with all required dependencies - pre-packaged: Ubuntu 8.10, SuSE 10.0 (the pay version, not the - free download), Fedora Core 9. Other distribution may work too. - We know these three are easy. The required packages may be - contained on your installation CD/DVD, or may be loaded over the - net. The specifics vary depending on your GNU/Linux - distribution. + The following GNU/Linux distributions are known to come with all + required dependencies pre-packaged: Ubuntu >8.10, SuSE 10.0 (the + pay version, not the free download), Fedora Core >9. Other + distribution may work too. We know these three are easy. The + required packages may be contained on your installation CD/DVD, + or may be loaded over the net. The specifics vary depending on + your GNU/Linux distribution. On systems using pkgsrc (e.g. NetBSD and Dragonfly), build meta-packages/gnuradio, which will build a previous release and @@ -78,12 +77,21 @@ How to Build GNU Radio: $ cmake [OPTIONS] $(srcdir) $ make $ make test - $ sudo make instal - + $ sudo make install That's it! +Options: +Useful options include setting the install prefix and the build type: + + -DCMAKE_INSTALL_PREFIX=<directory to install to> + -DCMAKE_BUILD_TYPE="<type>" + +Currently, GNU Radio has a "Debug" type that builds with '-g -O2' +useful for debugging the software and a "Release" type that builds +with '-O3', which is the default. + ------------------------------------------------------------------------------- @@ -128,20 +136,7 @@ Note that the examples below are written with "make". They probably should say "gmake", as GNU make is installed as gmake when it is not the native make. -(1) The "autotools" - - autoconf 2.57 or later - automake 1.7.4 or later - libtool 1.5 or later - -If your system has automake-1.4, there's a good chance it also has -automake-1.7 or later. Check your install disk and/or (on GNU/Linux) -try: - - $ man update-alternatives - -for info on how some distributions support multiple versions. - +(1) cmake 2.6 or later http://www.cmake.org/cmake/resources/software.html (2) pkgconfig 0.15.0 or later http://www.freedesktop.org/Software/pkgconfig @@ -198,44 +193,49 @@ Unit testing framework for C++. As of repository version 4045, gnuradio requires version 1.3.31 or newer. -(9) SDCC: Small Device C Compiler. http://sdcc.sourceforge.net/ - ---> Not required as of v3.5 - - -(10) Guile 1.6 or 1.8 +(9) Guile 1.6 or 1.8 Scheme interpreter. http://www.gnu.org/software/guile/guile.html -(11) GNU Scientific Library (gsl) 1.10 or later +(10) GNU Scientific Library (gsl) 1.10 or later The GNU Radio core library uses some routines from here. Optional, but nice to have: -(12) wxPython. Python binding for the wxWidgets GUI framework. Use +(11) wxPython. Python binding for the wxWidgets GUI framework. Use version 2.8 or later. Again, almost all systems have this available. As a last resort, build it from source (not recommended!) http://www.wxpython.org -(13) xmlto version ? or later. http://cyberelk.net/tim/xmlto/index.html +(12) xmlto version ? or later. http://cyberelk.net/tim/xmlto/index.html Wrapper for XML conversion tools to ease e.g. making html from docbook. -(14) Python Cheetah extensions 2.0.0 or later -(15) Python lxml wrappers 2.0.0 or later -(16) Python gtk wrappers 2.10.0 or later +(13) Python Cheetah extensions 2.0.0 or later +(14) Python lxml wrappers 2.0.0 or later +(15) Python gtk wrappers 2.10.0 or later The GNU Radio Companion application requires these additional Python libraries to be installed. +The gr-qtgui requires these packages: + +(16) Qt 4.4 or later +(17) Qwt 5.2 or later +(18) PyQt 4.4 or later +(19) PyQwt 5.2 or later + +It is also useful to have Python's Scipy and Matplot lib packages to +run some of the example. + ---------------------------------------------------------------- -If you've got doxygen installed, the build process creates +If you have doxygen installed, the build process creates documentation for the class hierarchy etc. Point your browser at gnuradio/gnuradio-core/doc/html/index.html diff --git a/README.building-boost b/README.building-boost index 511adb58b..a281e8bd7 100644 --- a/README.building-boost +++ b/README.building-boost @@ -1,35 +1,48 @@ -Until boost 1.35 (or later) ships with the distributions, you'll need -to download and build it yourself. It's not hard, and it can -peacefully coexist with earlier versions of boost. +Most distributions have the required version of Boost (1.35) ready for +installation using their standard package installation tools (apt-get, +yum, etc.). + +If running a distribution that requires boost 1.35 (or later) be built +from scratch, these instructions explain how to do so, and in a way +that allows it to peacefully coexist with earlier versions of boost. Download the latest version of boost from boost.sourceforge.net. -(boost_1_36_0.tar.bz2 was the latest when this was written) +(boost_1_49_0.tar.bz2 was the latest when this was written). Different +Boost versions often have different installations. If these +instructions don't work, check the website www.boost.org for more +help. unpack it somewhere cd into the resulting directory -$ cd boost_1_36_0 +$ cd boost_1_49_0 -# Pick a prefix to install it into. I used /opt/boost_1_36_0 +# Pick a prefix to install it into. I used /opt/boost_1_49_0 -$ BOOST_PREFIX=/opt/boost_1_36_0 +$ BOOST_PREFIX=/opt/boost_1_49_0 -$ ./configure --prefix=$BOOST_PREFIX --with-libraries=thread,date_time,program_options -$ make -$ make install +$ ./bootstrap.sh +$ sudo ./b2 --prefix=$BOOST_PREFIX --with-thread --with-date_time --with-program_options --with-filesystem --with-system --layout=versioned threading=multi variant=release install # Done! That was easy! ----------------------------------------------------------------- +Note that you don't have to specify each library, which will then +build all Boost libraries and projects. By specifying only those +required will just save compilation time. + -Now, tell gnuradio where to find it: +---------------------------------------------------------------------- -$ export LD_LIBRARY_PATH=$BOOST_PREFIX/lib -$ cd <path-to-top-of-gnuradio-tree> -$ ./bootstrap -$ ./configure --with-boost=$BOOST_PREFIX # plus whatever config args you usually use +Installing GNU Radio with new Boost libraries. -$ make && make check +Tell cmake to look for the Boost libraries and header files in the new location with the folloing command: + +$ cd <build directory> +$ cmake -DBOOST_ROOT=$BOOST_PREFIX -DBoost_INCLUDE_DIR=$BOOST_PREFIX/include/boost-1_49/ -DBoost_LIBRARY_DIRS=$BOOST_PREFIX/lib <path to gnuradio source tree> +$ make +$ make test $ sudo make install +See README for more installation details. + |