Bonjour,
Je dispose d’un serveur web sur lequel php5.5 est installé. Je souhaite y ajouter une version 5.4 car j’ai des sites en cours de migration qui ne supporte pas la version 5.5.
Je dois donc recompiler un php5.4 depuis les sources. Je ne souhaite pas recompiler directement sur le serveur web de prod. J’ai donc une copie de ce serveur en local.
J’arrive a exécuter le configure ainsi que le make sur ma machine locale. L’idée maintenant de packager la version php5.4 dans un .deb que je pourrais ensuite installer sur le serveur de prod.
J’ai pour cela suivi un tuto d’introduction sur la génération d’un paquet debian, mais je bloque sur un point particulier.
Pour que le configure fonctionne correctement, j’ai besoin de faire des liens symboliques, par exemple celui ci:
Malheureusement j’obtiens systématiquement un permission denied dans l’environnement chrooté.
Voici le contenu de mon fichier debian/rules:
[code]export DH_VERBOSE=1
DESTDIR=
CONFIGURE = CFLAGS=’$(CFLAGS)’ ./configure --with-jpeg-dir=/usr/local/php5438-cgi
–with-config-file-scan-dir=/usr/local/php5438-cgi/php.d
–with-png-dir=/usr/local/php5438-cgi
–prefix=/usr/local/php5438-cgi
…
configure: configure-stamp
configure-stamp:
dh_testdir -a
@echo "Doing $@"
if test -f Makefile; then make clean; fi
ln -sf /usr/share/misc/config.sub .
ln -sf /usr/share/misc/config.guess .
rm -f config.cache
#mkdir -p $(DESTDIR)/usr/include/
ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h
$(CONFIGURE)
touch configure-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir -a
# Add here commands to compile the package.
make all
#docbook-to-man debian/nagios.sgml > nagios.1
touch $@
clean:
dh_testdir
dh_testroot
rm -f build-stamp
# Add here commands to clean up after the build process.
[ ! -f Makefile ] || $(MAKE) distclean
rm -f config.sub config.guess
dh_clean
install: build
@echo "Doing $@"
dh_testdir -a
dh_testroot -a
dh_clean -k
dh_installdirs -a -i
$(MAKE) install
[/code]
J’ai essayé pas mal de syntaxe différente, mais soit j’ai permission denied ou alors j’ai No such file or directory
Sauriez vous me filer un coup de main pour m’expliquer ce que j’ai raté ?
Merci d’avance,
Nico