Как мне установить Pdftk на моем сервере? - PullRequest
8 голосов
/ 30 июня 2010

Я использую Linux Server и пытаюсь установить Pdftk, но у меня проблемы с попыткой выяснить, что именно делать.

Я нашел следующую документацию о том, как установить его, но в основном это относится к установке на локальный компьютер с Windows.

Это: http://www.andrewheiss.com/blog/2009/07/29/installing-pdftk-php/

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

Может ли кто-нибудь помочь мне понять, какие именно файлы мне нужно разместить где-то на моем сервере, чтобы я мог ссылаться на pdftk?

1 Ответ

15 голосов
/ 08 сентября 2010

Pdftk - это версия iText, которая была преобразована из Java в c ++ и перестроена с использованием моста командной строки для легкого доступа из приложений PHP.

Чтобы собрать pdftk на Redhat / CentOS, пожалуйста, следуйте приведенным ниже инструкциям.

ssh [server to install pdftk on]

Теперь, когда мы на сервере, нам нужно создать каталоги для хранения 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

Теперь нам нужно установить библиотеки gcj.

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

Библиотека gcc-c ++ не устанавливается вместе с пакетом gcj, поэтому мы установим его сейчас, поэтому в середине процесса компиляции мы не получим ошибку.

sudo yum install gcc-c++

Если вы скомпилируете приложение прямо сейчас, вы получите предупреждение о том, что tmpnam опасно использовать, и вам следует использовать mkstemp.

sudo vi report.cc

Запустите это из VI, чтобы выполнить поиск и заменить метод tmpnam.

:%s/tmpnam(/mkstemp(/g

Нажмите escape и сохраните изменения с помощью

:wq!

Теперь, когда у нас установлены все пакеты, мы начнем компилировать pdftk-1.41

из /extra/src/pdftk-1.41/pdftk выполните следующую команду

sudo make -f Makefile.RedHat

Это запустит процесс сборки для компиляции и преобразования java-файла в c ++. Это может занять несколько минут, чтобы конвертировать iText в C ++. Иди, возьми себе маргариту с нашей новой машины Маргариты в комнате отдыха:).

Теперь, создав файл pdftk, мы захотим скопировать его в каталог / bin, чтобы запустить его из любого места.

sudo cp pdftk /usr/local/bin

Давайте убедимся, что сборка прошла успешно, и запустим

pdftk --version
...