<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The _khAttAm_ blog &#187; c++</title>
	<atom:link href="http://www.khattam.info/tag/c/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.khattam.info</link>
	<description>Sharing views and experiences</description>
	<lastBuildDate>Sat, 22 Oct 2011 06:18:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>[HOWTO] Compile Facebook hiphop-php in Fedora 15</title>
		<link>http://www.khattam.info/howto-compile-facebook-hiphop-php-in-fedora-15-2011-06-29.html</link>
		<comments>http://www.khattam.info/howto-compile-facebook-hiphop-php-in-fedora-15-2011-06-29.html#comments</comments>
		<pubDate>Wed, 29 Jun 2011 03:14:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Fedora]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[hiphop]]></category>
		<category><![CDATA[hiphop-php]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.khattam.info/?p=1862</guid>
		<description><![CDATA[HipHop for PHP is a source code transformer which transforms PHP code to C++ and compiles it with gcc/g++. I wanted to experiment with it and tried to install in on my PC with Fedora 15. Here is how I did it and how you can do it ( hopefully ). Please note that this [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>HipHop for PHP is a source code transformer which transforms PHP code to C++ and compiles it with gcc/g++. I wanted to experiment with it and tried to install in on my PC with Fedora 15. Here is how I did it and how you can do it ( hopefully <img src='http://www.khattam.info/wp-includes/images/smilies/icon_smile.gif' alt="icon smile [HOWTO] Compile Facebook hiphop php in Fedora 15" class='wp-smiley' title="[HOWTO] Compile Facebook hiphop php in Fedora 15" />  ). Please note that this did not work and I will update the article soon.</p>
<p><span id="more-1862"></span></p>
<p><strong>Install Dependencies Available in the Repos</strong><br />
In the terminal, run the following command:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">su</span> <span style="color: #660033;">-c</span> <span style="color: #ff0000;">'yum -y install git cmake boost pcre-devel libicu-devel libmcrypt-devel oniguruma-devel mysql-devel gd-devel boost-devel libxml2-devel libcap-devel binutils-devel flex bison expat-devel re2c tbb libmemcached-devel tbb-devel bzip2-devel openldap-devel readline-devel libc-client-devel pam-devel gcc-c++ memcached'</span></pre></div></div>

<p><strong>Setup build environment</strong><br />
I compiled it in dev folder of home directory. Change directory in subsequent commands if you are doing it somewhere else. Run the following commands:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #660033;">-p</span> dev<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span></pre></div></div>

<p><strong>Download hiphop-php</strong></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> dev
<span style="color: #c20cb9; font-weight: bold;">git</span> clone <span style="color: #c20cb9; font-weight: bold;">git</span>:<span style="color: #000000; font-weight: bold;">//</span>github.com<span style="color: #000000; font-weight: bold;">/</span>facebook<span style="color: #000000; font-weight: bold;">/</span>hiphop-php.git</pre></div></div>

<p><strong>Download, patch and compile libcurl and libevent</strong><br />
Use these versions because as of current, patches for these versions are only available in hiphop git.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> dev
&nbsp;
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>curl.haxx.se<span style="color: #000000; font-weight: bold;">/</span>download<span style="color: #000000; font-weight: bold;">/</span>curl-7.20.0.tar.bz2
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>www.monkey.org<span style="color: #000000; font-weight: bold;">/</span>~provos<span style="color: #000000; font-weight: bold;">/</span>libevent-1.4.13-stable.tar.gz
<span style="color: #c20cb9; font-weight: bold;">tar</span> xvzf libevent-1.4.13-stable.tar.gz
<span style="color: #c20cb9; font-weight: bold;">tar</span> xvjf curl-7.20.0.tar.bz2
&nbsp;
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">CMAKE_PREFIX_PATH</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`/</span><span style="color: #7a0874; font-weight: bold;">local</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">cd</span> libevent-1.4.13-stable
<span style="color: #c20cb9; font-weight: bold;">cp</span> ..<span style="color: #000000; font-weight: bold;">/</span>hiphop-php<span style="color: #000000; font-weight: bold;">/</span>src<span style="color: #000000; font-weight: bold;">/</span>third_party<span style="color: #000000; font-weight: bold;">/</span>libevent-1.4.13.fb-changes.diff .
<span style="color: #c20cb9; font-weight: bold;">patch</span> <span style="color: #000000; font-weight: bold;">&lt;</span> libevent-1.4.13.fb-changes.diff
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`/</span>..<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span>
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> ..
&nbsp;
<span style="color: #7a0874; font-weight: bold;">cd</span> curl-7.20.0
<span style="color: #c20cb9; font-weight: bold;">cp</span> ..<span style="color: #000000; font-weight: bold;">/</span>hiphop-php<span style="color: #000000; font-weight: bold;">/</span>src<span style="color: #000000; font-weight: bold;">/</span>third_party<span style="color: #000000; font-weight: bold;">/</span>libcurl.fb-changes.diff .
<span style="color: #c20cb9; font-weight: bold;">patch</span> <span style="color: #660033;">-p0</span> <span style="color: #000000; font-weight: bold;">&lt;</span> libcurl.fb-changes.diff <span style="color: #666666; font-style: italic;">#see note-1 below</span></pre></div></div>

<p><strong>Note-1:</strong> While patching curl, you may be asked paths to the files. Enter includes/curl/multi.h and lib/multi.c respectively.</p>
<p>Now, you will need to make a small change in Makefile for it to compile properly. To do that open the file src/Makefile in gedit or any text editor, find the line that has the following:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">curl_LDADD = $(top_builddir)/lib/libcurl.la -lz</pre></div></div>

<p>and append -lrt so that the line looks like the following:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">curl_LDADD = $(top_builddir)/lib/libcurl.la -lz -lrt</pre></div></div>

<p>Now, run the following in the terminal:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> dev<span style="color: #000000; font-weight: bold;">/</span>curl-7.20.0
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`/</span>..<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">local</span>
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> ..</pre></div></div>

<p><strong>Compile hiphop-php</strong></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> dev
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">CMAKE_PREFIX_PATH</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`/</span><span style="color: #7a0874; font-weight: bold;">local</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> hiphop-php
<span style="color: #c20cb9; font-weight: bold;">git</span> submodule init
<span style="color: #c20cb9; font-weight: bold;">git</span> submodule update
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">HPHP_HOME</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`</span>
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">HPHP_LIB</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`/</span>bin
cmake . <span style="color: #666666; font-style: italic;">#see note-2 below</span>
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #666666; font-style: italic;">#see note-3 below</span></pre></div></div>

<p><strong>Note-2:</strong> You may get errors while running cmake. This may be because of dependencies I might have missed above. In that case, please let me know the output of cmake in the comments so that I might be able to help.<br />
<strong>Note-3:</strong> If you encounter any errors while using make, remove CMakeCache.txt and run make clean, cmake and make again.</p>
<p>This should have worked, but I am getting the following error:</p>
<blockquote><p>../../bin/libhphp_runtime.a(ext_mysql.cpp.o): In function `HPHP::php_mysql_do_query_general(HPHP::String const&#038;, HPHP::Variant const&#038;, bool)&#8217;:<br />
ext_mysql.cpp:(.text+0&#215;8100): undefined reference to `cli_safe_read&#8217;<br />
ext_mysql.cpp:(.text+0x826a): undefined reference to `net_field_length&#8217;<br />
ext_mysql.cpp:(.text+0x83a0): undefined reference to `cli_safe_read&#8217;<br />
ext_mysql.cpp:(.text+0&#215;8712): undefined reference to `free_root&#8217;<br />
collect2: ld returned 1 exit status<br />
make[2]: *** [src/hphp/hphp] Error 1<br />
make[1]: *** [src/hphp/CMakeFiles/hphp.dir/all] Error 2<br />
make: *** [all] Error 2
</p></blockquote>
<p>It seems like a problem with mysql version in the Fedora repo. I will download and build mysql and update this post.</p>
<p><strong>Further Reading</strong></p>
<p>https://github.com/facebook/hiphop-php/wiki/running-hiphop</p>
<p><strong>References</strong></p>
<p>https://github.com/facebook/hiphop-php</p>
<p>http://www.ioncannon.net/programming/918/building-hiphop-php-for-fedora-12-on-64-bit-and-32-bit-systems/</p>
<p>http://comments.gmane.org/gmane.comp.web.curl.library/29278</p>
<div class="shr-publisher-1862"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.khattam.info/howto-compile-facebook-hiphop-php-in-fedora-15-2011-06-29.html/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>[HOWTO] Make Ubuntu 10.04 Lucid Lynx Mono Free</title>
		<link>http://www.khattam.info/howto-make-ubuntu-10-04-lucid-lynx-mono-free-2010-08-14.html</link>
		<comments>http://www.khattam.info/howto-make-ubuntu-10-04-lucid-lynx-mono-free-2010-08-14.html#comments</comments>
		<pubDate>Sat, 14 Aug 2010 09:51:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lucid Lynx 10.04]]></category>
		<category><![CDATA[Maverick Meerkat 10.10]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ailurus]]></category>
		<category><![CDATA[amarok]]></category>
		<category><![CDATA[autopano-sift]]></category>
		<category><![CDATA[avant-window-navigator]]></category>
		<category><![CDATA[Awn]]></category>
		<category><![CDATA[banshee]]></category>
		<category><![CDATA[bareftp]]></category>
		<category><![CDATA[bashare]]></category>
		<category><![CDATA[beagle]]></category>
		<category><![CDATA[blam]]></category>
		<category><![CDATA[bless hex editor]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[c-sharp]]></category>
		<category><![CDATA[cairo dock]]></category>
		<category><![CDATA[cowbell]]></category>
		<category><![CDATA[deskbar]]></category>
		<category><![CDATA[devede]]></category>
		<category><![CDATA[dfo]]></category>
		<category><![CDATA[docky]]></category>
		<category><![CDATA[dotGNU]]></category>
		<category><![CDATA[dvdstyler]]></category>
		<category><![CDATA[easytag]]></category>
		<category><![CDATA[exaile]]></category>
		<category><![CDATA[extcalc]]></category>
		<category><![CDATA[f-spot]]></category>
		<category><![CDATA[filezilla]]></category>
		<category><![CDATA[flickr]]></category>
		<category><![CDATA[freespeak]]></category>
		<category><![CDATA[gbrainy]]></category>
		<category><![CDATA[gftp-gtk]]></category>
		<category><![CDATA[ghex]]></category>
		<category><![CDATA[ghex2]]></category>
		<category><![CDATA[Gnome Do]]></category>
		<category><![CDATA[gnome-rdp]]></category>
		<category><![CDATA[gnome-subtitles]]></category>
		<category><![CDATA[gnote]]></category>
		<category><![CDATA[google-desktop]]></category>
		<category><![CDATA[gq]]></category>
		<category><![CDATA[graphmonkey]]></category>
		<category><![CDATA[gthumb]]></category>
		<category><![CDATA[gtkpod]]></category>
		<category><![CDATA[gtwitter]]></category>
		<category><![CDATA[gwibber]]></category>
		<category><![CDATA[hardinfo]]></category>
		<category><![CDATA[hipo]]></category>
		<category><![CDATA[hugin]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[kflickr]]></category>
		<category><![CDATA[kupfer]]></category>
		<category><![CDATA[last.fm]]></category>
		<category><![CDATA[lastfmproxy]]></category>
		<category><![CDATA[lat]]></category>
		<category><![CDATA[liferea]]></category>
		<category><![CDATA[LimeWire]]></category>
		<category><![CDATA[luma]]></category>
		<category><![CDATA[mandvd]]></category>
		<category><![CDATA[mediainfo]]></category>
		<category><![CDATA[microsoft. novell]]></category>
		<category><![CDATA[mistelix]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[mt-daap]]></category>
		<category><![CDATA[muine]]></category>
		<category><![CDATA[nitrogen]]></category>
		<category><![CDATA[panorama]]></category>
		<category><![CDATA[picard]]></category>
		<category><![CDATA[pinot]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[remember the milk]]></category>
		<category><![CDATA[reminna]]></category>
		<category><![CDATA[rhythmbox]]></category>
		<category><![CDATA[screenlets]]></category>
		<category><![CDATA[shotwell]]></category>
		<category><![CDATA[smuxi]]></category>
		<category><![CDATA[streamdumper]]></category>
		<category><![CDATA[subtitleeditor]]></category>
		<category><![CDATA[sysinfo]]></category>
		<category><![CDATA[tangerine]]></category>
		<category><![CDATA[tasque]]></category>
		<category><![CDATA[thelastripper]]></category>
		<category><![CDATA[themonospot]]></category>
		<category><![CDATA[tomboy]]></category>
		<category><![CDATA[tovidgui]]></category>
		<category><![CDATA[tracker]]></category>
		<category><![CDATA[vala]]></category>
		<category><![CDATA[wally]]></category>
		<category><![CDATA[x-chat]]></category>
		<category><![CDATA[xbmc]]></category>
		<category><![CDATA[xchat]]></category>
		<category><![CDATA[yarssr]]></category>
		<category><![CDATA[youtranslate]]></category>

		<guid isPermaLink="false">http://www.khattam.info/?p=973</guid>
		<description><![CDATA[Ubuntu 10.04 comes with 3 default applications that depend on mono. They are F-Spot, a photo manager Tomboy, a note taking application Gbrainy, brain teaser game and trainer To get rid of mono and still keep the functionality, we need non-mono alternatives to these applications. Lets look at those. But first, let me write something [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Ubuntu 10.04 comes with 3 default applications that depend on mono. They are<br />
F-Spot, a photo manager<br />
Tomboy, a note taking application<br />
Gbrainy, brain teaser game and trainer<br />
To get rid of mono and still keep the functionality, we need non-mono alternatives to these applications. Lets look at those. But first, let me write something about why someone may want to remove Mono.</p>
<p><span id="more-973"></span></p>
<p><strong>Why remove Mono?</strong><br />
There are several reasons why someone may want to remove Mono from their Ubuntu installation. You may want to gain some free space. Mono takes up a lot of space for just a few applications. If you remove and replace them with others. This may not seem important if you want to run Ubuntu off normal harddisks these days, but it may be crucial if you want to remaster Ubuntu with few added applications and still want to distribute it on a CD or limited sized USB drive.<br />
You may want to remove Mono for other reasons like it is an implementation of <a href="http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Embrace_extend_and_extinguish?referer=');">standard set by Microsoft</a> or just because it is a short name for a <a href="http://en.wikipedia.org/wiki/Epstein-Barr_virus" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Epstein-Barr_virus?referer=');">contagious disease</a>.</p>
<p><strong>Why not remove Mono?</strong><br />
You may not want to remove Mono if you just want to free some space from your installation because it may not be the case when you start installing other applications based on Mono. You see, the alternatives also have dependencies and the different dependencies for all the alternatives may occupy more space than Mono.<br />
Also, Mono seems to be a popular platform and there are many great applications like Docky, Banshee, Beagle etc. which need it. Moreover, many new applications may come up which need Mono and you may have to install it anyway.</p>
<p>Enough of that. Now, lets get to the applications.<br />
<strong>F-Spot</strong><br />
F-Spot is to be removed from default install from Ubuntu 10.10 Maverick Meerkat and is being replaced by Shotwell. So, you can install Shotwell as a replacement to F-Spot. There is yet another photo manager called Gthumb but I think Shotwell is the better choice.</p>
<p><strong>Tomboy</strong><br />
Tomboy is a really great note taking application. However, an almost exact clone which can import and use all the notes created by tomboy is available. It is called Gnote. Tomboy can be safely replaced with Gnote. Gnote is a C++ port of Tomboy and claims to be faster. Also, if you use the <a href="https://launchpad.net/~gnote/+archive/ppa" onclick="pageTracker._trackPageview('/outgoing/launchpad.net/_gnote/+archive/ppa?referer=');">gnote stable ppa</a> by adding ppa:gnote/ppa to your software sources, you can install gnote 0.7.x which features a nice gnome-panel applet for Gnote.</p>
<p><strong>Gbrainy</strong><br />
I don&#8217;t know a good replacement for this great game, but it is just a mind teaser game. So, if you can do without it, just remove it.</p>
<p>Following is the step by step procedure for doing this.</p>
<p><strong>Repositories</strong><br />
Open up Synaptic (System>Administration>Synaptic Package Manager) and click on Settings>Repositories. Make sure &#8220;Community maintained open source software (universe)&#8221; is selected. Now click Other Software tab and click Add. Then copy/paste the following</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">ppa:gnote/ppa</pre></div></div>

<p> and click Add Source. This will add gnote PPA so that you can install the latest version of Gnote. Close the repositories window. Click on Reload so that the software lists are fetched from all repositories.</p>
<p><strong>Removal of Mono and Installation of Alternatives</strong><br />
Search for shotwell and gnote in Synaptic Package Manager and mark them for installation. Search for mono-runtime and mark it for removal. This will ask for your confirmation that several other mono related packages including F-Spot, Tomboy and Gbrainy will be marked for removal. Just confirm it and click on Apply. This should free about 40 MB of Disk Space and download about 3 MB only.<br />
To add Gnote panel applet, press Alt+F2 and type in killall gnome-panel and then when the panel loads back, Right click on it and select Add oo Panel, search for Gnote and click Add.</p>
<p><strong>Other Softwares that depend on mono and alternatives</strong><br />
There are few other great softwares based on mono that are great but aren&#8217;t included in the default install. However, lets discuss them too. If you have any of those installed, they will be removed too. So, lets get to their alternatives.</p>
<p><strong>Docky</strong><br />
Many Ubuntu users use Mac OS like docks these days. One such great dock is Docky. But there are some other good docks which can serve as a replacement for Docky. One of them is Avant-Window-Navigator. It is not so friendly in terms of disk space though. It consumes over 40MB of disk space and hence defeats the purpose if you are trying to remove mono because of disk space usage. Cairo dock may serve as a good replacement in that case.</p>
<p><strong>Banshee</strong><br />
Banshee is a popular music player and media management application and favorite gnome media manager for lot of Linux users. However, the default Music Manager Rhythmbox should serve as a good replacement for it for a lot of users. Exaile is also good one.</p>
<p><strong>Gnome-do</strong><br />
I never really got used to this application. I primarily used it for Docky (Docky was originally a part of Gnome-do) and never used other features that it had to offer. However, there are some huge fans of this application. It claims to get things done faster in Gnome. There is another application called kupfer (it is not a KDE application as the name suggests, yes I&#8217;m talking about its initial letter <img src='http://www.khattam.info/wp-includes/images/smilies/icon_biggrin.gif' alt="icon biggrin [HOWTO] Make Ubuntu 10.04 Lucid Lynx Mono Free" class='wp-smiley' title="[HOWTO] Make Ubuntu 10.04 Lucid Lynx Mono Free" /> ) which claims to to provide similar functionality. It also has a lot of plugins and you should really give it a try. But it does not look sleek as Gnome-do though.</p>
<p><strong>Beagle</strong><br />
Beagle is a indexing and searching tool for the Desktop. Tracker, Pinot or Google-Desktop-Search should serve as replacements.</p>
<p><strong>Bless Hex Editor</strong><br />
Bless is a GUI hex editor which is really awesome. There is a replacement called ghex for it but it is not as good though.</p>
<p><strong>Muine Music Player</strong><br />
Muine is a simple music player. It aims to be and remain simple music player. I haven&#8217;t really used it but I think the default movie player Totem, which can be used as audio player too of course, can provide everything that Muine has to offer.</p>
<p><strong>Graphmonkey</strong><br />
This one is a graph drawing application written in GTK#. I found a replacement called extcalc (qt3 application) but it is not as simple (which in other words also means it is more powerful and includes more features such as scripting <img src='http://www.khattam.info/wp-includes/images/smilies/icon_smile.gif' alt="icon smile [HOWTO] Make Ubuntu 10.04 Lucid Lynx Mono Free" class='wp-smiley' title="[HOWTO] Make Ubuntu 10.04 Lucid Lynx Mono Free" /> ).</p>
<p><strong>Tangerine</strong><br />
Tangerine is a DAAP server which can serve music to Apple iTunes, Rhythmbox, Banshee, Amarok, XBMC, Limewire or any other music player that supports this protocol. I haven&#8217;t actually used it but there is another package mt-daapd which claims to provide similar functionality.</p>
<p><strong>Smuxi</strong><br />
It is an IRC client. There are several IRC clients that should replace it. I use X-Chat.</p>
<p><strong>Mistelix</strong><br />
Mistelix is a DVD authoring application. I don&#8217;t actually do any of that, but according to this article, one or a combination of Q DVD-Author, DVDStyler, DeVeDe, ManDVD, and tovidgui should be able to provide what Mistelix does.</p>
<p><strong>gtwitter</strong><br />
This is a twitter client. The default application Gwibber should be a good replacement for this.</p>
<p><strong>gnome-rdp</strong><br />
gnome-rdp is a remote desktop client for Gnome. It can be replaced by reminna.</p>
<p><strong>Cowbell</strong><br />
It claims to be a music organizer and tagger. I am assuming EasyTag or Picard should serve as a replacement.</p>
<p><strong>Tasque</strong><br />
Tasque brings <a href="http://www.rememberthemilk.com/" onclick="pageTracker._trackPageview('/outgoing/www.rememberthemilk.com/?referer=');">Remember The Milk</a> service (TODO list management) to the Desktop. However, Avant Window Navigator, Screenlets or Deskbar can offer similar functionality with RTM-related plugins.</p>
<p><strong>Blam</strong><br />
Blam is an RSS Aggregator. Liferea, Yarssr and many other applications provide this functionality.</p>
<p><strong>DFO</strong><br />
DFO (Desktop Flickr Organizer) is a photo manager which integrates with Flickr. I think only Kflickr (KDE Based) comes as close.</p>
<p><strong>Drapes</strong><br />
Wallpaper rotator for Gnome. Nitrogen and Wally should serve as replacements.</p>
<p><strong>gshare/giver</strong><br />
These are easy file sharing applications. BaShare can serve as a replacement.</p>
<p><strong>last-exit</strong><br />
It is a Desktop Last.fm player. Rhythmbox or lastfm should serve as a replacement.</p>
<p><strong>LAT</strong><br />
LAT is a LDAP Administration tool. Luma or GQ can serve as replacements.</p>
<p><strong>themonospot</strong><br />
It is a simple media information extractor. <a href="http://mediainfo.sourceforge.net/" onclick="pageTracker._trackPageview('/outgoing/mediainfo.sourceforge.net/?referer=');">MediaInfo</a> serves as an excellent replacement.</p>
<p><strong>bareftp</strong><br />
Bareftp is a FTP client. Filezilla Client, gFTP-GTK and various other GUI FTP clients can replace bareftp.</p>
<p><strong>hipo</strong><br />
It is an iPod manager. gtkpod serves as a replacement.</p>
<p><strong>Sysinfo</strong><br />
It is a System Information Tool. It can be replaced with Hardinfo. <a href="http://code.google.com/p/ailurus/downloads/list" onclick="pageTracker._trackPageview('/outgoing/code.google.com/p/ailurus/downloads/list?referer=');">Ailurus</a> also has this feature.</p>
<p><strong>thelastripper</strong><br />
It is a Last.fm stream dumper. lastfmproxy and streamdumper can be used to do the same.</p>
<p><strong>gnome-subtitles</strong><br />
Gnome subtitles is a sub-title editor. SubtitleEditor can serve as a replacement.</p>
<p><strong>autopano-sift</strong><br />
Panorama images creation helper. Hugin should be a replacement.</p>
<p><strong>youtranslate</strong><br />
It is a translation application which makes the use of online translators such as Google Translate. freespeak should serve as a good replacement.</p>
<p><strong>Mono</strong><br />
Mono is an open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft .NET. If you don&#8217;t want to use it but still want to develop C# applications that run on Linux, you can go for dotGNU. But unlike Mono, it is not available from Ubuntu software center or officially supported by Cannonical.</p>
<p><strong>C#</strong><br />
If you want to develop cross platform applications or applications for Linux and don&#8217;t want to use Mono, C# is not the language you should go with. A better language may be Java, Python or Vala.</p>
<p><strong>Final Notes</strong><br />
I have tried to list all the applications that may prevent you from removing mono. However, I have not used all the programs that I have listed (at least not used them enough to get used to them or to know what features they offer or even to the extent to know them in any way). So, if you think I have missed a program or an alternative, please let me know via comments.<br />
Thank you for reading.</p>
<div class="shr-publisher-973"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.khattam.info/howto-make-ubuntu-10-04-lucid-lynx-mono-free-2010-08-14.html/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[HOWTO] Integrating newmat with Code::Blocks in Ubuntu</title>
		<link>http://www.khattam.info/howto-integrating-newmat-with-codeblocks-with-ubuntu-2010-01-07.html</link>
		<comments>http://www.khattam.info/howto-integrating-newmat-with-codeblocks-with-ubuntu-2010-01-07.html#comments</comments>
		<pubDate>Thu, 07 Jan 2010 14:28:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Karmic Koala 9.10]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[Code::blocks]]></category>
		<category><![CDATA[karmic]]></category>
		<category><![CDATA[karmic koala]]></category>
		<category><![CDATA[newmat]]></category>

		<guid isPermaLink="false">http://www.khattam.info/?p=584</guid>
		<description><![CDATA[Newmat is a matrix manipulation library for C++. It can be used with various C++ compilers. Here we will go through how to use newmat with Code::Blocks in Ubuntu. I&#8217;m using Ubuntu 9.10 Karmic Koala with newmat 10 and Code::Blocks 8.02, however other versions may also work. Here is how you can do it. Install [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Newmat is a matrix manipulation library for C++. It can be used with various C++ compilers. </p>
<p>Here we will go through how to use newmat with Code::Blocks in Ubuntu. I&#8217;m using Ubuntu 9.10 Karmic Koala with newmat 10 and Code::Blocks 8.02, however other versions may also work. Here is how you can do it.<span id="more-584"></span></p>
<p>Install libnewmat10-dev from Synaptic.<br />
Open Code::Blocks.<br />
If you want to add newmat to all your projects without having to care about setting it up in later projects of yours, you can edit the settings from Settings > Compiler and Debugger menu. However, if you want to add to particular project only, you will need to reach for Project > Build Options.<br />
Now, in the Linker tab, Add newmat. Now, you are ready to use newmat in your programs.</p>
<p>To use newmat, you will need to include newmat.h as follows at the beginning of your C++ project as follows:<br />
#include <newmat.h></p>
<p>You may also want to include iomanip and newmatio.h for operations such as c<<MATRIX, where MATRIX is an object of type Matrix.<br />
You can do that as follows:<br />
#include <iomanip><br />
#include <newmatio.h></p>
<p>Don&#8217;t forget to use the following before you write any code:<br />
using namespace NEWMAT;</p>
<p>For more, view newmat documentation at http://www.robertnz.net/nm10.htm</p>
<p>Hope this helps.<br />
</p>
<div class="shr-publisher-584"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.khattam.info/howto-integrating-newmat-with-codeblocks-with-ubuntu-2010-01-07.html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Turbo C++ IDE &#8211; A look at the Alternatives</title>
		<link>http://www.khattam.info/turbo-c-ide-a-look-at-the-alternatives-2009-05-04.html</link>
		<comments>http://www.khattam.info/turbo-c-ide-a-look-at-the-alternatives-2009-05-04.html#comments</comments>
		<pubDate>Mon, 04 May 2009 09:33:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[geany]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[turbo c++]]></category>

		<guid isPermaLink="false">http://www.khattam.info/?p=155</guid>
		<description><![CDATA[Many engineering and computer science labs tend to have Turbo C++ IDE as the basic IDE. That is not appropriate for new standards of C\C++ and an alternative must be sought for it. An IDE such as Dev-C++ would work great for school labs, because it needs no configuration and is easy to use. It [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><br />
Many engineering and computer science labs tend to have Turbo C++ IDE as the basic IDE. That is not appropriate for new standards of C\C++ and an alternative must be sought for it.<span id="more-155"></span></p>
<p>An IDE such as Dev-C++ would work great for school labs, because it needs no configuration and is easy to use. It can compile single .c\.cpp files (most other IDEs need you to create project files for every program you want to run) However, Dev-C++ is not an active project which means you do not get updates and you may end up like Turbo C++ in a few years.</p>
<p>Another option for Windows Based computers is to consider Relo + Borland Free Compiler. Find details <a title="Ditch Turbo C++" href="http://www.thinkdigit.com/forum/showthread.php?t=65520&amp;page=2" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.thinkdigit.com/forum/showthread.php?t=65520_amp_page=2&amp;referer=');">here</a>. This is probably the best for old Turbo C++ users because it supports traditional code too.</p>
<p>Also, you might consider Code::Blocks as an IDE which is full fledged IDE for C\C++ but it might be difficult at the beginning. If you create many small programs rather than a large project, then you will feel this one difficult to use. Also, it is slow and may not perform well on old computers. Code::Blocks is available for both Windows and Linux.</p>
<p><br />
Geany is the best IDE of choice if you want a small lightweight IDE for Windows, Linux and Mac.<br />
In Linux, it should be available at your software repository. Use the software management tool for your distro to install it. If it is not, you may download the source package from the official geany website www.geany.org and build from source.<br />
If you want it for Windows, you can get it at <a title="Geany - Download Page" href="http://www.geany.org/Download/Releases" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.geany.org/Download/Releases?referer=');">the download page</a>. Also look at <a title="Geany - Running on Windows" href="http://www.geany.org/Support/RunningOnWindows" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.geany.org/Support/RunningOnWindows?referer=');">Running On Windows</a>.</p>
<p>Happy Coding.</p>
<div class="shr-publisher-155"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.khattam.info/turbo-c-ide-a-look-at-the-alternatives-2009-05-04.html/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

