Tuesday, September 21, 2010

List of useful packages for C/C++ development on Ubuntu Linux Part 1

Linux in a Nutshell: A superb bible for looking up Linux commands and options. http://oreilly.com/catalog/9780596154493


Installing Development related packages on Ubuntu:
http://software.jessies.org/salma-hayek/ubuntu-setup.html

You can add repositories to download packages by editing this file:
vim /etc/apt/sources.list

For Eclipse C++ CDT installation please refer to this blog post.

Script:
A very useful command to record your command-line session actions for later use and replay later:
        script -a -f -t  2> timingfile  mydemo.log     #append, flush-writes, timestamp)

       scriptreplay timingfile mydemo.log    #replays with timing as per timestamps captured above
For further info see:

     man script
     man scriptreplay

Links:  
http://www-users.cs.umn.edu/~skim/cs1901/script.html
http://devdaily.com/blog/post/linux-unix/use-unix-linux-script-command-record-your-command-line-i-o

Killing Processes on Ubuntu with 3 Finger salute(How-to-Geek)

gpm: A command-line text mode clipboard manager with mouse integration.
Use left mouse button to select and copy text and paste with middle mouse button.
Super useful installation/usage howto from Gentoo: http://www.gentoo.org/doc/en/gpm.xml#doc_chap4

gpm options: http://www.oreillynet.com/linux/cmd/cmd.csp?path=g/gpm


apt-get install -y gpm #General Purpose Mouse server (clipboard manager for command line
NOTE: You can set the system default packages on Ubuntu using debconf-set-selections and debconf-get-selections

Glipper: Clipboard manager for Gnome. It retains all your text copies.
#a) Installs Glipper the multiple copies clipboard manager into Ubuntu Gnome Desktop
apt-get install glipper
#b) Right click on the "Windows Quicklaunch Bar" and Add to Panel->Clipboard manager
#c) Click on any of the previous copies to get the copy-paste you need.
I went through the entire list of packages available and selected a few below from the Development (meta-package?) of Ubuntu (10.04.1 ubuntu desktop 32 bit)

[COMMON-DEV]
apt-get update #updates your packages

apt-get install -y gcc #GNU C compiler

apt-get install -y gcc-mingw32 #Cross Compilation
apt-get install -y g++


apt-get install -y make
apt-get install -y linux-headers-`uname -r` build-essential  #C/C++ header files for building C/C++ programs 
apt-get update eclipse eclipse-pde #Update Eclipse and plugin-dev-env for connect to p2 repository of CDT for installing the CDT

apt-get install -y vim-gtk

apt-get install -y c++-annotations
apt-get install -y c-cpp-reference #Reference for C/C++
apt-get install -y cpp-doc #C++ documentation
apt-get install -y manpages-dev glibc-doc


[PACKAGE-MGMT]
apt-get install -y apt-build #GUI for apt-get
apt-get install -y ceve #Parse linux package dependencies

[PYTHON]
apt-get install -y python-dev
apt-get install -y idle2.6
apt-get install -y cableswig #Python/Tcl wrappers for C++ code
apt-get install -y boa-constructor #RAD tool for python/wxwidgets

[PROFILERS]
apt-get install -y gprof
apt-get install -y kprof #KDE util for gprof analysis/viewing
apt-get install -y valgrind
apt-get install -y cachegrind
apt-get install -y alleyoop #Valgrind related
apt-get install -y valkyrie #GUI for valgrind
apt-get install -y kcachegrind #KDE Gui for valgrind
apt-get install -y sysprof #System-wide CPU profiling
apt-get install -y systemtap systemtap-client systemtap-grapher #Collect data on a live running linux box
apt-get install -y syslog syslog-ng #Interprocess application logging facility


[TESTING]
apt-get install -y libcppunit-doc libcppunit-dev  #C++ unit-testing lib

apt-get install -y subunit #Run and Save remote test results for later use
apt-get install -y stress #Stress test your computer with heavy load
apt-get install -y httest #Simulate client/server actions with pattern-matching for test validation
apt-get install -y fuzz #Stress test s/w with random inputs

[DEBUG]
apt-get install -y gdb gdb-doc #Debug programs
apt-get install -y gdbserver #Remotely debug from another system where GDB is installed.
apt-get install -y ddd #GUI for gdb
apt-get install -y bashdb #Bash debugger
apt-get install -y zshdb zsh-dbg #debugger and debug symbols for ZSH
apt-get install -y gcov #Source code coverage analyzer
apt-get install -y ggcov #GUI for gcov Source code coverage analyzer
apt-get install -y lcov #HTML and directory-wise view of gcov output

apt-get install -y collectd-dbg #statistics collection and monitoring daemon
apt-get install -y wireshark wireshark-dev #Network debugging
apt-get install tack-dbg #Diagnostic tool for correctness of terminfos.
apt-get install -y tau tau-racy tau-examples #Multithread/multiproc tuning and analysis with GUI
apt-get install -y leaktracer #Simple C++ leak tracer
apt-get install -y electric-fence #malloc debugger
apt-get install -y duma #Fork of electric-fence library with added features
apt-get install -y winpdb #GUI debugger for Python
apt-get install -y gtkparasite #Python interactive debugger for running GTK+ code.
apt-get install -y happycoders-libdbg-dev #allows modern debugging paradigms for Large codebase
apt-get install -y happycoders-libsocket-dev #
apt-get install -y bless-hex-editor #Hex Editor
apt-get install -y hexdiff #Visual hex difference analyzer
apt-get install kompare #diff and merge util for files and dirs.
apt-get install -y tkdiff #diff/merge util in TK
apt-get install -y ht #Viewer/Editor/Analyser for all kinds of executables.
apt-get install -y abi-compliance-checker #C++ sharedlib binary compatibility checker
apt-get install -y tesq #Decoding of terminal escape sequences used by Unix Terminals

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.