Jojo_le_linuxien a écrit :tout d'abord, il s'installe dans /usr/local, et apparemment, ce n'est pas conseillé par les standards d'empaquetage
En effet, pas bien si tu veux une publication sur Aur. Sur ce que j'ai rapidemment vu, ça vient de leur script release.linux.sh (dont je ne suis pas fan).
Jojo_le_linuxien a écrit :Ensuite, je n'arrive pas à établir de correspondance entre les dépendances Ubuntu et Archlinux. Je continue à travailler dessus...
Éventuellement indique-nous sur lesquelles ça coince.
Jojo_le_linuxien a écrit :mais pour l'instant, le logiciel ne se lance pas.
S'il y a des erreurs, tu peux nous les indiquer aussi.
À l'aide de ça, dans un premier temps, si on peut déjà arriver à le faire tourner... on se préoccupera du PKGBUILD plus tard.
Jojo_le_linuxien a écrit :Sinon pour ce qui est de la compilation, mes compétences ne me permettent pas de comprendre toutes les instructions (pour l'instant, mais j'essaie aussi d'y travailler).
Je ne te promets rien, mais je vais essayer de regarder en partant du git.
EDIT: Test rapide:
Partant du .deb (1.25 / Natty scoud), j'obtiens l'erreur suivante (je suppose que tu as la même):
Code : Tout sélectionner
./Sankore\ 3.1
./Sankore 3.1: error while loading shared libraries: libcrypto.so.0.9.8: cannot open shared object file: No such file or directory
Pour info, le
openssl actuel fournit libcrypto, mais en version 1. Pas de bol.
Partant du git, j'arrive à avoir une application qui se lance (1.40). Pas sûr que j'ai le temps aujourd'hui de faire un PKGBUILD propre, donc voici au moins mes remarques:
1) j'ignore quel est l'impact de leur Qt personnalisé... j'ai compilé sans...

2) je n'ai pas fait l'inventaire des dépendances, par rapport à ce que j'avais (installation kde, donc j'ai qt) il me manquait
lesstif et
libpaper (je le signale vu que c'est un peu exotique)
3) par rapport aux tutos que tu as indiqué au début, je suis parti d'Ubuntu.
4) les grandes lignes de la compilation:
- Récupérer les sources de Sankoré + Third Party par git
- Création des bibliothèques FreeType et xpdf, toutes les modifications indiquées sont valables
- Compilation de Sankoré (rajout de "-lpaper" "-lt1" comme indiqué). Pour le release.linux.sh, modifier comme suit:
Code : Tout sélectionner
QT_PATH="/usr/lib/qt"
PLUGINS_PATH="/usr/lib/qt/plugins"
QMAKE_PATH="/usr/bin/qmake"
J'ai viré toute la partie copie des bibliothèques de qt personnalisées.

(sinon il faut modifier
QT_LIBRARY_SOURCE_PATH="/usr/lib"
et changer les 4.7.3 en 4.7.4 ; et 4.4.0 en 4.5.1 pour libphonon )
En passant par le release.linux.sh (à rendre exécutable) on obtient le tar.gz (dans install/linux) et on peut lancer Sankore\ 3.1.
Voilà, voilà... y a plus qu'à faire un PKGBUILD propre (en ce qui me concerne si je le fais ou indications pour toi: coup de
sed
bien sentis, se passer du script release.linux.sh)... Il faudra également voir l'impact d'avoir le qt personnalisé ou pas, mon avis: si ça fonctionne avec le qt de base, ça évitera quand même une grosse compilation...
EDIT2: PKGBUILD rapide:
Code : Tout sélectionner
pkgname=sankore-git
pkgver=20111204
pkgrel=1
pkgdesc="TODO"
arch=(i686 x86_64)
url="http://sankore.org/"
license=('GPL')
#TODO: à compléter...
depends=('qt' 'lesstif' 'libpaper' 't1lib')
makedepends=('git')
_gitroot=git://github.com/Sankore/Sankore-3.1.git
_gitname=Sankore
_gitroot_3rd=git://github.com/Sankore/Sankore-ThirdParty.git
_gitname_3rd=Sankore-ThirdParty
build() {
cd "$srcdir"
msg "Connecting to GIT server...."
if [[ -d "$_gitname" ]]; then
cd "$_gitname" && git pull origin
msg "The local files are updated."
else
git clone "$_gitroot" "$_gitname"
fi
msg "GIT checkout done or server timeout"
cd "$srcdir/"
#custom Qt
# if [[ ! -d Qt-sankore3.1 ]];then
# git clone https://git.gitorious.org:+mnemis/qt/mnemogit.git Qt-sankore3.1
# cd Qt-sankore3.1
# git checkout --track -b sankore3.1 origin/sankore3.1
# cd ..
# fi
#Third Part
msg "Connecting to GIT server for the 3rd party...."
if [[ ! -d "$_gitname_3rd" ]]; then
git clone "$_gitroot_3rd" "$_gitname_3rd"
fi
msg "Starting build..."
#Compilation Qt
#...pas pour le moment
#Création de la librairie FreeType
cd "$_gitname_3rd"/freetype
qmake freetype.pro -spec linux-g++
make
#Création de la librairie xpdf
cd ${srcdir}/"$_gitname_3rd"/xpdf/xpdf-3.02
#pas net ce machin, mais le configure plante si on passe directement ../../../freetype/lib/linux o_O
#fonctionne pô avec le paquet freetype2 non plus
./configure --with-freetype2-library="../../freetype/lib/linux" --with-freetype2-includes="../../freetype/freetype-2.4.4/include"
sed 's#-I../../freetype/freetype-2.4.4/include#-I../../../freetype/freetype-2.4.4/include#' < ./splash/Makefile
cd ..
qmake xpdf.pro -spec linux-g++
make
#Compilation de Sankoré 3en1
cd "$srcdir/$_gitname"
qmake -spec linux-g++
make release-install
}
package() {
cd "$srcdir/$_gitname"
install -d -m755 ${pkgdir}/usr/share/sankore
install -d -m755 ${pkgdir}/usr/bin
cp -r build/linux/release/product/* ${pkgdir}/usr/share/sankore/
#avec le binaire dans /usr/bin directement, perte de l'internationalisation :-s
ln -s ${pkgdir}/usr/share/sankore/Sankore ${pkgdir}/usr/bin/
}
Bon, y a des trucs pas nets (mais bon, j'ai peut-être trop raccourci le truc...): si on place directement le binaire dans /usr/bin, on perd au moins l'internationalisation (d'où le passage par les liens symboliques), le thème Qt courant ne s'applique pas (effet du Qt non personnalisé ?)... et j'ai pas compris pourquoi il fallait en passer par la compilation de freetype (mais il ne trouve pas celui installé avec freetype2 / 2.4.8 ), sans parler du configure de xpdf pour le moins étrange...
