I would like to make a local build of libraw into my macports distribution. If anyone can help, I would appreciate it. The portfile is:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# $Id$
PortSystem 1.0
name LibRaw
version 0.13.0-Beta3
categories graphics
platforms darwin
maintainers wyatt \
digitalcave.ca:wyatt
description raw image decoding
long_description libraw is a library for raw image decoding
homepage http://www.libraw.org
master_sites ${homepage}/data
checksums md5 1f8f6b032b07b0347b229fb03f1617b4
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
and when attempting to use it I get the following:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ejm$ sudo port install libraw
---> Fetching LibRaw
---> Verifying checksum(s) for LibRaw
---> Extracting LibRaw
---> Configuring LibRaw
---> Building LibRaw
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for LibRaw is at: /opt/local/var/macports/logs/_Users_ejm_src_ports_graphics_libraw/main.log
Error: Status 1 encountered during processing.
To report a bug, see
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
with the relevant portion of the error log:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
:info:build mv -f src/.deps/lib_libraw_a-libraw_c_api.Tpo src/.deps/lib_libraw_a-libraw_c_api.Po
:info:build /usr/bin/g++-4.2 -DPACKAGE_NAME=\"LibRaw\" -DPACKAGE_TARNAME=\"libraw\" -DPACKAGE_VERSION=\"0.13.0-Beta3\" -DPACKAGE_STRING=\"LibRaw\ 0.13.0-Beta3\" -DPACKAGE_BUGREPORT=\"info@libraw.org\" -DPACKAGE_URL=\"http://www.libraw.org\" -I. -DLIBRAW_NOTHREADS -w -I/opt/local/include -I/opt/local/include -DUSE_LCMS2 -pipe -O2 -arch x86_64 -MT samples/bin_raw_identify-raw-identify.o -MD -MP -MF samples/.deps/bin_raw_identify-raw-identify.Tpo -c -o samples/bin_raw_identify-raw-identify.o `test -f 'samples/raw-identify.cpp' || echo './'`samples/raw-identify.cpp
:info:build mv -f samples/.deps/bin_raw_identify-raw-identify.Tpo samples/.deps/bin_raw_identify-raw-identify.Po
:info:build /usr/bin/g++-4.2 -pipe -O2 -arch x86_64 -L/opt/local/lib -arch x86_64 -o bin/unprocessed_raw samples/bin_unprocessed_raw-unprocessed_raw.o -Llib/ -lm -lraw -L/opt/local/lib -llcms2 -L/opt/local/lib -llcms2
:info:build ld: library not found for -lraw
:info:build collect2: ld returned 1 exit status
:info:build make: *** [bin/unprocessed_raw] Error 1
:info:build make: *** Waiting for unfinished jobs....
:info:build mv -f internal/.deps/lib_libraw_a-demosaic_packs.Tpo internal/.deps/lib_libraw_a-demosaic_packs.Po
:info:build mv -f internal/.deps/lib_libraw_r_a-dcraw_common.Tpo internal/.deps/lib_libraw_r_a-dcraw_common.Po
:info:build mv -f internal/.deps/lib_libraw_a-dcraw_common.Tpo internal/.deps/lib_libraw_a-dcraw_common.Po
:info:build shell command " cd "/opt/local/var/macports/build/_Users_ejm_src_ports_graphics_libraw/work/LibRaw-0.13.0-Beta3" && /usr/bin/make -j4 all " returned error 2
:error:build Target org.macports.build returned: shell command failed (see log for details)
:debug:build Backtrace: shell command failed (see log for details)
while executing
"command_exec build"
(procedure "portbuild::build_main" line 8)
invoked from within
"$procedure $targetname"
:info:build Warning: the following items did not execute (for LibRaw): org.macports.activate org.macports.build org.macports.destroot org.macports.install
Portfile
Add the following line to your portfile:
use_parallel_build no
(Looks as if with the current makefile, when using parallel builds it's possible to want to link your executables before the library has beem built.)
That seems to have done the
That seems to have done the job. Thanks!