Morning Everyone:

I apologize if this is supposed to be on another list.  I went to go
recompile the ImageMagick rpm from the source rpm on the 6.1 CD.  I
installed and was able to type:

   rpm -ba --target i686 ImageMagick.spec > results 2>&1 

This shows me all of the stuff that normally scrolls off the screen when
recompiling.

Well, one of the lines that comes up when rebuilding is:

   In file included from ../magick/magick.h:43,
                    from Magick.xs:78:
   /usr/include/assert.h:79: warning: `assert' redefined
   /usr/lib/perl5/5.00503/i386-linux/CORE/perl.h:1501: warning: this is
   the location of the previous definition

So, I went and looked in the file /usr/include/assert.h and saw:


   # define assert(expr)                                               \
     ((void) ((expr) ? 0 :                                             \
              (__assert_fail (__STRING(expr),                          \
                           __FILE__, __LINE__, __ASSERT_FUNCTION), 0)))

I also went and looked in /usr/lib/perl5/5.00503/i386-linux/CORE/perl.h
and saw:

   #ifndef assert  /* <assert.h> might have been included somehow */
   #define assert(what)    DEB( {                                      \
            if (!(what)) {                                             \
               croak("Assertion failed: file \"%s\", line %d",         \
                   __FILE__, __LINE__);                                \


Now, from what I understand, if I install the perl RPM, the perl lib gets
installed.  Further, it appears that it correctly checks to see if assert
has been defined before, so it won't try to redefine it.  However,
assert.h doesn't have a similar check.  What I'm trying to figure out is
if assert.h is a default header file for the standard gcc library, or if
it only gets installed as a result of installing the ImageMagick rpm.

Thanks.

- Mike


-- 
To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe"
as the Subject.

Reply via email to