在openbsd中安装vips库

在openbsd中安装vips库

在 OpenBSD 上,我需要安装 Sharp,它需要 vips 库。

当我使用预烘焙的 vips tarball 时,

<[email protected]:/usr/local/src/libvips/vips-8.7.0> ./configure                      
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
date: seconds is invalid: ChangeLog
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for gobject-introspection... yes
checking build system type... x86_64-unknown-openbsd6.3
checking host system type... x86_64-unknown-openbsd6.3
checking for needs -lstdc++... yes
checking for native Win32... no
checking for binary open needed... no
checking for Mac OS X... no
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for gawk... (cached) awk
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking for gcc option to accept ISO C99... -std=gnu99
checking for gcc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for ranlib... ranlib
checking whether ln -s works... yes
checking if malloc debugging is wanted... no
checking how to run the C preprocessor... gcc -std=gnu99 -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking libintl.h usability... no
checking libintl.h presence... no
checking for libintl.h... no
checking for gcc version... 4.2.1
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for ANSI C header files... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking math.h usability... yes
checking math.h presence... yes
checking for math.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking for sys/types.h... (cached) yes
checking for sys/stat.h... (cached) yes
checking for unistd.h... (cached) yes
checking io.h usability... no
checking io.h presence... no
checking for io.h... no
checking direct.h usability... no
checking direct.h presence... no
checking for direct.h... no
checking windows.h usability... no
checking windows.h presence... no
checking for windows.h... no
checking for dllwrap... no
checking for dlltool... dlltool
checking for objdump... objdump
checking for ranlib... (cached) ranlib
checking for strip... strip
checking for ar... ar
checking for as... as
checking for ld... ld
checking how to print strings... print -r
checking for a sed that does not truncate output... /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc -std=gnu99... ld
checking if the linker (ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking how to convert x86_64-unknown-openbsd6.3 file names to x86_64-unknown-openbsd6.3 format... func_convert_file_noop
checking how to convert x86_64-unknown-openbsd6.3 file names to toolchain format... func_convert_file_noop
checking for ld option to reload object files... -r
checking for objdump... (cached) objdump
checking how to recognize dependent libraries... match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$
checking for dlltool... (cached) dlltool
checking how to associate runtime and link libraries... print -r --
checking for archiver @FILE support... @
checking for strip... (cached) strip
checking for ranlib... (cached) ranlib
checking command to parse /usr/bin/nm -B output from gcc -std=gnu99 object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc -std=gnu99 supports -fno-rtti -fno-exceptions... no
checking for gcc -std=gnu99 option to produce PIC... -fPIC -DPIC
checking if gcc -std=gnu99 PIC flag -fPIC -DPIC works... yes
checking if gcc -std=gnu99 static flag -static works... yes
checking if gcc -std=gnu99 supports -c -o file.o... yes
checking if gcc -std=gnu99 supports -c -o file.o... (cached) yes
checking whether the gcc -std=gnu99 linker (ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... yes
checking dynamic linker characteristics... openbsd6.3 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... ld
checking if the linker (ld) is GNU ld... yes
checking whether the g++ linker (ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (ld) supports shared libraries... yes
checking dynamic linker characteristics... openbsd6.3 ld.so
checking how to hardcode library paths into programs... immediate
checking for C/C++ restrict keyword... __restrict
checking for __attribute__((vector_size))... yes
checking for an ANSI C-conforming const... yes
checking for mode_t... yes
checking for off_t... yes
checking for size_t... yes
checking for gcc with working vector support... no
checking for working memcmp... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking for vprintf... yes
checking for _doprnt... no
checking for getcwd... yes
checking for gettimeofday... yes
checking for getwd... yes
checking for memset... yes
checking for munmap... yes
checking for putenv... yes
checking for realpath... yes
checking for strcasecmp... yes
checking for strchr... yes
checking for strcspn... yes
checking for strdup... yes
checking for strerror... yes
checking for strrchr... yes
checking for strspn... yes
checking for vsnprintf... yes
checking for realpath... (cached) yes
checking for mkstemp... yes
checking for mktemp... yes
checking for random... yes
checking for rand... yes
checking for sysconf... yes
checking for atexit... yes
checking for cbrt in -lm... yes
checking for hypot in -lm... yes
checking for atan2 in -lm... yes
checking for REQUIRED... yes
checking for CONTEXT_GET_HELP... yes
checking for MONOTONIC... yes
checking for THREADS... yes
checking for TYPE_INIT... no
checking for WIN32_GET_COMMAND_LINE... yes
checking for HAVE_CHECKED_MUL... yes
checking for gtk-doc... yes
checking for gtkdoc-check... gtkdoc-check.test
checking for gtkdoc-check... /usr/local/bin/gtkdoc-check
checking for gtkdoc-rebase... /usr/local/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /usr/local/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no
checking for GTKDOC_DEPS... yes
checking for XML_ParserCreate in -lexpat... yes
checking expat.h usability... yes
checking expat.h presence... yes
checking for expat.h... yes
checking for GSF... yes
checking for GSF_ZIP64... yes
checking for FFTW... yes
checking for MAGICK_WAND... yes
checking for MAGICK... no
checking for MAGICK... yes
checking for SetImageOption... yes
checking for MagickCoreGenesis... yes
checking for ResetImagePropertyIterator... yes
checking for ResetImageAttributeIterator... yes
checking for GetVirtualPixels... yes
checking for struct _ImageInfo.number_scenes... yes
checking for AcquireImage... yes
checking for SetImageExtent... yes
checking for SetImageProperty... yes
checking for InheritException... yes
checking for ImportImagePixels... yes
checking for ORC... yes
checking for orc_program_get_error... yes
checking for LCMS... yes
checking for OPENEXR... no
configure: WARNING: OpenEXR not found; disabling OpenEXR support
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking whether -R must be followed by a space... no
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for NIFTI... libraries (none), headers (none)
checking for PDFIUM... libraries (none), headers (none)
checking for POPPLER... yes
checking for RSVG... yes
checking for ZLIB... yes
checking for OPENSLIDE... no
configure: OpenSlide >= 3.4.0 not found; checking for >= 3.3.0
checking for OPENSLIDE... no
configure: WARNING: OpenSlide >= 3.3.0 not found; disabling virtual slide support
checking for MATIO... no
configure: WARNING: matio not found; disabling matio support
checking for CFITSIO... no
configure: WARNING: cfitsio not found; disabling cfitsio support
checking for LIBWEBP... yes
checking for LIBWEBPMUX... yes
checking for PANGOFT2... yes
checking for TIFF... yes
checking for giflib... libraries -lgif, headers -I/usr/local/include
checking for PNG... yes
checking for IMAGEQUANT... no
configure: WARNING: libimagequant not found; disabling 8bpp PNG support
checking for JPEG... yes
checking for jpeg_c_bool_param_supported... no
checking for EXIF... yes
checking exif-data.h usability... yes
checking exif-data.h presence... yes
checking for exif-data.h... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating vips.pc
config.status: creating vipsCC.pc
config.status: creating vips-cpp.pc
config.status: creating Makefile
config.status: creating libvips/include/vips/version.h
config.status: creating libvips/include/Makefile
config.status: creating libvips/include/vips/Makefile
config.status: creating libvips/Makefile
config.status: creating libvips/arithmetic/Makefile
config.status: creating libvips/colour/Makefile
config.status: creating libvips/conversion/Makefile
config.status: creating libvips/convolution/Makefile
config.status: creating libvips/deprecated/Makefile
config.status: creating libvips/foreign/Makefile
config.status: creating libvips/freqfilt/Makefile
config.status: creating libvips/histogram/Makefile
config.status: creating libvips/draw/Makefile
config.status: creating libvips/iofuncs/Makefile
config.status: creating libvips/morphology/Makefile
config.status: creating libvips/mosaicing/Makefile
config.status: creating libvips/create/Makefile
config.status: creating libvips/resample/Makefile
config.status: creating libvipsCC/include/Makefile
config.status: creating libvipsCC/include/vips/Makefile
config.status: creating libvipsCC/Makefile
config.status: creating cplusplus/include/Makefile
config.status: creating cplusplus/include/vips/Makefile
config.status: creating cplusplus/Makefile
config.status: creating tools/Makefile
config.status: creating tools/batch_crop
config.status: creating tools/batch_image_convert
config.status: creating tools/batch_rubber_sheet
config.status: creating tools/light_correct
config.status: creating tools/shrink_width
config.status: creating python/Makefile
config.status: creating python/packages/Makefile
config.status: creating python/packages/gi/Makefile
config.status: creating python/packages/gi/overrides/Makefile
config.status: creating test/Makefile
config.status: creating test/variables.sh
config.status: creating test/test-suite/Makefile
config.status: creating test/test-suite/helpers/Makefile
config.status: creating swig/Makefile
config.status: creating swig/vipsCC/Makefile
config.status: creating man/Makefile
config.status: creating doc/Makefile
config.status: creating doc/libvips-docs.xml
config.status: creating po/Makefile.in
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing default-1 commands
config.status: executing libtool commands
* build options
native win32:                           no
native OS X:                            no
open files in binary mode:              no
enable debug:                           no
enable deprecated library components:   yes
enable docs with gtkdoc:                no
gobject introspection:                  yes
enable vips7 C++ API:                   no (default)
enable vips7 Python binding:            no (default)
enable vips8 Python overrides:          no (default)
  (requires pygobject-3.13.0 or later)
enable radiance support:                yes
enable analyze support:                 yes
enable PPM support:                     yes

* optional dependencies
use fftw3 for FFT:                      yes
Magick package:                         MagickCore
Magick API version:                     magick6
load with libMagick:                    yes
save with libMagick:                    yes
accelerate loops with orc:              yes
  (requires orc-0.4.11 or later)
ICC profile support with lcms:          yes (lcms2)
file import with niftiio:               no
file import with OpenEXR:               no
file import with OpenSlide:             no
  (requires openslide-3.3.0 or later)
file import with matio:                 no
PDF import with PDFium                  no
PDF import with poppler-glib:           yes
  (requires poppler-glib 0.16.0 or later)
SVG import with librsvg-2.0:            yes
  (requires librsvg-2.0 2.34.0 or later)
zlib:                                   yes
file import with cfitsio:               no
file import/export with libwebp:        yes
  (requires libwebp-0.1.3 or later)
support webp metadata:                  yes
  (requires libwebpmux-0.5 or later)
text rendering with pangoft2:           yes
file import/export with libpng:         yes (pkg-config libpng >= 1.2.9)
  (requires libpng-1.2.9 or later)
support 8bpp PNG quantisation:          no
  (requires libimagequant)
file import/export with libtiff:        yes (pkg-config libtiff-4)
file import/export with giflib:         yes (found by search)
file import/export with libjpeg:        yes (pkg-config)
image pyramid export:                   yes
  (requires libgsf-1 1.14.26 or later)
use libexif to load/save JPEG metadata: yes

在我看来一切都很好。但尝试编译:

<[email protected]:/usr/local/src/libvips/vips-8.7.0> make        
make  all-recursive
Making all in libvips
*** Parse error in /usr/local/src/libvips/vips-8.7.0/libvips: Need an operator in '' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:43)
*** Parse error: Need an operator in '' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:44)
*** Parse error: Need an operator in 'introspection-scanner' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:125)
*** Parse error: Need an operator in '' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:128)
*** Parse error: Unterminated variable spec in $(or $(findstring --header-only,$($(_gir_name)_SCANNERFLAGS)), (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:129)
*** Parse error: Unterminated variable spec in $(if $(or $(findstring --header-only,$($(_gir_name)_SCANNERFLAGS)), (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:129)
*** Parse error: Unterminated variable spec in $(or $(findstring --header-only,$($(_gir_name)_SCANNERFLAGS)), (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:129)
*** Parse error: Unterminated variable spec in $(if $(or $(findstring --header-only,$($(_gir_name)_SCANNERFLAGS)), (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:129)
*** Parse error: Need an operator in '' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:129)
*** Parse error: Need an operator in ',' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:130)
*** Parse error: Need an operator in '),,' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:131)
*** Parse error: Need an operator in ')' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:132)
*** Parse error: Need an operator in 'endef' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:157)
*** Parse error: Need an operator in '' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:159)
*** Parse error: Need an operator in 'introspection-compiler' (/usr/local/share/gobject-introspection-1.0/Makefile.introspection:166)
Problem with variable expansion chain: _gir_silent_compiler -> _gir_silent_compiler_ -> _gir_silent_compiler_
        Variable _gir_silent_compiler_ is recursive.
*** Error 1 in . (Makefile:684 'all-recursive')
*** Error 1 in /usr/local/src/libvips/vips-8.7.0 (Makefile:564 'all')

如果我使用 gcc 或 clang 编译器(在配置步骤中切换 CC 和 C++ 变量),它会给出相同的结果。

如果我尝试使用直接源代码进行编译,我会在 autogen 步骤处停止(就在开始时)。

这里主要的问题可能是:

swig/vipsCC/Makefile.am:32: error: Libtool library used but 'LIBTOOL' is undefined
swig/vipsCC/Makefile.am:32:   The usual way to define 'LIBTOOL' is to add 'LT_INIT'
swig/vipsCC/Makefile.am:32:   to 'configure.ac' and run 'aclocal' and 'autoconf' again.
swig/vipsCC/Makefile.am:32:   If 'LT_INIT' is in 'configure.ac', make sure
swig/vipsCC/Makefile.am:32:   its definition is in aclocal's search path.

基本上关于 LT_INIT 有很多麻烦,我不明白如何改善我的情况。

有人可以在那里帮助我吗?

相关内容