Number: 1999
Title: malloc.c - In function âmalloc.c:413: error: storage size of âsnâknown
Submitter: imam Toufique imam.toufique@intel.com
Date: 17 July 2010
Subsys: build/installation
Version: 2.26.3
System: SuSE Linux Enterprise Server 9/10 64-bit,
Severity: Major
Problem:
Making all in vmalloc

gmake[3]: Entering directory `/opt/build/graphviz-2.26.3/lib/vmalloc'

mkdir -p ../../FEATURE

../../iffe - set cc /opt/tools/bin/gcc -O2 -fPIC -I/opt/tools/pkgs/perl/5.8.7/include -L/opt/tools/pkgs/perl/5.8.7/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -L/opt/tools/pkgs/graphviz/2.26.3.a/lib -L/opt/tools/pkgs/graphviz/2.26.3.a/lib64 -fPIC -Wl,-rpath=/opt/tools/pkgs/perl/5.8.7/lib64:/opt/tools/pkgs/graphviz/2.26.3.a/lib64:/opt/tools/pkgs/graphviz/2.26.3.a/lib : run ../../lib/vmalloc/features/vmalloc > ../../FEATURE/vmalloc

/bin/sh ../../libtool --tag=CC --mode=compile /opt/tools/bin/gcc -O2 -fPIC -I/opt/tools/pkgs/perl/5.8.7/include -L/opt/tools/pkgs/perl/5.8.7/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -L/opt/tools/pkgs/graphviz/2.26.3.a/lib -L/opt/tools/pkgs/graphviz/2.26.3.a/lib64 -fPIC -Wl,-rpath=/opt/tools/pkgs/perl/5.8.7/lib64:/opt/tools/pkgs/graphviz/2.26.3.a/lib64:/opt/tools/pkgs/graphviz/2.26.3.a/lib -DHAVE_CONFIG_H -I. -I../.. -I/opt/tools/pkgs/perl/5.8.7/include -L/opt/tools/pkgs/perl/5.8.7/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -L/opt/tools/pkgs/graphviz/2.26.3.a/lib -L/opt/tools/pkgs/graphviz/2.26.3.a/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -g -O2 -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith -Wall -ffast-math -MT malloc.lo -MD -MP -MF .deps/malloc.Tpo -c -o malloc.lo malloc.c

libtool: compile: /opt/tools/bin/gcc -O2 -fPIC -I/opt/tools/pkgs/perl/5.8.7/include -L/opt/tools/pkgs/perl/5.8.7/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -L/opt/tools/pkgs/graphviz/2.26.3.a/lib -L/opt/tools/pkgs/graphviz/2.26.3.a/lib64 -fPIC -Wl,-rpath=/opt/tools/pkgs/perl/5.8.7/lib64:/opt/tools/pkgs/graphviz/2.26.3.a/lib64:/opt/tools/pkgs/graphviz/2.26.3.a/lib -DHAVE_CONFIG_H -I. -I../.. -I/opt/tools/pkgs/perl/5.8.7/include -L/opt/tools/pkgs/perl/5.8.7/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -L/opt/tools/pkgs/graphviz/2.26.3.a/lib -L/opt/tools/pkgs/graphviz/2.26.3.a/lib64 -I/opt/tools/pkgs/graphviz/2.26.3.a/include -g -O2 -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith -Wall -ffast-math -MT malloc.lo -MD -MP -MF .deps/malloc.Tpo -c malloc.c -fPIC -DPIC -o .libs/malloc.o

malloc.c:411: error: return type is an incomplete type

malloc.c: In function âmalloc.c:413: error: storage size of âsnâknown

malloc.c:424: warning: âith a value, in function returning voi

malloc.c:413: warning: unused variable âmake[3]: *** [malloc.lo] Error 1

gmake[3]: Leaving directory `/opt/build/graphviz-2.26.3/lib/vmalloc'


Comments:
This occurs only when I try to build with gcc 4.2.2, I can build this with gcc 3.4.2. but I need to be able to build this with gcc 4.2.2.

Comments: [ellson] There must be something else going on? I'm not having any problems building with gcc-4.4.4 on Fedora-13.

Can you send me your config.log please?

[imam] Attached is the config.log. if you do not get the attachment, please let me know, I will send from my yahoo account.

[ellson] I'm suspicious of your CC setting from your environment.

Can you please try:


    ./configure CC=/opt/tools/bin/gcc 
        --prefix=/opt/tools/graphviz/2.26.3.a --libdir=/opt/tools/graphviz/2.26.3.a/lib64 
        --with-tclsh=/opt/tools/tcl-tk/8.4.9/bin/tclsh --with-wish=/opt/tools/tcl-tk/8.4.9/bin/wish8.4

[imam] Sure I can certainly try that out tonight.

Just curious, What are you suspecting about gcc setting?

[ellson] Unless I'm misreading the config.log, you currently have:

CC="/opt/tools/bin/gcc -O2 -fPIC -I/opt/tools/perl/5.8.7/include -L/opt/tools/perl/5.8.7/lib64 -I/opt/tools/graphviz/2.26.3.a/include -L/opt/tools/graphviz/2.26.3.a/lib -L/opt/tools/graphviz/2.26.3.a/lib64 -fPIC -Wl,-rpath=/opt/tools/perl/5.8.7/lib64:/opt/tools/graphviz/2.26.3.a/lib64:/opt/tools/graphviz/2.26.3.a/lib"

which is totally the wrong way to pass in CFLAGS and LDFLAGS.

My guess is that perl has its own notion of malloc.

I could be wrong... let me know what happens.

[imam] It's looking much promising, I figured out what was incorrect in my build script. $CC was set as:


export CC="$CC $CFLAGS"

that's where "-I/opt/tools/perl/5.8.7/include -L/opt/tools/perl/5.8.7/lib64" was getting appended and as your pointed out that might very well have caused the build failures. I ran the build taking out the $CFLAGS off that line above and the builds seems to have gone through OK.

Thanks for pointing it out, I will build it now for SLES9/SLES10 platforms. I will keep you posted.
Owner: ellson
Status: Fixed (18 July 2010)