2010-06-30 27 views
8

Estoy usando un servidor Linux y estoy tratando de instalar Pdftk, pero tengo problemas para tratar de averiguar qué hacer exactamente.¿Cómo instalo Pdftk en mi servidor?

Encontré la siguiente documentación sobre cómo instalarla, pero se refieren principalmente a su instalación en la máquina local de Windows.

Ellos son: http://www.andrewheiss.com/blog/2009/07/29/installing-pdftk-php/

http://www.accesspdf.com/pdftk/#packages

¿Puede alguien ayudarme unserstand exactamente qué archivos que necesito para colocar donde en mi servidor para que pueda referirse a PDFTK?

+0

Qué distribución y versión? –

+1

Las primeras instrucciones se ha vinculado a hacerlo contener instrucciones Linux ... El primer paso sería probablemente de descomprimir el archivo comprimido en un directorio en '/ var/www /' (o similar, depende) ... – ChristopheD

Respuesta

15

Pdftk es una versión de iText que se ha convertido de Java a C++ y se ha reconstruido con un puente de línea de comandos para facilitar el acceso desde las aplicaciones PHP.

Para construir pdftk en Redhat/CentOS siga las siguientes instrucciones.

ssh [server to install pdftk on] 

Ahora que estamos en el servidor, necesitamos crear los directorios para almacenar pdftk.

cd/
sudo mkdir extra 
cd extra 
sudo mkdir src 
cd src 
sudo wget http://www.pdfhacks.com/pdftk/pdftk-1.41.tar.gz 
sudo tar zxvf pdftk-1.41.tar.gz 
cd pdftk-1.41/pdftk 

Ahora tenemos que instalar las librerías gcj.

sudo yum install java-1.4.2-gcj-compat-devel.i386 

La biblioteca gcc-C++ no se instala con el paquete gcj lo que vamos a instalarlo ahora, por lo que no reciben un error a mitad de camino a través del proceso de compilación.

sudo yum install gcc-c++ 

Si compila la aplicación en este momento usted recibirá un aviso de que tmpnam es peligroso utilizar y se debe utilizar mkstemp.

sudo vi report.cc 

Ejecutar este VI desde el interior para hacer una búsqueda y reemplazo para el método tmpnam.

:%s/tmpnam(/mkstemp(/g 

Prensa de escape y guardar los cambios con

:wq! 

Ahora que se han instalado todos los paquetes, que van a empezar a recopilar pdftk-1,41

desde/extra/src/pdftk -1.41/pdftk ejecutar el siguiente comando

sudo make -f Makefile.RedHat 

Esto dará inicio a la acumulación de procesos compilando y convirtiendo el archivo java en C++. Esto podría tomar VARIOS minutos para convertir iText a C++. Ve a tomar una margarita de nuestra nueva máquina de margarita en la sala de descanso :).

Ahora con el archivo pdftk creado, querremos copiarlo en el directorio/bin para que podamos ejecutarlo desde cualquier lugar.

sudo cp pdftk /usr/local/bin 

Vamos a asegurarnos de la construcción se ha realizado correctamente y ejecutar

pdftk --version 
+0

He seguido sus instrucciones para instalar pdftk ... y pdftk --version funciona bien –

+0

pero no puedo ejecutarlo a través de php..why? –

+0

Estoy tratando de seguir sus instrucciones para instalar PDFTK en mi VPS. Llego a 'sudo yum install java-1.4.2-gcj-compat-devel.i386'. Una vez que ejecuto ese comando, consigo esta respuesta aa: 'Configuración de Proceso de Instalación Configuración de repositorios imhbase 100% | ======================== = | 951 B 00:00 serverdensity 100% | ========================= | 951 B 00:00 sin usar ftp, http [s] o archivo para repositorios, omitir - 4 no es una versión válida o aún no se ha lanzado No se puede encontrar un argumento base válido para repo: update Error: No se puede encontrar un válido baseurl for repo: update' –