Installing Code::Blocks from source on RPM based distributions
General instructions
The build requirements in the specfile and the source RPM are set to a minimum because there are two different names of the wxGTK packages (wxGTK and wxGTK2). 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 and its devel package
- wxGTK-xrc and its devel package (in some distributions included in the packages of point 1)
Compiling the Release Candidate 2
1. Download the source RPM from www.codeblocks.org/downloads.shtml
2. Build the binary package as root
rpmbuild --rebuild codeblocks-1.0-rc2.src.rpm
3. The binary RPM should be in one of the subdirectories of /usr/src/packages/RPMS
Compiling the CVS version
1. You need a fresh CVS version, no ./bootstrap or anything else should be done before in this directory !
2. add the directory codeblocks to an tar.gz archive named codeblocks-1.0-cvs.tar.gz
tar -czf codeblocks-1.0-cvs.tar.gz codeblocks
3. copy the archive in the directory /usr/src/packages/SOURCES and the Specfile to /usr/src/packages/SPECS/codeblocks.spec
4. build the binary package as root with
rpmbuild -bb /usr/src/packages/SPECS/codeblocks.spec
5. the package will be in one of the subdirectories of /usr/src/packages/RPMS/
6. Install it and enjoy !
Use this as Specfile:
Name: codeblocks Version: 1.0 Release: cvs Summary: An open source, cross platform, free C++ IDE. Group: Development/Tools/IDE License: GPL URL: https://www.codeblocks.org/ Packager: Daniel Orb <danielorb2000@yahoo.de> Source: %{name}-%{version}-%{release}.tgz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot Provides: codeblocks BuildRequires: zip BuildRequires: dos2unix %define pkgdata %{_datadir}/%{name} %description Code::Blocks is a free C++ IDE built specifically to meet the most demanding needs of its users. It was designed, right from the start, to be extensible and configurable. Built around a plugin framework, Code::Blocks can be extended with plugin DLLs. It includes a plugin wizard so you can compile your own plugins! Features: Highlights: * Open Source! GPL2, no hidden costs. * Cross-platform. Runs on Linux or Windows (uses wxWidgets). * Made in GNU C++. No interpreted languages or proprietary libs needed. * Comes in two presentations: Standalone, and MinGW bundle * Devpack support (optional) * Extensible thru plugins (SDK available in the downloads section) Compiler-related features: * Multiple compiler support: o GCC (MingW / Linux GCC) o MSVC++ o Digital Mars o Borland C++ 5.5 o Open Watcom * Compiles directly or with makefiles * Predefined project templates * Custom template support * Uses XML format for project files. * Multi-target projects * Workspaces support * Imports MSVC projects and workspaces (NOTE: assembly code and inter-project dependencies not supported yet) * Imports Dev-C++ projects * Integrates with GDB for debugging Interface Features: * Syntax highlighting, customizable and extensible * Code folding for C++ and XML files. * Tabbed interface * Code completion plugin * Class Browser * Smart indent * One-key swap between .h and .c/.cpp files * Open files list for quick switching between files (optional) * External customizable "Tools" * To-do list management with different users %prep %setup -n codeblocks %build ./bootstrap ./configure \ --prefix=%{_prefix} \ --libdir=%{_libdir} \ --exec-prefix=%{_exec_prefix} \ --datadir=%{_datadir} \ --sysconfdir=%{_sysconfdir} \ --with-docdir=%{_docdir} \ CXXFLAGS="$RPM_OPT_FLAGS" \ CFLAGS="$RPM_OPT_FLAGS" make %install make DESTDIR=$RPM_BUILD_ROOT install %clean test -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" && rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc README COPYING AUTHORS BUGS COMPILERS TODO NEWS ChangeLog %{_bindir}/* %{_libdir}/* %{_datadir}/application-registry/codeblocks.applications %{_datadir}/applications/codeblocks.desktop %{_datadir}/icons/gnome/48x48/mimetypes/gnome-mime-application-x-codeblocks.png %{_datadir}/mime-info/* %{_datadir}/mime/packages/codeblocks.xml %{_datadir}/pixmaps/codeblocks.png %{pkgdata}/*