Le blog de Jean David TECHER, un Réunionnais à Saint-Priest/Lyon

Aller au contenu | Aller au menu | Aller à la recherche


< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 >

dimanche 25 avril 2010

Perl DBD::Oracle et le client Oracle 8.1.7

DB::Oracle 1.24 incompatible avec le client 8.1.7

La toute dernière version de DBD Oracle est la 1.24. Elle ne peut pas être compilée avec le client 8.1.7. En effet, la tentative de compilation aboutit à

....
In file included from Oracle.xs:1:
Oracle.h:135: error: expected declaration specifiers or ‘...’ before ‘OCIXMLType’
Oracle.c: In function ‘XS_DBD__Oracle__db_ora_lob_append’:
Oracle.xs:358: warning: unused variable ‘startp’
Oracle.c: In function ‘boot_DBD__Oracle’:
Oracle.c:1862: error: ‘OCI_FETCH_CURRENT’ undeclared (first use in this function)
Oracle.c:1862: error: (Each undeclared identifier is reported only once
Oracle.c:1862: error: for each function it appears in.)
make: *** [Oracle.o] Error 1
Il s'avère que 'OCI_FETCH_CURRENT' n'est pas défini dans le fichier oci.h de la 8.1.7. La seule solution est de prendre une version compatible: DBD::Oracle 1.20

Compilation/installation de DBD::Oracle 1.20

Si les variables d'environnement pour Oracle et LD_LIBRAY_PATH et PATH sont à jour

root@monroe:/tmp/DBD-Oracle-1.20# env|grep -E '(ORA|PATH)'
LD_LIBRARY_PATH=/u01/app/oracle/product/8.1.7/lib:/lib:/usr/lib:/usr/local/lib:
ORACLE_BASE=/u01/app/oracle
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
ORA_NLS33=/u01/app/oracle/product/8.1.7/ocommon/nls/admin/data
ORACLE_HOME=/u01/app/oracle/product/8.1.7
alors on peut procéder à la compilation/installation
 wget http://ftp.u-strasbg.fr/CPAN/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.20.tar.gz -O - |tar xvzf -
 cd DBD-Oracle-1.20/
 perl Makefile.PL && make && make install

Test de compilation

J'ai récupéré un script téléchargeable - http://duberga.net/dbd_oracle_instantclient_linux/test_dbd_oracle.pl qu'il suffit ensuite d'adapter à ses propres besoins

samedi 24 avril 2010

Voir les 4 saisons de Heroes en streaming

Depuis quelques semaines, j'ai commencé à regarder la saison 2 de Heroes qui passait sur France 4 (quand il n'y a rien d'intéressant à la TV, on fait avec). Du coup, je me suis pris au jeu de cette saison (bon c'est vrai, j'ai trois bonnes saisons de retard ) et attaché à quelques personnages vraiment noirs et sans scrupul. Il faut l'avouer certains ne sont pas des enfants de coeur (...) notamment Sylar (hé hé)

La saison 2 ayant pris fin cette semaine, il n'était donc pas question d'attendre le mois de septembre pour voir la saison 3.

Un bon site pour voir les saisons http://heroesstreaming.110mb.com/

Hcrond: où comment avoir ses jobs de cron dans une table MySQL - 1ère partie

C'est en surfant sur http://sf.net que j'ai trouvé ce petit projet...

site du projet: http://sourceforge.net/projects/hcrond/

Le projet n'est pas très abouti car il n'y a pas d'interface Web pour gérer la table MySQL mais il reste toutefois prometteur.

Pour l'installer

apt-get install libmysqlclient15-dev libdaemon-dev
tar xvzf hcrond-0.3.2.tar.gz
cd hcrond-0.3.2
make && make install
Dans un autre billet, j'exposerais les résultats de mes tests.

Jordan Carver Kiny

1. Download the images

We can download image from http://www.hottystop.com/jordan-carver-kinky/
mkdir jordan-carver-kinky 
cd jordan-carver-kinky/
seq 1 12|xargs -i wget -q http://www.hottystop.com/jordan-carver-kinky/{}.jpg

2. Overview

If you have imagemagick install, we can use montage
montage $(seq 1 12|xargs -i echo "{}.jpg " |tr -d "\n") -geometry 134.73x201.86 -tile 4x3 jordan-carver-kinky.jpg
We have the following image

3. Flash Slide Show

3.1 Using php and ming

Very easy :)

If you have Php 5 built with ming, you can use the following class http://www.davidgis.fr/download/class.flashslideshow.php.txt.

First we need to reduce the size of images
for((i=1;i<=12;i++));do convert $i.jpg -resize 320x480 $i.jpg;done
Then we use the following script
<?php
include('class.flashslideshow.php');

$movie = new flashSlideShow(320,480, 2, '#FFFFFF');

$myfile = array();
for($i=1;$i<=12;$i++){$myfile[$i]=$i.".jpg";}
$movie->addImages($myfile);

$movie->save('jordan-carver-kinky.swf');
?>

3.2 Using Ffmpeg/Vhook

If you have ffmpeg installe like me with an old version supporting vhook, you can do
seq 1 12|xargs -i /opt/multimedia/bin/ffmpeg -y -r 1 -f image2 -i {}.jpg -vhook \
'/opt/multimedia/lib/vhook/drawtext.so -f /usr/share/fonts/truetype \
/ttf-bitstream-vera/VeraBd.ttf -c #FFFFFF -s 50 -x W/2 -y H/2 -t  jjordan-carver-kinky-{}.jpg' {}.tmp.jpg;

 /opt/multimedia/bin/ffmpeg -y -r 1 -f image2 -i %d.tmp.jpg jordan-carver-kinky.swf