Archive

Articles taggués ‘Linux’

GTK+ Installation du SDK

GTK+2.0 est une libraire graphique permettant la réalisation de logiciels pouvant par la suite être compilé sur différents OS.

Nous allons donc voir comment installer et compiler avec cette librairie sous Linux.

Installation

Pour installer GTK, il suffit d’entrer la commander suivant qui va installer toutes les dépendances nécessaire au développement d’une application.

sudo apt-get install libgtk2.0-dev libgtk2.0-bin libgtk2.0-common libgtk2.0-0

Compilation

Pour la compilation de votre programme, il faut utiliser le logiciel pkg-config qui va s’occuper de linker GTK à votre programme.

g++ main.cpp -o mafenetre `pkg-config --cflags --libs gtk+-2.0`

Exemple de code

Voici un code basique qui vous permettra de tester si l’installation et la compilation se sont bien déroulé. Ce code va vous afficher une fenêtre.

#include <stdlib.h>
#include <gtk/gtk.h>

int main (int argc, char **argv)
{
 GtkWidget *p_window = NULL;

 /* Initialisation de GTK+ */
 gtk_init (&argc, &argv);

 /* Creation de la fenetre principale de notre application */
 p_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
/* Creation du signal qui permet de quitter l'application */
 g_signal_connect (G_OBJECT (p_window), "destroy",
 G_CALLBACK (gtk_main_quit), NULL);

/* Affichage de la fenetre principale */
gtk_widget_show (p_window);

/* Lancement de la boucle principale */
gtk_main ();

return EXIT_SUCCESS;
}

En savoir plus

Page Wikipedia Pkg-config : http://fr.wikipedia.org/wiki/Pkg-config

Share on Facebook
Categories: Tutoriels Tags: , ,

SFML Installation et Compilation

La librairie SFML est une librairie permettant le développement d’applications multimédias. Cette librairie écrite en C++ mais également dans d’autres langages se veut être une alternative objet à SDL.

Elle est composé de différents modules à savoir :

  • module système : il gère l’horloge et les threads
  • module graphique : tout ce qui est affichage d’images
  • module réseau : il simplifie l’utilisation des sockets
  • module son : il permet de jouer des musiques et son dans son application
  • module fenêtre : utilisé pour la création des fenêtres et l’interaction de l’utilisateur avec le programme

Nous allons voir comment installer et compiler avec cette librairie sous Linux et Windows.

Linux

Installation

Pour installer le SDK de SFML, rendez-vous sur le site officiel dans la section téléchargement puis téléchargez la dernière version pour le C++ nommé SFML Full SDK.
Une fois téléchargé, décompresser l’archive puis ouvrez une nouvelle fenêtre nautilus en root dans le dossier /usr/.

sudo nautilus /usr/

Dans ce dossier vous allez placer les fichiers de l’archive SFML à savoir les fichiers SFML-1.6/lib/ dans /usr/libs/ et le dossier SFML-1.6/includes/SFML dans /usr/includes/ en faisant des copier/coller.
Une fois cette étape franchie, vous avez fini l’installation et pouvez compiler.

Compilation

Pour la compilation, ouvre un terminal et entre simplement pour compiler l’exemple donné ci-dessous :

g++ main.cpp -o horloge -lsfml-system

Les linker à mettre dépendent des modules que vous allez utiliser. Ce sont les fichiers que vous avez placé dans le dossier /usr/libs.

Windows

Installation

Sous Windows, la démarche est la même, sur la page de téléchargement, prenez l’archive SDK Complet SFML pour MinGW (Code Block).
Ensuite, décompressez l’archive puis mettez dans C:\MinGW\include\ le dossier SFML-1.6\include\SFML et mettez les fichiers de ayant l’extension ‘.a’ (à savoir libsfml-audio.a, libsfml-graphics.a, libsfml-main.a, libsfml-network.a, libsfml-system.a, libsfml-window.a) dans le dossier librairie de MinGW (C:\MinGW\lib) et enfin les dll seront à ajouter dans le dossier de votre programme.
Ces dll sont à ajouter suivant les librairies que vous utiliserez et inclurez dans votre projet lors de la compilation.

Compilation

De la même manière que sous Linux, pour compiler vos projet ou l’exemple donné ci-dessous, utilisez dans une console g++ de la manière suivante :

g++ main.cpp -o horloge -lsfml-system

Exemple d’un programme

Voici un programme tiré de la documentation officielle. Si vous arrivez à le compiler, c’est que l’installation c’est bien passé.

#include <SFML/System.hpp>
#include <iostream>

int main()
{
    sf::Clock Clock;
    while (Clock.GetElapsedTime() < 5.f)
    {
        std::cout << Clock.GetElapsedTime() << std::endl;
        sf::Sleep(0.5f);
    }

    return 0;
}

Le résultat n’est pas formidable, il vous affiche le temps depuis lequel le programme est démarré dans un terminal. Le but n’était pas de réaliser un super jeu mais de savoir installer cette librairie et maintenant c’est à vous de jouer !

Share on Facebook
Categories: Tutoriels Tags: , , ,

Ubuntu : Imprimantes BROTHER

Il peut arriver que vous ayez besoin d’imprimer avec votre jolie imprimante mais sous Ubuntu c’est souvent la galère pour trouver les bons drivers…

Brother Logo

Que Nénies ! Les petits gars de chez BROTHER ont pensé à tout ! En effet, vous pouvez retrouver une liste de tous les drivers de leurs imprimantes à cette page :
http://biturl.fr/BrotherDrivers
C’est clair, simple et pas besoin de passer des heures pour trouver les drivers dont vous avez besoin…

Les Scanners

Dans le même esprit, vous pouvez avoir à utiliser un scanner. La manipulation est un peu plus compliqué et je vais donc prendre un exemple. Dans mon cas il s’agit d’un scanner pour une imprimante DCP-145C qui sera connecté en USB. Dans un premier temps, nous allons télécharger les drivers puis dans un second temps nous ferons une petite manipulation mais tout est expliqué sur leur site alors ce ne sera pas bien compliqué…

Rendez-vous sur http://biturl.fr/BrotherInsScan et cliquez sur le premier lien pour les drivers de votre scanner en USB. Choisissez ensuite la page de « Step 3″ qui est en faite la page pour télécharger les drivers en question. Faite une recherche pour trouver le modèle de votre imprimante puis téléchargez les .deb pour brscan3_32bit et scan-key-tool_3bit puis installez les. Une fois cela fait retournez sur la première page et cliquez sur « Setting for normal users ». Sur cette pages vous avez pas mal d’instructions pour toutes les distributions Linux mais l’idée pour Ubuntu est d’éditer c’est d’éditer le fichier /lib/udev/rules.d/40-libsane.rules et d’ajouter la ligne suivante en haut du fichier :

# Brother scanners
ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"

Vous rebooter votre OS et votre scanner fonctionnera avec par exemple le logiciel Simple Scan.

Share on Facebook
Categories: Tutoriels Tags: , ,

Pure-FTPd et MySQL

Le logiciel Pure-FPure-FTPd LogoTPd est l’un des serveurs FTP les plus simple à installer et configurer c’est pourquoi si vous cherchez à installer un serveur FTP rapidement sur votre serveur Linux, je ne peux que vous le recommander.
Aujourd’hui, nous allons voir comment utiliser Pure-FTPd et MySQL simultanément pour permettre la séparation des tâches avec l’enregistrement des comptes utilisateurs dans le SGBDR et le reste du fonctionnement du serveur FTP gérer par Pure-FTPd. Le but du tutoriel n’étant pas de vous apprendre à installer et manipuler MySQL, je pars du principe que ce dernier est installé sur la même machine (ou une machine distante) que votre serveur FTP et que vous avez soit PHPMyAdmin sous la main ou le client MySQL en ligne de commande pour la partie traitant des manipulations sur la base de donnée.

Installation du serveur Pure-FTPd-mysql

Pour utiliser MySQL avec votre serveur de FTP, il faut que ce dernier ai été compilé avec la commande « –with-mysql« . Heureusement pour nous, plutôt que de ce compliquer la vie à compiler les sources du serveur, nous allons directement installer le paquet tout prêt à l’usage nommé : pure-ftpd-mysql.
Même si on vous conseil d’installer « pure-ftpd » ou même qu’on vous demande de le désinstaller si vous l’avez déjà installé, dite oui pour continuer l’installation.

sudo apt-get install pure-ftpd-mysql

Note : Si vous avez votre serveur FTP déjà en cours de production, l’installation de cette version ne perturbera en rien vos utilisateurs et vous pouvez continuer la suite de ce tutoriel puisque le redémarrage ne sera nécessaire qu’a la fin.

Création de la Base de donnée

A partir de votre interface PHPMyAdmin ou le client MySQL, vous allez créer un utilisateur ainsi qu’une base de donnée associé à ce compte.

Création d’un compte utilisateur en requête SQL.

CREATE USER `pureftpd` identified by `pwdftp`;

Création de la base de donnée et une table qui servira à contenir les comptes utilisateurs.

CREATE DATABASE `pureftpd`;

Association du compte utilisateur « pureftpd » avec la table « users » en lui attribuant les droits de lecture, écriture, mise à jour et suppression.

