Hello,
I have an error when i try to compile Gem with pd 0.42.6 on Ubuntu 11.04 (natty) :
libtool: link: ranlib .libs/libBase.a libtool: link: ( cd ".libs" && rm -f "libBase.la" && ln -s "../libBase.la" "libBase.la" ) make[3]: Leaving directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src/Base' Making all in plugins make[3]: Entering directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src/plugins' Making all in imageMAGICK make[4]: Entering directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src/plugins/imageMAGICK' /bin/sh ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../../src -I./../.. -DPD -fopenmp -I/usr/include/ImageMagick -g -O2 -freg-struct-return -O3 -falign-loops -falign-functions -falign-jumps -funroll-loops -ffast-math -mmmx -MT gem_imageMAGICK_la-imageMAGICK.lo -MD -MP -MF .deps/gem_imageMAGICK_la-imageMAGICK.Tpo -c -o gem_imageMAGICK_la-imageMAGICK.lo `test -f 'imageMAGICK.cpp' || echo './'`imageMAGICK.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../src -I./../.. -DPD -fopenmp -I/usr/include/ImageMagick -g -O2 -freg-struct-return -O3 -falign-loops -falign-functions -falign-jumps -funroll-loops -ffast-math -mmmx -MT gem_imageMAGICK_la-imageMAGICK.lo -MD -MP -MF .deps/gem_imageMAGICK_la-imageMAGICK.Tpo -c imageMAGICK.cpp -fPIC -DPIC -o .libs/gem_imageMAGICK_la-imageMAGICK.o imageMAGICK.cpp: In constructor gem::plugins::imageMAGICK::imageMAGICK(): imageMAGICK.cpp:63:54: error: invalid conversion from long unsigned int* to size_t* imageMAGICK.cpp:63:54: error: initializing argument 2 of char** MagickCore::GetMimeList(const char*, size_t*, MagickCore::ExceptionInfo*) make[4]: *** [gem_imageMAGICK_la-imageMAGICK.lo] Error 1 make[4]: Leaving directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src/plugins/imageMAGICK' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src/plugins' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/rybn/RYBN/pd-gem/trunk/Gem/src' make: *** [all-recursive] Error 1
here the output of $ :./configure :
Strip : strip
Install path : /usr/local
pure-data: version : 0.42 extension : pd_linux
used optional libraries:
font-rendering : FTGL
image-support use ImageMagick : yes use TIFF : yes use JPEG : yes moviefile-support use PLUGINS : yes use mpeg : no use mpeg-3 : yes use QuickTime : yes use aviplay : yes use gmerlin : no capture-support use PLUGINS : yes use v4l : use ieee1394 : no
Now run make ...
Thanx for help. ++
Jack
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 07/12/2011 08:07 PM, jack@rybn.org wrote:
Hello,
I have an error when i try to compile Gem with pd 0.42.6 on Ubuntu 11.04 (natty) :
imageMAGICK.cpp: In constructor ?gem::plugins::imageMAGICK::imageMAGICK()?: imageMAGICK.cpp:63:54: error: invalid conversion from ?long unsigned int*? to ?size_t*?
i really strongly suspect that this machine has the wrong headers installed all over (just like yesterday with the libquicktime-dev headers claiming to be "1.0.0" but really being 0,9.x
please check in /usr/include/ImageMagick/magick/version.h the value of: - - MagickLibVersion - - MagickLibInterface - - MagickLibVersionNumber
fgmsdr IOhannes
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2011-07-12 22:21, IOhannes m zmölnig wrote:
On 07/12/2011 08:07 PM, jack@rybn.org wrote:
Hello,
I have an error when i try to compile Gem with pd 0.42.6 on Ubuntu 11.04 (natty) :
imageMAGICK.cpp: In constructor ?gem::plugins::imageMAGICK::imageMAGICK()?: imageMAGICK.cpp:63:54: error: invalid conversion from ?long unsigned int*? to ?size_t*?
i really strongly suspect that this machine has the wrong headers installed all over (just like yesterday with the libquicktime-dev headers claiming to be "1.0.0" but really being 0,9.x
though given that autobuild has the same problems [1], i'll try to figure it out.
fmasr IOhannes
[1] http://lists.puredata.info/pipermail/pd-cvs/2011-07/022948.html
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2011-07-13 09:00, IOhannes m zmoelnig wrote:
though given that autobuild has the same problems [1], i'll try to figure it out.
uha, that was nasty: the problem is that ImageMagick changed the API for GetMimeList from: GetMimeList(const char *,unsigned long *,ExceptionInfo *) to: GetMimeList(const char *,size_t *,ExceptionInfo *)
now, "size_t" and "unsigned long" are usually virtually identical; unfortunately modern gcc ignores this and (rightly) claims that using "size_t*" instead of "unsigned long*" is non-standard-conformant and refuses to compile.
luckily, ImageMagick has some nice macro definitions for API-versions so we can conditionally use "unsigned long*" or "size_t*" for the second parameter, depending on the value of these defines.
unfortunately, ImageMagick changed the API between versions 6.6.2-0 and 6.6.2-1, and the bugfix version ("addendum" in magick speak) is not represented in those nifty defines mentioned above. so we canNOT use the correct type based on those defines.
even more unfortunate, ubuntu/natty comes with a imagemagick of the 6.6.2 family!
given the widespread use of ubuntu and the fact that there are ten releases in 6.6.2 (ranging from 6.6.2-0 to 6.6.2-9), nine of which adhere to the new API and only one of which uses the old one, i have tightened the check to use the new API for all releases above (and including) 6.6.2;
this will fail to compile on any machine that has 6.6.2-0 installed. (i don't know whether there are any distributions shipping that version)
if you (anybody) happen(s) to have this exact version installed, a simple workaround is to pass the "-fpermissive" flag to CXXFLAGS (assuming you are using gcc), which will allow the nonconformant code to compile. then you only have to pray that "size_t" and "unsigned int" are truely identical.
if it doesn't work, upgrade your ImageMagick installation.
fgamsdr IOhannes
OK, thanx a lot ! It is working fine now. ++
Jack
Le mercredi 13 juillet 2011 à 12:09 +0200, IOhannes m zmoelnig a écrit :
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2011-07-13 09:00, IOhannes m zmoelnig wrote:
though given that autobuild has the same problems [1], i'll try to figure it out.
uha, that was nasty: the problem is that ImageMagick changed the API for GetMimeList from: GetMimeList(const char *,unsigned long *,ExceptionInfo *) to: GetMimeList(const char *,size_t *,ExceptionInfo *)
now, "size_t" and "unsigned long" are usually virtually identical; unfortunately modern gcc ignores this and (rightly) claims that using "size_t*" instead of "unsigned long*" is non-standard-conformant and refuses to compile.
luckily, ImageMagick has some nice macro definitions for API-versions so we can conditionally use "unsigned long*" or "size_t*" for the second parameter, depending on the value of these defines.
unfortunately, ImageMagick changed the API between versions 6.6.2-0 and 6.6.2-1, and the bugfix version ("addendum" in magick speak) is not represented in those nifty defines mentioned above. so we canNOT use the correct type based on those defines.
even more unfortunate, ubuntu/natty comes with a imagemagick of the 6.6.2 family!
given the widespread use of ubuntu and the fact that there are ten releases in 6.6.2 (ranging from 6.6.2-0 to 6.6.2-9), nine of which adhere to the new API and only one of which uses the old one, i have tightened the check to use the new API for all releases above (and including) 6.6.2;
this will fail to compile on any machine that has 6.6.2-0 installed. (i don't know whether there are any distributions shipping that version)
if you (anybody) happen(s) to have this exact version installed, a simple workaround is to pass the "-fpermissive" flag to CXXFLAGS (assuming you are using gcc), which will allow the nonconformant code to compile. then you only have to pray that "size_t" and "unsigned int" are truely identical.
if it doesn't work, upgrade your ImageMagick installation.
fgamsdr IOhannes -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk4dbtQACgkQkX2Xpv6ydvTfHACgtDdwbN9CIB43THtWbQ+fxZaN 1E0An19FZMqUONk+eiRkRH1RzJ5/6jFn =yZUE -----END PGP SIGNATURE-----
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev