dimanche 20 décembre 2009

Empecher la mise à jour d'un package

Si vous voulez conserver la version d' un package et que celui-ci ne soit pas mis à jour, il vous suffit de modifier le fichier /etc/portage/package.mask.Si ce fichier n'existe pas, il suffit de le créer.
Dans ce fichier, il vous suffit d'ajouter le package qui ne doit pas être mis à jour.

Exemple :


vi /etc/portage/package.mask


>x11-drivers/nvidia-drivers-180.60


Ainsi, lorsque vous ferez emerge -p world, le package apparaîtra comme ceci :
[ebuild R ] x11-drivers/nvidia-drivers-180.60
Ce package ne pourra donc plus être mis à jour.

lundi 14 décembre 2009

Installation de la commande locate

Pour installer locate sur Gentoo : emerge sys-apps/mlocate
Ensuite, il faut faire updatedb

samedi 12 décembre 2009

KDE 4 : configuration du correcteur orthographique Spell Checker

Avc KDE, vous pouvez configurer le correcteur orthographique pour toutes les applications KDE. (exemple dans Kmail).Pour cela, il faut aller dans System Settings -> Region & Language :


Il est alors possible de configurer le langage et ajouter vos propres mots pour qu'il ne soit plus marquer comme fautes d'orthographes (java dans l'exemple ci-dessus).

dimanche 6 décembre 2009

Asus P5Q Pro : configuration du son

Afin d'avoir du son avec ma carte mère Asus P5Q Pro, j'ai effectué la configuration suivante

1) Configuration du kernel :

Device Drivers
--> Sound card support
--> Advanced Linux sound architecture
--> PCI sound device (*) Intel HD audio


2) Ajout du groupe audio : usermod -G audio monUtilisateur

3) Modification du fichier /etc/modprobe.d/alsa.conf.
J'ai ajouté la ligne suivante : options snd-hda-intel

4) J'ai ensuite re-démarrer et j'ai vu l'icône d'audio dans la barre de tâche.
J'ai double clicker dessus et enlever mute pour Front :

definition : dead key et compose key

Lorsque vous saisissez deux lettres au clavier, la première lettre est omise.On l'appelle dead key.Le résultat des deux est appelé compose key.

Exemple :

Pour un clavier français : ^ puis e donne ê
Dans cette exemple, ^ est une dead key et ê est une compose key.


Remarque : ces combinaisons varient d'un clavier à l'autre

Combinaisons
DeadKeyWikipedia
ComposeKeyWikipedia

mardi 1 décembre 2009

KDE : Configuration du symbol euro pour le clavier




Pour ajouter le symbol Euro dans KDE, je suis allé dans :
Disposition du clavier-> Advanced -> Adding EuroSign to certain key et j'ai coché E (Clic pour agrandir) :





Ensuite, il faut enregistrer les modifcations.

Si vous ouvrez kwrite et que vous saisissez Kwrite : ALTGR E, cela devrait fonctionner.
Dans Konsole, il est possible que vous ayez un caractère bizarre.Cela est du à votre encodage. Pour le régler, il suffit de faire view -> Character Encoding -> Western European -> Iso 8859-15.



Pour information, j'ai le clavier suivant : logitech 350 internet.

lundi 23 novembre 2009

Installation de Go sous Gentoo

L'installation de Go sous Gentoo ne m'a pas posé de problème particulier.Néanmoins, Voici quelques étapes qui vous éviteront de chercher :

- Ajout des variables dans le bashrc de l'utilisateur :

export GOBIN=$HOME/go/bin/
export PATH=$GOBIN:$HOME/google/depot_tools:"$PATH"

#Go
export GOROOT=$HOME/go
export GOARCH=386
export GOOS=linux

Remarque : J'ai crée le répertoire go et le sous répertoire bin.

- source ~/etc/bashrc
- Pour avoir l'utilitaire hg et donc récupérer les sources : emerge dev-util/mercurial




vendredi 20 novembre 2009

Chrome OS vs Linux,Windows,Mac ...

