On Sat, Jul 30, 2005 at 07:57:36PM +0200, Kurt Roeckx wrote:
> Package: pcre-ocaml
> Version: 5.10.0-2
> Severity: serious
> Tags: patch

> Your package is failing to build with the following error:
> make[3]: Entering directory `/build/buildd/pcre-ocaml-5.10.0/lib'
> ocamlc -c -cc "cc" -ccopt "-g -Wall -O2 \
>                         -DPIC   \
>                             -o pcre_stubs.o " pcre_stubs.c
> ar rcs libpcre_stubs.a  pcre_stubs.o
> ocamlc -c pcre.mli
> ocamlc -c pcre.ml
> ocamlmklib          \
>                         -o pcre_stubs  pcre_stubs.o -lpcre \

> /usr/bin/ld: pcre_stubs.o: relocation R_X86_64_32 against `a local symbol' can
> not be used when making a shared object; recompile with -fPIC
> pcre_stubs.o: could not read symbols: Bad value
> collect2: ld returned 1 exit status

> It has a -DPIC, but it requires the -fPIC options too.

> Here is a patch for it:
> --- OCamlMakefile.old   2005-07-30 19:56:03.089321016 +0200
> +++ OCamlMakefile       2005-07-30 19:55:43.630279240 +0200
> @@ -162,7 +162,7 @@
>    PIC_CFLAGS := -fPIC
>  endif
>  ifndef PIC_CPPFLAGS
> -  PIC_CPPFLAGS := -DPIC
> +  PIC_CPPFLAGS := -fPIC -DPIC
>  endif
>  endif

That doesn't make any sense; CPPFLAGS refers to flags for the C
preprocessor, and one can clearly see three lines above that -fPIC is
already being set in the PIC_CFLAGS variable where it belongs.  The fix
belongs elsewhere, wherever PIC_CFLAGS is failing to be included.

Cheers,
-- 
Steve Langasek
postmodern programmer

Attachment: signature.asc
Description: Digital signature

Reply via email to