Ошибки компиляции при установке PDFLib на Ubuntu Natty 32-bit - PullRequest
0 голосов
/ 24 декабря 2011

Я пытаюсь скомпилировать PDFLib на Ubuntu Natty (11.04) 32-bit. Тем не менее, я сталкиваюсь с несколькими проблемами на этапе «make».

Просто подведу итог:

  1. Я скачал PDFLib с здесь
  2. Извлекаю содержимое и cd в каталог
  3. Я тогда делаю ./configure и все идет хорошо

Но когда я делаю make, я получаю то, что вы видите ниже, после того, как оно работает некоторое время:

../../libtool --silent --mode=link gcc  -o libpdf.la -rpath /usr/local/lib -version-info 6:5:0 ./pdflib.lo ../../libs/pdflib/libpdf_.la  ../../libs/font/libfont.la   ../../libs/pdcore/libpdcore.la ../../libs/png/libpng.la ../../libs/flate/libz.la ../../libs/tiff/libtiff.la ../../libs/jpeg/libjpeg.la  -lm -export-dynamic
../../libtool --silent --mode=link gcc  -o libs_libpdf.la ./pdflib.lo ../../libs/pdflib/libpdf_.la  ../../libs/font/libfont.la   ../../libs/pdcore/libpdcore.la ../../libs/png/libpng.la ../../libs/flate/libz.la ../../libs/tiff/libtiff.la ../../libs/jpeg/libjpeg.la  -lm
make[2]: Leaving directory `/mnt/hgfs/src/php/pdflib-7.0.5/libs/pdflib'
make[1]: Leaving directory `/mnt/hgfs/src/php/pdflib-7.0.5/libs'
make[1]: Entering directory `/mnt/hgfs/src/php/pdflib-7.0.5/bind'
make[2]: Entering directory `/mnt/hgfs/src/php/pdflib-7.0.5/bind/pdflib'
make[3]: Entering directory `/mnt/hgfs/src/php/pdflib-7.0.5/bind/pdflib/c'
make[3]: Warning: File `../../../libs/pdflib/libs_libpdf.la' has modification time 1.2 s in the future
../../../libtool --silent --mode=compile gcc -c -I../../../libs/pdflib -I../../../libs/pdcore -O2 -g -D__NO_CTYPE -DPDC_PF_LINUX_IA32 -DASMV -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPDF_PLATFORM=\""Linux"\" -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1  -Wall    hello.c
../../../libtool --silent --mode=link gcc -static -o hello hello.lo   ../../../libs/pdflib/libs_libpdf.la ../../../libs/pdflib/libs_libpdf.la -lm
../../../libs/pdflib/.libs/libs_libpdf.a(deflate.o): In function `deflate_slow':
/mnt/hgfs/src/php/pdflib-7.0.5/libs/flate/deflate.c:1602: undefined reference to `pdf_z_longest_match'
../../../libs/pdflib/.libs/libs_libpdf.a(deflate.o): In function `deflate_fast':
/mnt/hgfs/src/php/pdflib-7.0.5/libs/flate/deflate.c:1498: undefined reference to `pdf_z_longest_match'
../../../libs/pdflib/.libs/libs_libpdf.a(deflate.o): In function `lm_init':
/mnt/hgfs/src/php/pdflib-7.0.5/libs/flate/deflate.c:1015: undefined reference to `pdf_z_match_init'
collect2: ld returned 1 exit status
make[3]: *** [hello] Error 1
make[3]: Leaving directory `/mnt/hgfs/src/php/pdflib-7.0.5/bind/pdflib/c'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/mnt/hgfs/src/php/pdflib-7.0.5/bind/pdflib'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/mnt/hgfs/src/php/pdflib-7.0.5/bind'
make: *** [all] Error 2

Я не уверен, о чем эта ошибка. Я запустил то же самое на облачном сервере с 64-битной Ubuntu Natty, и у меня не возникло никаких проблем.

Буду признателен за руководство. Заранее спасибо.

EDIT

Ниже приведен весь скрипт оболочки (который работал с 64-битной Ubuntu Natty)

wget http://www.pdflib.com/binaries/PDFlib/705/PDFlib-Lite-7.0.5.tar.gz
tar -zxf PDFlib-Lite-7.0.5.tar.gz
mv PDFlib-Lite-7.0.5 pdflib-7.0.5
cd pdflib-7.0.5 && ./configure && make && make install
cd ..
wget http://pecl.php.net/get/pdflib-2.1.8.tgz
tar -zxf pdflib-2.1.8.tgz
mv pdflib-2.1.8 pdflib-pecl-2.1.8
cd pdflib-pecl-2.1.8
phpize && ./configure --with-pdflib && make
cp modules/pdf.so /usr/lib/php5/20090626+lfs/

1 Ответ

0 голосов
/ 24 декабря 2011

Рекомендуется использовать пакет PECL для PDFLib. Проверьте, не возникнут ли у вас проблемы при установке, следуя инструкциям .

...