Google vient d'annoncer la sortie de son nouvel OS qui est basé entièrement sur internet.
Cette OS est révolutionnaire car il est basé entièrement sur internet.Les applications aussi.
Il n'y a donc plus d'installation,compilation ...On apprend aussi que Microsoft va sortir Midori (même concept).

Que va faire la communauté Linux ? Doit-elle prendre la même orientation ?

Les OS traditionnelles vont-ils disparaître ?

Comment customiser un OS entièrement basé sur internet ?

Quel est l'avenir de la gentoo ?

samedi 14 novembre 2009

chroot : Entrez dans un nouvel environnement

chroot est une commande des systèmes d'exploitation UNIX permettant de changer le répertoire racine d'un processus de la machine hôte.


Il vous permet de rentrer en mode console dans un nouvel environnement.Ainsi, dans une fenêtre de terminal, vous pouvez avoir un autre système.
Pour ma part, je lance ma partition stable gentoo puis dans une fenêtre de terminal, je monte la partition expérimentale et je fais un chroot.Ainsi, je me retrouve à la racine de mon environnement expérimental : (chroot) localhost / #


Ainsi, je peux effectuer les diverses mise à jour et compilation sans redémarrer.

Voici la procédure à réaliser pour entrer dans un nouvel environnement :


1) Montage de la partition expérimentale dans /mnt/gentoo :

mount /dev/sda6 /mnt/gentoo

2) Monter /proc et /dev


Montez le système de fichiers /proc dans /mnt/gentoo/proc permet à l'installation d'utiliser les informations fournies par le noyau, même lorsqu'on se trouve dans l'environnement chroot ainsi que /dev.

mount -t proc none /mnt/gentoo/proc

mount -o bind /dev /mnt/gentoo/dev


3) Entrer dans un nouvel environnement :


L'entrée se fait en trois étapes. D'abord, on change la racine de / (sur l'environnement d'installation) en /mnt/gentoo (sur vos partitions) en utilisant chroot. Ensuite, on crée un nouvel environnement en utilisant env-update dont l'effet est essentiellement de créer les variables d'environnement. Finalement, ces variables sont chargées en mémoire en utilisant source.


chroot /mnt/gentoo /bin/bash

env-update
source /etc/profile

export PS1="(chroot) $PS1"

mercredi 11 novembre 2009

KDE 4.3.3 : installation réussit !

J'ai réussit mon installation avec succès !!!!!!
Pour résoudre mon problème de clavier, j'ai regéné mon fichier xorg.conf anec nvidia-xconfig.
Je vais pouvoir me lancer dans la configuration de KDE ...

jeudi 5 novembre 2009

Fin de KDE 3 sur Gentoo

La nouvelle est tombée aujourd'hui.Kde 3 disparait pour laisser place à Kde 4.
J'ai testé hier Kde 4.3 et j'avais des problèmes avec mon clavier.
J'ai vu qu'il y avait beaucoup de correctif ce matin donc peut être mon problème
sera résolu ce soir ...
Plus d'info sur http://www.gentoo.org/

mercredi 4 novembre 2009

Test Gentoo kde 4.3

J'ai testé Kde 4.3 sur ma partition expérimentale.
L'installation s'est déroulé sans problème de compilation.J'ai pu lancer kde sans problème.

Par contre, j'ai des bugs très génants au niveau du clavier.( Exemple : la saisie d'un a se repète plusieurs fois dans la console.)

En conclusion, il faut attendre encore un peu avant de l 'installer.

mardi 27 octobre 2009

Enlever xdm au démarrage

Comment enlever xdm au démarrage ?

J'ai tester la nouvelle version de xorg et avant que cela fonctionne j'ai rebooter à plusieurs reprises.

Le problème c'est qu'au reboot je n'avais plus ni souris ni clavier.Le moyen le plus simple que j'ai
trouvé c'est de dé-installer xdm avec
emerge -C xdm.

