Opened 17 years ago

Closed 16 years ago

Last modified 16 years ago

#13576 closed defect (worksforme)

camlimages 2.2_2 fails to build: 'JCS_RGB' undeclared (first use in this function)

Reported by: henrik@… Owned by: reilles@…
Priority: Normal Milestone:
Component: ports Version: 1.5.2
Keywords: Cc: ryandesign (Ryan Carsten Schmidt), mww@…, blb@…
Port: camlimages

Description (last modified by ryandesign (Ryan Carsten Schmidt))

For some time now I have not been able to compile camlimages. Under Leopard (installed as upgrade from Tiger) the error shows like this:

newhost71-069:~ hepi$ sudo port install camlimages
--->  Fetching camlimages
--->  Verifying checksum(s) for camlimages
--->  Extracting camlimages
--->  Applying patches to camlimages
--->  Configuring camlimages
--->  Building camlimages with target all opt
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_camlimages/work/camlimages-2.2" && make all opt " returned error 2
Command output: jpegread.c:145: error: 'JCS_RGB' undeclared (first use in this function)
jpegread.c:149: warning: implicit declaration of function 'jpeg_start_decompress'
jpegread.c:165: error: 'buffer' undeclared (first use in this function)
jpegread.c:166: error: 'j_common_ptr' undeclared (first use in this function)
jpegread.c:166: error: 'JPOOL_IMAGE' undeclared (first use in this function)
jpegread.c:180: warning: implicit declaration of function 'jpeg_read_scanlines'
jpegread.c:198: warning: implicit declaration of function 'jpeg_finish_decompress'
jpegread.c:81: warning: unused variable 'cinfo'
jpegread.c: In function 'jpeg_set_scale_denom':
jpegread.c:231: error: dereferencing pointer to incomplete type
jpegread.c: In function 'open_jpeg_file_for_read':
jpegread.c:261: error: invalid application of 'sizeof' to incomplete type 'struct jpeg_decompress_struct' 
jpegread.c:274: error: dereferencing pointer to incomplete type
jpegread.c:295: error: 'TRUE' undeclared (first use in this function)
jpegread.c:299: error: dereferencing pointer to incomplete type
jpegread.c:300: error: dereferencing pointer to incomplete type
jpegread.c: In function 'open_jpeg_file_for_read_start':
jpegread.c:337: error: dereferencing pointer to incomplete type
jpegread.c:337: error: 'JCS_RGB' undeclared (first use in this function)
jpegread.c:358: error: dereferencing pointer to incomplete type
jpegread.c:359: error: dereferencing pointer to incomplete type
jpegread.c: In function 'read_jpeg_scanline':
jpegread.c:380: error: 'JSAMPROW' undeclared (first use in this function)
jpegread.c:380: error: syntax error before 'row'
jpegread.c:384: error: 'row' undeclared (first use in this function)
jpegread.c: In function 'close_jpeg_file_for_read':
jpegread.c:416: error: dereferencing pointer to incomplete type
jpegread.c:416: error: dereferencing pointer to incomplete type
make[1]: *** [jpegread.o] Error 2
make: *** [byt] Error 2

Error: Status 1 encountered during processing.

Change History (12)

comment:1 Changed 17 years ago by henrik@…

I had similar problem when using Tiger. Here I was able to cure my problem by making the following change in the portfile:

Replace the lines

configure.cflags-append "-L${prefix}/lib"

configure.env DPORT_CAMLDIR="${prefix}/lib/ocaml"

by

configure.env LDFLAGS="-L${prefix}/lib" CFLAGS="-I${prefix}/include -L${prefix}/lib" DPORT_CAMLDIR="${prefix}/lib/ocaml"

comment:2 Changed 17 years ago by jmpalacios (Juan Manuel Palacios)

Milestone: Port Bugs

comment:3 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: reilles@… ryandesign@… mww@… added
Summary: camlimages fails to compilecamlimages 2.2_2 fails to build: 'JCS_RGB' undeclared (first use in this function)

So, henrik, you're saying the fix is to rollback the changes made in r28539. And I can confirm this. But we really don't want to define LDFLAGS and CFLAGS in configure.env; we really do want to use configure.cflags-append and configure.ldflags-append if possible. So I'll try to figure out what went wrong.

comment:4 Changed 17 years ago by henrik@…

Personally I have had no luck applying the suggested fix under Leopard - here it might be an entirely different issue.

comment:5 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)

Fixed the problem under Tiger in r32036. Can someone please test this in Leopard (waiting 30 minutes and doing a sudo port sync first) and let us know if the problem still exists on Leopard?

comment:6 Changed 17 years ago by henrik@…

I now get a different problem under Leopard:

sudo port install camlimages---> Fetching camlimages
---> Verifying checksum(s) for camlimages
---> Extracting camlimages
---> Applying patches to camlimages
---> Configuring camlimages
---> Building camlimages with target all opt
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_camlimages/work/camlimages-2.2" && make all opt " returned error 2
Command output: if test "Xlibci_jpeg.a" = "X"; then \

ocamlc.opt -a -linkall -o ci_jpeg.cma \

jpeg.cmo oJpeg.cmo -ccopt -L/opt/local/lib -ljpeg; \

else \

ocamlmklib -linkall -o ci_jpeg \

jpeg.cmo oJpeg.cmo -L/opt/local/lib -ljpeg; \

fi

ocamlc.opt -ccopt "-I.. -O2 -I/opt/local/include" -c tiffread.c
tiffread.c:24:1: warning: "int16" redefined
In file included from /opt/local/lib/ocaml/caml/mlvalues.h:20,[[BR]]

from tiffread.c:16:[[BR]]

/opt/local/lib/ocaml/caml/compatibility.h:313:1: warning: this is the location of the previous definition
tiffread.c:25:1: warning: "uint16" redefined
/opt/local/lib/ocaml/caml/compatibility.h:314:1: warning: this is the location of the previous definition
tiffread.c: In function 'open_tiff_file_for_read':
tiffread.c:55: error: 'uint32_t' undeclared (first use in this function)
tiffread.c:55: error: (Each undeclared identifier is reported only once
tiffread.c:55: error: for each function it appears in.)
tiffread.c:55: error: syntax error before 'imagelength'
tiffread.c:57: error: 'uint16_t' undeclared (first use in this function)
tiffread.c:61: error: syntax error before 'runit'
tiffread.c:63: error: syntax error before 'photometric'
tiffread.c:65: error: 'imagelength' undeclared (first use in this function)
tiffread.c:66: error: 'imagewidth' undeclared (first use in this function)
tiffread.c:67: error: 'imagebits' undeclared (first use in this function)
tiffread.c:68: error: 'imagesample' undeclared (first use in this function)
tiffread.c:69: error: 'runit' undeclared (first use in this function)
tiffread.c:72: error: 'photometric' undeclared (first use in this function)
make[1]: * [tiffread.o] Error 2
make:
* [byt] Error 2

Error: Status 1 encountered during processing.

comment:7 Changed 17 years ago by vpvadistance@…

I just install afresh version of macports on 10.5.2 and I have exactly the same problem above (tiffread.c) Vincent

comment:8 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: reilles@… removed
Owner: changed from macports-tickets@… to reilles@…
Port: camlimages added

comment:9 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

comment:10 Changed 16 years ago by blb@…

Cc: blb@… added

Has the original issue for this ticket been resolved? The newer issue of

tiffread.c:55: error: 'uint32_t' undeclared (first use in this function)

is ticket #15753.

comment:11 Changed 16 years ago by blb@…

Resolution: worksforme
Status: newclosed

Closing, lack of response.

comment:12 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.