GRANT SELECT, INSERT, UPDATE, DELETE ON `*.pureftpd` TO `pureftpd`;

Création de la table où les utilisateurs seront enregistré.

CREATE TABLE `users` (
 `Id` int(11) NOT NULL auto_increment,
 `User` varchar(32) NOT NULL default '',
 `Password` varchar(64) NOT NULL default '',
 `Uid` int(3) NOT NULL default '33',
 `Gid` int(3) NOT NULL default '33',
 `Dir` varchar(255) NOT NULL default '',
 `QuotaTaille` int(4) NOT NULL default '250',
 `ULBandePassante` int(2) NOT NULL default '10',
 `DLBandePassante` int(2) NOT NULL default '10',
 PRIMARY KEY  (`ID`),
 UNIQUE KEY `User` (`User`)
);

Avant de poursuivre, voici quelques informations sur la table et plus particulièrement sur ces champs.
Id : est un identifiant unique qui s’incrémente automatiquement à chaque insertion d’une ligne.
User : est l’identifiant qui sera utilisé lors d’une connexion.
Password : est le mot de passe affiché en clair. Aucune méthode de cryptage n’est appliqué !
Uid : C’est un entier qui permet d’identifier un compte utilisateur créer sur votre serveur Linux. J’ai mit le 33 en nombre par défaut car il s’agit de l’utilisateur « www-data » qui est automatiquement créer lorsque vous installez votre serveur Apache. Pour connaître le numéro des groupes, affichez le fichier /etc/passwd et cherchez une ligne ressemblant à « www-data:x:33:33:www-data:/var/www:/bin/sh« .
Gid : C’est le même principe que précédemment à savoir le groupe utilisateur qui sera associé aux fichiers lorsqu’une connexion FTP sera ouverte. Pour connaître les groupes utilisateurs vous pouvez soit chercher dans le fichier /etc/group ou alors vous les trouverez également comme dans le fichier précédent à savoir 33:33 où le premier nombre est le Uid et le second le Gid.
Dir : Il s’agit du chemin absolut vers lequel le client sera en mesure d’écrire. Veuillez à ce qu’il est les droits en écriture dans ce dossier au moins. De plus lorsque vous indiquez le chemin dans votre requête SQL Insert, veuillez à bien faire comme ceci : /chemin/dossier/puis/nom/dossier/ avec le / marquant bien la fin du chemin sinon des erreurs surviendront lors de la connexion au serveur.
QuotaTaille : permet de fixer une limite pour le compte de l’utilisateur qu’il ne pourra dépasser. Cette limite est exprimé en Mo et pour informations, 1Go = 1024 Mo.
ULBandePassante : Ce paramètre exprimé en Ko/s permet de définir la bande passante maximale en Upload (transfert du client au serveur) pouvant être atteinte par le client. Si vous mettez 0, cela sera considéré comme n’ayant aucune limite.
DLBandePassante : Ce paramètre exprimé en Ko/s permet de définir la bande passante maximale en Download (transfert du serveur au client) pouvant être atteinte par le client. Si vous mettez 0, cela sera considéré comme n’ayant aucune limite.

Les Fichiers de configuration de Pure-FTPd

Tous les fichiers concernant le serveur FTP se trouvent dans /etc/pure-ftpd/, les fichiers de configuration sont dans le dossier « conf » et le fichier concernant la base de donnée est dans « db« .

Interdire les connexions anonyme
Pour interdire les connexions en anonyme, éditez le fichier /etc/pure-ftpd/conf/NoAnonymous et écrivez ou remplacez le « yes » présent par simplement par « no« .

Indiquer le chemin du fichier de configuration
Dans le dossier « conf« , éditez le fichier MySQLConfigFile pour mettre le chemin du fichier de configuration que nous allons créer : /etc/pure-ftpd/db/pure-ftpd-mysql.conf

Créer le fichier de configuration MySQL
Maintenant nous allons créer le fichier de configuration /etc/pure-ftpd/db/pure-ftpd-mysql.conf qui sera utilisé pour indiquer les informations de connexion entre le serveur FTP et MySQL.

#Parametres de connexion a la base de donnee
MYSQLServer 127.0.0.1
MYSQLUser pureftpd
MYSQLPassword pwdftp
MYSQLDatabase pureftpd

#Parametres supplementaires
MYSQLPort 3306
MYSQLSocket /var/lib/mysql/mysql.sock

# Methode de cryptage du mot de passe
# Parametres possible : 'crypt', 'md5' ou 'cleartext' pour afficher le mot de passe en clair.
MYSQLCrypt cleartext