Remarque :
On peut démarrer Grub en mode single pour avoir la ligne de commande.Il suffit de rajouter single à la fin.

vendredi 9 octobre 2009

Comment résoudre : All ebuilds that could satisfy ... have been masked.

Problème

Lors d'un update, vous rencontrez des warnings similaires à celui-ci :

!!! All ebuilds that could satisfy "x11-wm/compiz" have been masked.

!!! One of the following masked packages is required to complete your request:

- x11-wm/compiz-0.8.2-r3 (masked by: ~x86 keyword)


Solution


Il suffit de rajouter le fichier dans le fichier package.keywords.

Vous avez compilez un fichier en mode masked à la main et lors de l'update il trouve un fichier qui
est masqué
et comme il n'est pas de le fichier package.keywords, il ne peut pas trouvé les mise à jour d'ou le warning.

jeudi 8 octobre 2009

Hudson : Failed to create /dev/null/.m2

Problème :

Quant on lance un build Hudson, on a l'erreur suivante : Failed to create /dev/null/.m2

Solution :

Rajouter MAVEN_HOME identique à HUDSON_HOME à la variable JAVA_OPTS dans le startup script de Tomcat :

vi /etc/init.d/tomcat-6

# Activate Logging

if [ -r "${CATALINA_HOME}"/bin/tomcat-juli.jar ]; then

JAVA_OPTS="${JAVA_OPTS}
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \

-Djava.util.logging.config.file=${CATALINA_BASE}/conf/logging.properties"

fi

JAVA_OPTS="$JAVA_OPTS -DHUDSON_HOME=/home/hudson
-DMAVEN_HOME=/home/hudson"

mardi 6 octobre 2009

Unable to create the home directory '/dev/null/.hudson'


Problème :


En déployant hudson.war dans Tomcat 6, vous voyez l'erreur suivante sur votre navigateur :

Unable to create the home directory '/dev/null/.hudson'. This is most likely a permission problem.

To change the home directory, use HUDSON_HOME environment variable or set the
HUDSON_HOME system property. See Container-specific documentation for more details of how to do this.


Solution :


- Création du répertoire home de Hudson.


mkdir -p /home/hudson

chown -R tomcat:tomcat /home/hudson/


ls -al /home/hudson/

drwxr-xr-x 6 tomcat tomcat 4096 Oct 3 18:45 hudson


Remarque : J'ai constaté que pour que le changement de droit soit pris en compte, il fallait redémarrer Tomcat.

- Ajout de la home de HUDSON dans le startup script de Tomcat :


vi /etc/init.d/tomcat-6


Recherchez JAVA_OPTS
et ajouter quelques lignes après :
JAVA_OPTS="$JAVA_OPTS -DHUDSON_HOME=/home/hudson"

Exemple :

...

# Activate Logging

if [ -r "${CATALINA_HOME}"/bin/tomcat-juli.jar ]; then

JAVA_OPTS="${JAVA_OPTS} -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \

-Djava.util.logging.config.file=${CATALINA_BASE}/conf/logging.properties"

fi

JAVA_OPTS="$JAVA_OPTS -DHUDSON_HOME=/home/hudson"

...


- Modifiez le fichier des utilisateurs de Tomcat (
vi /etc/tomcat-6/tomcat-users.xml )
cf AdministrationHudson

- Redémarrer Tomcat.

samedi 3 octobre 2009

Erreur à l'installation de Tomcat 6 sous Gentoo : ImportError


L'installation de Tomcat 6 sous Gentoo est très simple : emerge tomcat.

J'ai rencontré une erreur de compilation (voir ci-dessous).
Pour la résoudre,j'ai fait ce qui était dit dans le message
emerge -l dev-python/pyxml

>>> '/var/tmp/portage/www-servers/tomcat-6.0.20/temp/build.log'

* Messages for package www-servers/tomcat-6.0.20:

* If the output above contains:

* ImportError:

* /usr/lib/python2.4/site-packages/_xmlplus/parsers/pyexpat.so:

* undefined symbol: PyUnicodeUCS2_DecodeUTF8

