IRC Client

For the course Computer Networks at UHasselt. Pieter Vincken and I formed a group. Our assignment was to create a basic IRC client with at least the following requirements:

  • Log in to the server with a chosen nickname.
  • Join, create and leave channels.
  • Send and receive messages to/form channels.
  • Send and receive private messages.
  • Send and receive files using DCC, underneath using P2P.
  • Basic admin feature(s). E.g. Kick.

As a server we were obligated to use WeIRCd, which is discontinued by now. We choose to use Qt for this assignment, however we were still obligated to use the default socket library of C, not the one from Qt.

The following commands were implemented: /nick, /user, /pass, /connect, /join, /privmsg, /part, /partall, /quit, /dcc send, /dcc reject, /names, /mode, /real. More information about the commands can be found here.

Building Poppler on Windows using MinGW

The E-Sheet project needed to be able to create and view PDF's. After looking around, I noticed a lot of people proposed to use Poppler, but to use it I needed to build the libraries. Since there isn't much information out there, I could only base my tries on this tutorial.


  • Poppler (I used poppler-0.18.4)
  • Qt4 or the sources if you want to compile Qt as well. I tried them both and both were successful, so it's up to you.
  • MinGW download the installer (e.g. mingw-get-inst-20111118.exe)
  • CMake
  • Freetype
  • Cairo
    While building I encountered the following error:
    C:/.../CairoOutputDev.h:38:22: fatal error: cairo-ft.h: No such file or directory
    To solve this I moved the files located in the /include/cairo folder to the /include folder.
    Then another error occurred:
    C:/.../include/cairo-ft.h:50:35: fatal error: fontconfig/fontconfig.h: No such file or directory
    To solve this you will need to download Fontconfig. Once the download is complete copy the /include/fontconfig folder from the fontconfig archive into the cairo /include folder. The other parts of the fontconfig archive are not needed.
  • Openjpeg
  • Zlib

Create MySQL driver for Qt on Windows

As you might have seen I'm working on the E-Sheet project of the Royal Belgian Ice Hockey Federation (RBIHF). This project is created with Qt on a Windows system and requires a connection to a MySQL database. Since Qt doesn't deliver the MySQL driver by default, I had to created it myself. You can recognize the problem from the following error: Driver not loaded.

I checked out several tutorials but they were either unsuccessful or extremely slow or even both. The main reason they were unsuccessful is that they aren't compatible with the new Qt versions (4.7.x and up). I listed a few of them below:

  • Qt Documentation
    This one should work, but will take a lot of time, since you have to compile Qt. Another problem was that while configuring Qt the following error occurred: Perl not found in environment - cannot run syncqt. A solution for this error can be found here.
  • Christopher.rasch-olsen.no
  • Berenger.eu

After searching a while I found this solution. It works and it's fast. This is what you should do: