Dear Rooters,
I’m using ROOT5.24 and Ubuntu 9.10.
I have noticed that ROOT is declaring a structure malloc_info in mmprivate.h
and now malloc.h contains a similar declaration for a function.
/usr/include/malloc.h:149: error: ‘int malloc_info(int, FILE*)’ redeclared as different kind of symbol
/cern/root/include/mmprivate.h:144: error: previous declaration of ‘typedef union malloc_info malloc_info’
Hi again,
I’m using the compiler: gcc version 4.4.1 (Ubuntu 4.4.1-4ubuntu8)
The code I’m trying to compile uses some CAEN code that has an include to malloc.h.
When I try to compile I get that error I sent you on previous post.
Consulting both files, /usr/include/malloc.h and yours /cern/root/include/mmprivate.h I found that in fact in malloc.h exists the following code:
/* Output information about state of allocator to stream FP. */
extern int malloc_info (int __options, FILE *__fp);
and in yours the following:
[code]/* Data structure giving per-block information. */
typedef union
{
/* Heap information for a busy block. /
struct
{
/ Zero for a large block, or positive giving the
logarithm to the base two of the fragment size. /
int type;
union
{
struct
{
size_t nfree; / Free fragments in a fragmented block. /
size_t first; / First free fragment of the block. /
} frag;
/ Size (in blocks) of a large cluster. /
size_t size;
} info;
} busy;
/ Heap information for a free block (that may be the first of
a free cluster). /
struct
{
size_t size; / Size (in blocks) of a free cluster. /
size_t next; / Index of next free cluster. /
size_t prev; / Index of previous free cluster. */
} free;
} malloc_info;[/code]
Is this the reason why there is conflict? I do not understand very well what is happening…
cheers
f.
[quote=“Axel”]Hi,
I’m building with 9.10 for a while, and I never saw this issue.
What’s your compiler? What is the code you try to compile?