* Try re-emerging dev-python/pyxml

*

* ERROR: www-servers/tomcat-6.0.20 failed.

* Call stack:

* ebuild.sh, line 49: Called src_configure

* environment, line 4310: Called java-ant-2_src_configure

* environment, line 2127: Called java-ant_bsfix

* environment, line 2149: Called java-ant_bsfix_files './build.xml' './res/deploye
/build.xml' './webapps/ROOT/build.xml' './test/build.xml'

* environment, line 2244: Called _bsfix_die 'xml-rewrite2 failed: ./test/build.xml'

* environment, line 306: Called die

* The specific snippet of code:

* die ${1} " Look at the eerror message above";

* The die message:

* xml-rewrite2 failed: ./test/build.xml Look at the eerror message above

*

* If you need support, post the topmost build error, and the call stack if relevant.

* A complete build log is located at '/var/tmp/portage/www-servers/tomcat-6.0.20/temp/build.log'.

* The ebuild environment file is located at '/var/tmp/portage/www-servers/tomcat-6.0.2
/temp/environment'.

vendredi 2 octobre 2009

Installation KDE4 : répertoire package.keywords

Lors de l'installation de KDE4, je suis tombé sur un problème tout bête.
Le manuel disait : cd /etc/portage/package.keywords : Manuel KDE4
Hors sur mon poste, il n'y avait qu'un fichier package.keywords
En fait j'ai trouvé la solution non sans mal sur un forum :


/etc/portage/

Any file in this directory that begins with "package." can be more than just a flat file. If it is a
directory, then all the files in that directory will be summed together as if it were a single file.


On peut donc mettre soit un fichier soit un répertoire contenant plusieurs fichiers à condition que ce répertoire commence par
package. (ex package.keywords).Ainsi tous les fichiers à l'intérieur seront fusionnés.

jeudi 1 octobre 2009

Installation de Maven sous Gentoo

Il faut savoir qu'il existe des ebuild pour maven.Pour les trouver, il suffit de faire :
eix maven
Pour installer Maven : emerge dev-java/maven-bin

Remarque : Si vous n'avez pas la commande eix, allez voir mon article sur eix. Vous allez gagner en rapidité !

mercredi 30 septembre 2009

compilation virtualbox failed

Problème :

La compilation de virtual-box échoue :

...
>>> Failed to emerge app-emulation/virtualbox-modules-1.6.6-r1, Log file:

>>> '/var/tmp/portage/app-emulation/virtualbox-modules-1.6.6-r1/temp/build.log'

* Messages for package app-emulation/virtualbox-modules-1.6.6-r1:

*
* ERROR: app-emulation/virtualbox-modules-1.6.6-r1 failed.
* Call stack:
* ebuild.sh, line 49: Called src_compile
* environment, line 3365: Called linux-mod_src_compile
* environment, line 2605: Called die
* The specific snippet of code:
* eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
* The die message:
* Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERN_DIR=/usr/src/linux KERNOUT=/usr/src/linux all
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/app-emulation/virtualbox-modules-1.6.6-r1/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/app-emulation/virtualbox-modules-1.6.6-r1/temp/environment'.
...


Solution :

La version stable de virtualbox est trop vieille pour ce noyau.Il faut donc récupérer les packets en x86 de virtualbox.
Pour cela, ajoutez dans /etc/portage/package.keywords :

app-emulation/virtualbox-ose ~x86
app-emulation/virtualbox-modules ~x86
app-emulation/virtualbox-ose-additions ~x86
dev-util/kbuild ~x86


Puis emerge app-emulation/virtualbox-ose

lundi 28 septembre 2009

Failed to emerge dev-java/ant-core-1.7.1-r4

Problème

Lorsque je mets à jour ma gentoo, j'ai l'erreur suivante :
Failed to emerge dev-java/ant-core-1.7.1-r4
Le problème vient de java_config qui produit l'erreur suivante :
Traceback (most recent call last):
File "/usr/bin/java-config-2", line 8, in
from java_config_2 import __version__
ImportError: No module named java_config_2

