Installing Code::Blocks from source on RPM based distributions
Install Requirements
Install Developer Tools
This has to be installed before starting:
- zip
- update-desktop-files (only on SUSE)
- make
- gettext
- autoconf >= 2.5
- automake >= 1.7
- libtool >= 1.4
- m4
- intltool
- gcc-c++
- libstdc++-devel
In Fedora/CentOS, this can be done with:
su -c 'yum groupinstall "Developer Tools"'
Install newer autotools versions
TODO
If you have CentOS 3 or RHEL 3, you will need to rebuild "automake17" to use instead of automake-1.6:
You will also need to patch the "bootstrap" script from Code::Blocks, in order to use aclocal-1.7:
AUTOMAKE=automake-1.7 ACLOCAL=aclocal-1.7 ./bootstrap
And edit the BuildRequires in codeblocks.spec, from "automake >= 1.7" to "automake17" package.
Setup RPM environment
This has to be installed before starting:
- rpm-build
Non-root rpmbuild environment
cd echo "%_topdir $HOME/rpm" >> .rpmmacros mkdir rpm cd rpm mkdir SPECS SOURCES BUILD RPMS SRPMS
RPM_TOPDIR=`rpm --eval %{_topdir}`
Install wxWidgets 2.6.x
The build requirements in the source RPM are set to a minimum. So it isn't checked whether wxGTK is installed or not. So you have to take a look at it yourself.
This has to be installed:
- wxGTK >= 2.6.0 and its devel package (see wxwidgets.org)
- wxGTK-xrc and its devel package (in some distributions included in the packages of point 1)
Build the wxGTK RPM from source (if needed)
TODO
- wxGTK.spec
- http://prdownloads.sourceforge.net/wxwindows/wxGTK-2.6.3.tar.gz
- ftp://biolpc22.york.ac.uk/pub/2.6.3/wxWidgets-2.6.3-Patch-2.tar.gz
Install Subversion client
This has to be installed before starting:
- subversion >= 1.4.0, (see subversion.tigris.org)
Build Subversion RPM from source (if needed)
TODO
- subversion.spec
- http://subversion.tigris.org/downloads/subversion-1.4.0.tar.gz
Install Code::Blocks
Download the Source RPM
1. Download the Source RPM from www.codeblocks.org/downloads.shtml
Prepare SRPM package from SVN (if needed)
1. You need to get the latest sources from SVN www.codeblocks.org/source_code.shtml
2. go into trunk, if you haven't already done it.
3. run these three commands in this order
./bootstrap ./configure --enable-contrib make dist
the last one will create a .tar.gz archive that contains the sources.
4. copy the archive to the directory $RPM_TOPDIR/SOURCES
sudo mv codeblocks-trunk-r$REVISION.tar.gz $RPM_TOPDIR/SOURCES
5. build the source RPM
rpmbuild -bs codeblocks.spec
This will create a source package in the directory $RPM_TOPDIR/SRPMS/.
Build the RPM package
1. Build the binary package
rpmbuild --rebuild codeblocks-1.0-***.src.rpm
This will create several packages in one of the architecture specific subdirectories (i386, x86_64, ppc, ...) of $RPM_TOPDIR/RPMS/.
These are:
- codeblocks: main package
- codeblocks-contrib: contrib plugins
- codeblocks-devel: SDK headers
- codeblocks-debuginfo: stripped debug information
Install the RPM package
Install as root the packages you want (usually codeblocks and codeblocks-contrib) and enjoy Code::Blocks!