[Kde-imaging] library versioning question

Gilles Caulier caulier.gilles at kdemail.net
Mon Sep 25 10:25:03 CEST 2006


On Monday 25 September 2006 08:10, Seb Ruiz wrote:
> On 25/09/06, Gilles Caulier <caulier.gilles at kdemail.net> wrote:
> > We are already talking about lib version with Achim using IRC channel in
> > the past. If i rememeber, --version-info need to be changed... and i'm so
> > surprise than nobody have fixed that in svn.
>
> Speaking of which, what irc channel do you guys hangout in. I prefer
> irc over email.

Seb,

I have an indeep technical question for you. Like you came from Amarok team, 
perhaps you have already talk about...

My problem is relevant of dcraw program used in Rawconverter plugin (and also 
digiKam)

Actually, we using an external instance of dcraw program. dcraw is a pure C 
Ansi implementation. It used to decode Raw image data to RGB color space.

We have some problems with old dcraw versions. A lots of users report 
compatibilty dysfonctions, because dcraw command line options changes 
reguliary. There is no compatibility with command options.

To have contacted the dcraw author, he will take a care about this problem in 
the future, but the problem will exist during any years...

My idea to solve this problem at now, is to include dcraw source code itself 
into the plugin. We can just compile dcraw.c program to generate a dedicaced 
kipidcraw binary program witch will be used by the plugin instead dcraw. Like 
this we using a full tested and compatible dcraw version.

The dcraw.c implementation embedded into kipi plugin will not be untouched. 

My problem using this way is to compile dcraw.c implementation with all C 
options used by kde project. I have a problem with the "-std=iso9899:1990" 
gcc option witch is uncompatible with the current implementation. Look like 
the dcraw compilation failed in my computer (here compiled into the digiKam 
core) :

if gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../digikam/digikam 
-I/opt/kde3/include -I/usr/lib/qt3/include -I/usr/X11R6/include   
-DQT_THREAD_SUPPORT  -D_REENTRANT -w -std=iso9899:1990 -W -Wall 
-Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes 
-Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -g3 -fno-inline   
-Wformat-security -Wmissing-format-attribute -MT digikamdcraw-dcraw.o -MD -MP 
-MF ".deps/digikamdcraw-dcraw.Tpo" -c -o digikamdcraw-dcraw.o `test -f 
'dcraw.c' || echo './'`dcraw.c; \
then mv -f ".deps/digikamdcraw-dcraw.Tpo" ".deps/digikamdcraw-dcraw.Po"; else 
rm -f ".deps/digikamdcraw-dcraw.Tpo"; exit 1; fi
In file included from dcraw.c:50:
/usr/include/lcms.h:1340: error: expected â=â, â,â, â;â, âasmâ or 
â__attribute__â before âintâ
/usr/include/lcms.h:1366: error: expected â=â, â,â, â;â, âasmâ or 
â__attribute__â before âWORDâ
/usr/include/lcms.h:1417: error: expected â=â, â,â, â;â, âasmâ or 
â__attribute__â before âFixed32â
/usr/include/lcms.h:1418: error: expected â=â, â,â, â;â, âasmâ or 
â__attribute__â before âintâ
make: *** [digikamdcraw-dcraw.o] Erreur 1

In the Makefile.am, i have this options :

...
#-- dcraw binary -------------------------------------------------

bin_PROGRAMS = digikamdcraw

digikamdcraw_CFLAGS = -w

digikamdcraw_SOURCES = dcraw.c

digikamdcraw_LDFLAGS = -O4 -lm -ljpeg -llcms
...

In fact, all compile fine if i remove by hand the "-std=iso9899:1990" gcc 
option from the command line !

My question is simple : witch automake command i must use into the Makefile.am 
to force dcraw compilation to unuse this gcc option ? 

Thanks in advance for your help

Gilles



More information about the Kde-imaging mailing list