Solution

Il faut re-emerge java-config après une mise à jour.
=> Solution : emerge -l java-config




Exemple d'erreur de compilation :
Traceback (most recent call last):
File "/usr/bin/java-config-2", line 8, in
from java_config_2 import __version__
ImportError: No module named java_config_2
*
* Can't run java-config --help
* Have you upgraded python recently but haven't
* run python-updater yet?
*
* ERROR: dev-java/ant-core-1.7.1-r4 failed.
* Call stack:
* ebuild.sh, line 49: Called pkg_setup
* ebuild.sh, line 1273: Called java-pkg-2_pkg_setup
* java-pkg-2.eclass, line 61: Called java-pkg_init
* java-utils-2.eclass, line 2050: Called die
* The specific snippet of code:
* die "Can't run java-config --help"
* The die message:
* Can't run java-config --help
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/dev-java/ant-core-1.7.1-r4/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-java/ant-core-1.7.1-r4/temp/die.env'.
*
!!! When you file a bug report, please include the following information:
GENTOO_VM= CLASSPATH="." JAVA_HOME=""
JAVACFLAGS="" COMPILER=""
and of course, the output of emerge --info

>>> Failed to emerge dev-java/ant-core-1.7.1-r4, Log file:

>>> '/var/tmp/portage/dev-java/ant-core-1.7.1-r4/temp/build.log'

* Messages for package dev-java/ant-core-1.7.1-r4:

*
* Can't run java-config --help
* Have you upgraded python recently but haven't
* run python-updater yet?
*
* ERROR: dev-java/ant-core-1.7.1-r4 failed.
* Call stack:
* ebuild.sh, line 49: Called pkg_setup
* ebuild.sh, line 1273: Called java-pkg-2_pkg_setup
* java-pkg-2.eclass, line 61: Called java-pkg_init
* java-utils-2.eclass, line 2050: Called die
* The specific snippet of code:
* die "Can't run java-config --help"
* The die message:
* Can't run java-config --help
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/dev-java/ant-core-1.7.1-r4/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-java/ant-core-1.7.1-r4/temp/die.env'.

vendredi 25 septembre 2009

Recherche rapide d'un ebuild : eix

Problème :

Il existe plusieurs manière de rechercher un paquet.La plus connu est : emerge -s monpaquet
Existe t-il un outil plus rapide ?


Solution :

Il existe un outil plus rapide pour rechercher si votre paquet existe sur l'arbre portage
ou sur des arbres non officiel : eix

0) Installation
       $ echo app-portage/eix >> /etc/portage/package.keywords
Puis installez le paquet :
$ emerge -av app-portage/eix


1) Mettre à jour eix (à executer après une mise à jour de votre système : emerge --sync) : update-eix

2) Recherche du packet (mediawiki dans notre cas) : eix -s mediawiki


Plus d'informations sur gentoofr

lundi 21 septembre 2009

Gentoo wiki

Vous recherchez de l'aide sur l'installation et la configuration de votre Gentoo ?
Allez faire un tour du côté du Wiki Gentoo

samedi 19 septembre 2009

equery

Définition : Equery est un outil d'interrogation sur les packages. Il provient du package gentoolkit.

Installation :

# emerge gentoolkit

Utilisation :

Voici des exemples d'utilisation courantes de la commandes equery :

- Lister tous les packages installés sur votre système : equery l

$ equery l
ou
$ equery list


L'affichage produit par equery est de la forme suivante : [---] [--] package.

Le premier groupe peut avoir les valeurs suivantes ( [---] ) :
I : package installés
P : Portage
O : Overlay

Le deuxième groupe concerne les masques ( [--] ):

~ : par mot clés
- : par achitecture
M : masqué en dur


Exemple :
$ equery l
[ Searching for all packages in all categories among: ]
* installed packages
[I--] [ ] app-admin/eselect-1.1.3 (0)

[I--] [M ] app-admin/eselect-ctags-1.5 (0)

