création des librairies dynamiques et des fichiers d'entêtes | postgis.fr
création des librairies dynamiques et des fichiers d'entêtes | postgis.fr
postgis.fr
le site de la communauté des utilisateurs de postgis francophones.
accueil
blogs
linux
windows
manuels / livres
forums
accueil
création des librairies dynamiques et des fichiers d'entêtes
maintenant que vous avez compiler les sources du projet jts, vous devez créer des librairies dynamiques c. en effet vous savez sans doute que le code source de postgis est en c et non en java, un convertion est donc nécessaire. heureusement gnu met à disposition, avec son compilateur gcc, un compilateur java permettant une telle convertion. vous verrez de plus qu'il est aussi possible de générer des fichiers d'entête avec la commande gcjh.
pour créer ces librairies dynamique ainsi que les fichiers d'entêtes requis lors de la compilation de postgis que nous verrons dans la section suivante, je vous invite à suivre les quelques instructions ci-dessous :
rendez vous dans le répertoire des sources du projet jts et créez le répertoire où seront stoquées les classes java compilées :
machine ~ # cd jts-1.7.2
machine jts-1.7.2 # mkdir classes
compilation de l'ensemble des classes java avec gcj :
machine jts-1.7.2 # gcj -c -d classes -classpath jts.jar $(find src/com/vividsolutions/jts -name '*.java')
définition de la variable d'environnement jtsclasses qui liste l'ensemble des classes requisent lors de la compimlation de postgis :
machine jts-1.7.2 # export jtsclasses="com.vividsolutions.jts.geom.geometry \
com.vividsolutions.jts.geom.point \
com.vividsolutions.jts.geom.multipoint \
com.vividsolutions.jts.geom.linestring \
com.vividsolutions.jts.geom.linearring \
com.vividsolutions.jts.geom.multilinestring \
com.vividsolutions.jts.geom.polygon \
com.vividsolutions.jts.geom.multipolygon \
com.vividsolutions.jts.geom.geometrycollection \
com.vividsolutions.jts.geom.geometryfactory \
com.vividsolutions.jts.geom.precisionmodel \
com.vividsolutions.jts.geom.coordinate \
com.vividsolutions.jts.geom.coordinatesequencefactory \
com.vividsolutions.jts.geom.coordinatesequence \
com.vividsolutions.jts.geom.intersectionmatrix \
com.vividsolutions.jts.io.wktreader \
com.vividsolutions.jts.io.wktwriter \
com.vividsolutions.jts.jtsversion"
création du répertoire et de ses sous-répertoires destinés à contenir les fichiers d'entêtes générés avec gcjh :
machine jts-1.7.2 # mkdir -p include
machine jts-1.7.2 # jts_include_path="com/vividsolutions/jts/" \
for i in geom io ;do
mkdir -p include/${jts_include_path}/${i} ;
done
rendez vous dans le répertoire nouvellemenet créé puis créez les fichiers d'entêtes correspondants :
machine jts-1.7.2 # cd include
machine jts-1.7.2/include # gcjh -classpath ../jts.jar ${jtsclasses}
machine jts-1.7.2/include # cd ..
machine jts-1.7.2 #
génération du fichier d'entête principal jts.h :
machine jts-1.7.2 # gcjh -i jts.jar -stub -o ./include/jts.h ${jtsclasses}
génération de la librairie dynamique libjts.soà partir de l'archive binaire jts.jar :
machine jts-1.7.2 # gcj -fpic -o2 -shared -o libjts.so ./jts.jar
compilation de la classe geometry.java :
machine jts-1.7.2 # gcj -c -classpath jts.jar src/com/vividsolutions/jts/geom/geometry.java
machine jts-1.7.2 # mv src/com/vividsolutions/jts/geom/geometry*class ./
génération de librairie libstatis_geom.so
machine jts-1.7.2 # gcj -fpic -classpath jts.jar -shared -o libstatic_geom.so "geometry\$1.class"
si tout c'est déroulé correctement vous devriez avoir des fichiers d'entêtes dans le répertoire include (find ./include pour s'en assurer) et les libraries dynamiques dans le répertoire où vous avez décompmressé les sources du projet jts (jts-1.7.2 dans notre exemple).
précédente haut compilation des sources de jts et création de l'archive jar
posted in version imprimable | vous devez vous connecter ou vous enregistrer pour écrire des commentaires | 350 lectures
posté par djay le 21 mai, 2007 - 12:54.
accéder aux archives
« octobre 2007 Â
lun
mar
mer
jeu
ven
sam
dim
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
recherche
ouverture de session
nom d'utilisateur:
mot de passe:
créer un nouveau comptedemander un nouveau mot de passe
navigation
messages récents
nouvelles
syndication
category browser
qui est en ligne
il y a actuellement 1 utilisateur et 2420 invités en ligne.
postgis.fr le site francophone des utilisateurs de postgis
mis en place par gérald fenoy.
maintenu à jour par gérald fenoy, jean david techer et jérôme avond.
© postgis.fr 2005-2007
création des librairies dynamiques et des fichiers d'entêtes | postgis.fr Précédent 520 Précédent 519 Précédent 518 Précédent 517 Précédent 516 Précédent 515 Précédent 514 Précédent 513 Précédent 512 Précédent 511 Précédent 510 Précédent 509 Précédent 508 Précédent 507 Précédent 506 Précédent 505 Précédent 504 Précédent 503 Précédent 502 Précédent 501 Précédent 500 Précédent 499 Précédent 498 Précédent 497 Précédent 496 Précédent 495 Précédent 494 Précédent 493 Précédent 492 Précédent 491 Suivant 522 Suivant 523 Suivant 524 Suivant 525 Suivant 526 Suivant 527 Suivant 528 Suivant 529 Suivant 530 Suivant 531 Suivant 532 Suivant 533 Suivant 534 Suivant 535 Suivant 536 Suivant 537 Suivant 538 Suivant 539 Suivant 540 Suivant 541 Suivant 542 Suivant 543 Suivant 544 Suivant 545 Suivant 546 Suivant 547 Suivant 548 Suivant 549 Suivant 550 Suivant 551