# Requetes SQL permettant a Pure-FTPd de trouver les donnees dans la base
MYSQLGetPW SELECT Password FROM users WHERE User="\L"
MYSQLGetUID SELECT Uid FROM users WHERE User="\L"
MYSQLGetGID SELECT Gid FROM users WHERE User="\L"
MYSQLGetDir SELECT Dir FROM users WHERE User="\L"
MySQLGetQTASZ SELECT QuotaSize FROM users WHERE User="\L"
MySQLGetRatioUL SELECT ULRatio FROM users WHERE User="\L"
MySQLGetRatioDL SELECT DLRatio FROM users WHERE User="\L"
MySQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE User="\L"
MySQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE User="\L"

Pour plus d’informations sur les différentes lignes et celle que je n’ai pas mise car je les considérais inutiles pour le cas présent, rendez-vous dans la doc de Pure-FTPd !

Démarrer votre serveur FTP

Pour démarrer votre serveur FTP, il vous suffira d’entrer les lignes suivante pour démarrer votre serveur en tâche de fond.

/usr/sbin/pure-ftpd-mysql -l mysql:/etc/pure-ftpd/db/pure-ftpd-mysql.conf &

Vous pouvez modifier le fichier /etc/init.d/pure-ftpd-mysql si vous souhaitez exécuter à chaque démarrage votre serveur avec MySQL.

En savoir plus

Comprendre la gestion des utilisateurs sous Linux : http://hawkcreation.com/2009/03/16/le-droit-selon-linux/
Utilisation du client FTP FileZilla : http://hawkcreation.com/2009/03/16/filezilla/
Documentation Ubuntu pour installer un serveur Pure-FTPd : http://doc.ubuntu-fr.org/pure-ftp

`
Share on Facebook
Categories: Tutoriels Tags: , ,

Installer le SDK de Qt

Pour les développeurs en herbes qui désireraient programmer des logiciels avec interface graphique, les choses se sont simplifié en C/C++ avec l’arrivé de Qt !

Le framework Qt permet la réalisation d’applications en C/C++ avec interface graphique et portable sur les trois plateformes. Cette librairie est passé sous licence LGPL depuis 2009 permettant la réalisation d’application propriétaire sans pour autant payer de droit à Nokia, société maintenant le projet à jour.

Téléchargement

Le SDK de Qt qui permet la réalisation d’applications utilisant cette librairie est téléchargeable depuis l’adresse suivante : http://qt.nokia.com/downloads
Une fois sur cette page, choisissez « go LGPL » pour prendre la version de Qt libre de droits et enfin choisissez la version du SDK correspondante à votre OS.

Installation et Compilation

Sous Windows
Une fois le .exe téléchargé, vous n’avez plus qu’à installer le paquet en l’exécutant.

Pour ce qui est de la compilation, vous devez utiliser soit le logiciel QtCreator ou alors, je vous invite à démarrer l’invité de commande pré-configuré de Qt. Via le menu démarrer, allez dans Qt puis démarrez « Qt Command Prompt« . les commandes sont

qmake -project
qmake
mingw32-make release

Pour mingw32-make vous pouvez mettre release pour que votre programme soit compilé en version distribuable. Sinon ne mettez pas de mot clé et dans ce cas votre programme sera compilé en mode de débogage ce qui permet de trouver plus facilement les problèmes mais dans ce cas il faudra utiliser le débogeur de QtCreator.

Sachant que les DLL qui vous seront demandé lors de l’exécution de votre programme et qu’il vous vaudra redistribuer sont disponible dans le dossier : …\Qt\2010.2\qt\bin. Les DLL présente dans \Qt\2010.2\bin vous génèreront des erreurs.

Sous Linux
Pour Linux, vous pouvez exécuter l’installation du SDK soit comme avec windows, téléchargez le binaire puis démarrez l’installation avec la commande ./qt-sdk-linux-x86-opensource-2010.02.bin en ayant préalablement donné les droits d’exécution via « chmod u+x qt-sdk-linux-x86-opensource-2010.02.bin« . Il vous faudra par contre installer probablement g++ et qt4-make pour ce faire entrez les commandes suivantes.

sudo apt-get install libqt4-dev qt4-qmake
sudo apt-get install g++

L’autre méthode consiste à laisser Linux installer tout en entrant simplement la commande « sudo apt-get install libqt4-dev« .

Une fois cela fait, vous pouvez compiler vos programmes à partir d’un terminal en faisant comme ceci :

cd chemind/de/votre/programme
qmake -projet
qmake
make

L’exécutable de votre programme se trouvera dans le dossier de votre programme.

En savoir plus

Site officiel de Qt : http://qt.nokia.com/
Documentation officielle de Qt : http://doc.trolltech.com

Share on Facebook