...


- Lister les dépendances d'un paquet : equery depends [packet]

$ equery depends vim
[ Searching for packages depending on vim... ]

app-vim/gentoo-syntax-20070506 (>=app-editors/vim-7.0)

virtual/editor-0 (app-editors/vim)



- Trouver à quel paquet appartient ce fichier. equery b [fichier]

# equery belongs /usr/bin/audacious
ou
# equery b /usr/bin/audacious



Pour de plus amples information sur cette commande, vous pouvez consulter la documentation
officiel gentoo : gentoolkit

samedi 12 septembre 2009

Optimisation gentoo : prelink

Definition :

prelink est un executable qui modifie les fichiers binaires pour intégrer les dépendances externes ("shared libraries") dans celui-ci. prelink vous permet d'optimiser le temps de démarrage de vos executables.

Remarque : Le temps gagné est impressionant.


Installation :

emerge prelink
env-update

Utilisation :

prelink -amR

Il faut executer cette commande à chaque fois que l'on met son système à jour car de nouvelles librairies sont mis à jour et doivent être intégré.


Exemple Utilisation :

# prelink -amR
prelink: /usr/lib/xulrunner/xpcshell: Could not find one of the dependencies
prelink: /usr/lib/xulrunner/TestGtkEmbed: Could not find one of the dependencies
prelink: /usr/lib/xulrunner/regxpcom: Could not find one of the dependencies
prelink: /usr/lib/xulrunner/mozilla-xremote-client: Could not find one of the dependencies
prelink: /usr/lib/xulrunner/xulrunner-stub: Could not find one of the dependencies
prelink: /usr/lib/xulrunner/xulrunner-bin: Could not find one of the dependencies
prelink: /usr/bin/qtdemo: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/kpendulum.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/bin/tcdecode: Cannot prelink against non-PIC shared library /usr/lib/libavcodec.so.52
prelink: /usr/bin/compiz: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/bin/ffmpeg: Cannot prelink against non-PIC shared library /usr/lib/libavutil.so.49
prelink: /usr/kde/3.5/bin/kwave.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/kgravity.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/kflux.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/bin/glxgears: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGLcore.so.1
prelink: /usr/kde/3.5/bin/krotation.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/i686-pc-linux-gnu/gcc-bin/4.1.2/i686-pc-linux-gnu-c++ is no longer hardlink to /usr/i686-pc-linux-gnu/gcc-bin/4.1.2/i686-pc-linux-gnu-g++
prelink: /usr/kde/3.5/bin/kspace.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/ksolarwinds.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/keuphoria.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/bin/glxinfo: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/kdesktop_lock: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1
prelink: /usr/kde/3.5/bin/kfountain.kss: Cannot prelink against non-PIC shared library //usr//lib/opengl/nvidia/lib/libGL.so.1

Les différents messages affichés sont des warning et rien de plus.La documentation décrit ces messages http://www.gentoo.org/doc/fr/prelink-howto.xml


REMARQUE :

- Cette commande n'est pas dangereuse cependant, il faut vérifier votre espace disque avant d'utiliser cette commande avec df- h car sinon des executables risques d'être tronqués.

mercredi 2 septembre 2009

Comment mettre à jour sa Gentoo ?

La mise à jour de la gentoo doit se faire régulièrement.Cela en consiste en quelques étapes:

1) Mettre à jour l'arbre portage :

$ emerge --sync

2) Mettre le système à jour

$ emerge -p system

$ emerge -u system

3) Mettre les logiciels à jour.


$ emerge -p world
$ emerge -u world


4) Optimisation (facultatif mais appréciable !):

Pour optimiser le temps de démarrage de vos exécutables, vous devez executer cette commande après chaque démarrage :
$ prelink -amR
Il est possible que cette commande ne soit pas disponible sur votre système.Il vous faudra alors l'installer.Allez voir ma documentation pour plus de details : prelink

5) Optimisation de la recherche(facultatif mais appréciable !) :

update-eix
Vous devez installer eix.

Remarques importantes :
- Il est possible qu'on vous invite à effectuer une mise à jour des fichiers de configuration à l'aide de etc-update.Pour chaque modification, il sera possible d'écraser la configuration, de merger ou de garder l'ancienne.Si vous débutez, je vous conseille d'éviter cette commande du moins avant d'avoir effectuer une sauvegarde.
- L'option -p permet de savoir les paquets qui vont être mis à jour.

samedi 29 août 2009

eselect

Dans cet article, je vais presenter la commande eselect.

Definition : eselect est un outil de configuration et d'administartion gentoo.Cette commande peut être utilise par exemple pour switcher de noyau ou de version java.

Installation : Il est probable que eselect ne soit pas installé.Pour l'installer :
$ echo app-admin/eselect ~x86 >> /etc/portage/package.keywords
$ emerge -av app-admin/eselect
Utilisation courante : Lister les différentes selections et en choisir une.
eselect list

Exemple:
# eselect java-vm list
Available Java Virtual Machines:
[1] sun-jdk-1.5
[2] sun-jdk-1.6 system-vm

# eselect kernel list
Available kernel symlink targets:
[1] linux-2.6.26-gentoo-r3
[2] linux-2.6.27-gentoo-r4
[3] linux-2.6.27-gentoo-r5
[4] linux-2.6.27-gentoo-r7
[5] linux-2.6.28-gentoo
[6] linux-2.6.28-gentoo-r1
[7] linux-2.6.29-gentoo-r2
[8] linux-2.6.29-gentoo-r4
[9] linux-2.6.30-gentoo-r1 *

Effectuer un choix :

# eselect kernel set 1
# eselect kernel set linux-2.6.27-gentoo-r7

Activer une fonction pour un module :

On peut par exemple activer vim pour la completion bash.

Exemple :
$ eselect bashcomp enable vim

http://www.gentoo.org/proj/fr/eselect/user-guide.xml
http://www.gentoofr.org/Introduction-a-eselect.html

dimanche 16 août 2009

emerge x11-drivers/nvidia-drivers compilation failed Could not find a usable .config

Problème :
Lors de la mise à jour où l'installation du package x11-drivers/nvidia-drivers, la compilation échoue.
Exemple :
* Could not find a usable .config in the kernel source directory.
* Please ensure that /usr/src/linux points to a configured set of Linux sources.
* If you are using KBUILD_OUTPUT, please set the environment var so that
* it points to the necessary object directory so that it might find .config.
*
* ERROR: x11-drivers/nvidia-drivers-185.18.31 failed.

Solution :

Vous ne pointez pas sur le bon noyau.Cela se produit lors de la mise à jour des sources du noyau.En effet, le lien symbolique /usr/src/linux est mise à jour lors d'un update.
Si vous faites:
ls -al /usr/src/
lrwxrwxrwx 1 root root 22 Aug 16 16:30 linux -> linux-2.6.30-gentoo-r1
drwxr-xr-x 22 root root 4096 Nov 29 2008 linux-2.6.26-gentoo-r3
drwxr-xr-x 23 root root 4096 Dec 6 2008 linux-2.6.27-gentoo-r4
drwxr-xr-x 23 root root 4096 Aug 9 13:36 linux-2.6.30-gentoo-r1

Vous constatez que le lien symbolique pointe vers les dernières sources mise à jour.
Hors, vous n'avez surement pas recompiler les sources de ce noyau et donc le répertoire de ce noyau ne contient pas de .config.
Donc il y a 2 solutions :
- Recompilez les dernières sources du noyau.
- Pointez sur votre noyau.

Pour sélectionner votre noyau :
# eselect kernel list
Available kernel symlink targets:
[1] linux-2.6.26-gentoo-r3
[2] linux-2.6.27-gentoo-r4
[3] linux-2.6.27-gentoo-r5
[4] linux-2.6.27-gentoo-r7
[5] linux-2.6.28-gentoo
[6] linux-2.6.28-gentoo-r1
[7] linux-2.6.29-gentoo-r2
[8] linux-2.6.29-gentoo-r4
[9] linux-2.6.30-gentoo-r1 *
[10] linux-2.6.30-gentoo-r2

Ensuite, vous pouvez sélectionner le noyau qui contient le .config.
# eselect kernel set 9

Si vous ré-executez la commande eselect kernel list, il mettra une étoile
à coté du noyau sélectionné.
Ensuite, vous pouvez faire l'update du package :
#emerge -u x11-drivers/nvidia-drivers

jeudi 13 août 2009

shell lire un fichier de propriété



Problème

Vous voulez lire en shell un fichier de propriété similaire à celui-ci :

vi test.properties

VAR1=zest
VAR2=blop
VAR3=toto
MAIL=test@ty
ALIAS=monalias

Vous voulez aussi que les valeurs lues soient exploitables.


Solution

La solution consiste à lire ligne par ligne le fichier et à faire un export de
cette ligne. On peut aussi extraire ce qui est avant le = (Si on veut utiliser le nom de la variable)
L'exemple suivant utilise ksh mais on peut utiliser le shell qu'on veut. Cette exemple définit une méthode readFileProperties qui pour l'instant ne prend pas de paramêtre étant donné que c'est juste une méthode de test.


#!/bin/ksh
#-----------------------------
------------------------------
# Methode qui lit les proprietes d un fichier de properties.
#-----------------------------------------------------------

readFileProperties()
{
FILE="test.properties"

test -f $FILE
if [ $? -ne 0 ];then
echo "Fichier de propriete inexistant:$FILE"
exit 1
fi

echo "Lecture..."
while read ligne
do
if echo "$ligne" |grep "=" 1>/dev/null
then
VARNAME=`echo $ligne |cut -f1 -d=`
#echo $VARNAME
VARVALUE=`grep "^$VARNAME=" $FILE`
export $VARVALUE
#echo "export $VARVALUE"
fi
done < $FILE echo "VAR1:$VAR1" echo "VAR2:$VAR2" echo "VAR3:$VAR3" echo "ALIAS:$ALIAS" echo "MAIL:$MAIL" } readFileProperties

dimanche 9 août 2009

cannot set LC_CTYPE locale (gentoo)

Problème :

cannot set LC_CTYPE locale
environment variable LANG is fr_FR.utf8@euro
please check that your locale name is correct

Solution :

Le problème vient du fait que LC_CTYPE n'a pas été reconnu.
Il faut s'assurer que la valeur est bien écrite.
Pour cela : locale -a

Exemple :
$ locale -a
C

POSIX
fr_FR fr_FR.iso88591
fr_FR.iso885915@euro
fr_FR@euro


Ensuite, il suffit de vérifier dans la conf, la valeur inscrite :
Sous gentoo : vi /etc/env.d/02locale

Exemple :
vi /etc/env.d/02locale

LANG="fr_FR.iso885915@euro"
LC_COLLATE="C"

=> Vous devez avoir une variable LANG initialisée avec une des valeurs affichées
par la commande : locale -a

Vous pouvez également laisser à chaque utilisateur linux, le soin de configurer
ses variables :

vi ~/.bashrc

Exemple :
vi ~/.bashrc
export LANG="fr_FR.iso885915@euro"
export LC_ALL=C

svn: warning: cannot set LC_CTYPE locale

Une petite astuce que j'ai trouvé sur le web : (http://armenianeagle.com/2008/03/18/svn-warning-cannot-set-lc_ctype-locale-solution/) et qui a permis de résoudre mon problème :

Problème :

Si lorsque vous faites : svn status
Et que vous avez le message suivant :

svn: warning: cannot set LC_CTYPE locale
svn: warning: environment variable LANG is fr_FR.utf8@euro
svn: warning: please check that your locale name is correct
svn: warning: '.' is not a working copy

Solution :

export LC_ALL=C

Regardez aussi le post que j'ai fait LC_CTYPE locale


PoweredByGento