Hi, I am having some difficulties building llvm on Itanium. My procedure for building LLVM is: cd /liberty/llvm.ia64/llvm-2.1 ./configure make ENABLE_OPTIZED=1 cd /liberty/llvm.ia64/obj /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/configure --prefix=/liberty/llvm.ia64/install --enable-llvm=/liberty/llvm.ia64/llvm-2.1/ --enable-languages=c,c++ --disable-shared The build of llvm seems to succeed, but llvm-gcc dies with the following messages: gcc -Wall -c -DUSE_LIBUNWIND_EXCEPTIONS -g -fkeep-inline-functions -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-definition -Wmissing-format-attribute -fno-common -DHAVE_CONFIG_H -I. -I. -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/. -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../include -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libcpp/include -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libdecnumber -I../libdecnumber -I/liberty/llvm.ia64/llvm-2.1/include -I/liberty/llvm.ia64/llvm-2.1//include -DENABLE_LLVM -I/liberty/llvm.ia64/llvm-2.1/include -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c -o dbxout.o In file included from /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c:4365: ./gt-dbxout.h: In function ‘gt_ggc_ma_type_queue’: ./gt-dbxout.h:83: error: ‘type_queue’ undeclared (first use in this function) ./gt-dbxout.h:83: error: (Each undeclared identifier is reported only once ./gt-dbxout.h:83: error: for each function it appears in.) ./gt-dbxout.h:85: error: ‘type_queue_index’ undeclared (first use in this function) ./gt-dbxout.h: In function ‘gt_pch_pa_type_queue’: ./gt-dbxout.h:99: error: ‘type_queue’ undeclared (first use in this function) ./gt-dbxout.h:101: error: ‘type_queue_index’ undeclared (first use in this function) ./gt-dbxout.h: In function ‘gt_pch_na_type_queue’: ./gt-dbxout.h:114: error: ‘type_queue’ undeclared (first use in this function) ./gt-dbxout.h:116: error: ‘type_queue_index’ undeclared (first use in this function) ./gt-dbxout.h: At top level: ./gt-dbxout.h:205: error: ‘type_queue’ undeclared here (not in a function) ./gt-dbxout.h:250: error: ‘type_queue_size’ undeclared here (not in a function) ./gt-dbxout.h:250: error: initializer element is not constant ./gt-dbxout.h:250: error: (near initialization for ‘gt_pch_rs_gt_dbxout_h[0].base’) ./gt-dbxout.h:250: error: initializer element is not constant ./gt-dbxout.h:250: error: (near initialization for ‘gt_pch_rs_gt_dbxout_h[0].stride’) ./gt-dbxout.h:251: error: ‘type_queue_index’ undeclared here (not in a function) ./gt-dbxout.h:251: error: initializer element is not constant ./gt-dbxout.h:251: error: (near initialization for ‘gt_pch_rs_gt_dbxout_h[1].base’) ./gt-dbxout.h:251: error: initializer element is not constant ./gt-dbxout.h:251: error: (near initialization for ‘gt_pch_rs_gt_dbxout_h[1].stride’) make[3]: *** [dbxout.o] Error 1 make[2]: *** [all-stage1-gcc] Error 2 make[1]: *** [stage1-bubble] Error 2 make: *** [all] Error 2 My system is CentOS 4.5, which includes gcc 3.4.6, flex 2.5.4, m4 1.4.1, and bison 1.875c. I have attempted to build llvm-gcc with a self-built copies of gcc 4.2.1 and bison 2.3 which yielded similar error messages. I have diff'd the Itanium generated copy of gt-dbxout.h against the gt-dbxout.h from a successful x86-64 build and found no changes. Any help would be greatly appreciated. Tom
Hi, I've figured out a little more. #if defined DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO guards the declaration of type_queue, however, neither is defined on Intanium. In gt-dbxout.h type_queue's uses are unguarded and thus are undefined on Itanium. When I compared llvm-gcc's gt-dbxout.h with FSF gcc's, I found that type_queue was never used in FSF gcc's version. Does anyone know what DBX_DEBUGGING_INFO and XCOFF_DEBUGGING_INFO signify? I know that gt-dbxout.h is machine generated. Does anyone know where and how this machine generation occurs? Thanks. Tom Thomas Jablin wrote:> Hi, > > I am having some difficulties building llvm on Itanium. My procedure for > building LLVM is: > > cd /liberty/llvm.ia64/llvm-2.1 > ./configure > make ENABLE_OPTIZED=1 > cd /liberty/llvm.ia64/obj > /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/configure > --prefix=/liberty/llvm.ia64/install > --enable-llvm=/liberty/llvm.ia64/llvm-2.1/ --enable-languages=c,c++ > --disable-shared > > The build of llvm seems to succeed, but llvm-gcc dies with the following > messages: > > gcc -Wall -c -DUSE_LIBUNWIND_EXCEPTIONS -g -fkeep-inline-functions > -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes > -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros > -Wold-style-definition -Wmissing-format-attribute -fno-common > -DHAVE_CONFIG_H -I. -I. -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc > -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/. > -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../include > -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libcpp/include > -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libdecnumber > -I../libdecnumber -I/liberty/llvm.ia64/llvm-2.1/include > -I/liberty/llvm.ia64/llvm-2.1//include -DENABLE_LLVM > -I/liberty/llvm.ia64/llvm-2.1/include -D_DEBUG -D_GNU_SOURCE > -D__STDC_LIMIT_MACROS > /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c -o dbxout.o > In file included from > /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c:4365: > ./gt-dbxout.h: In function ‘gt_ggc_ma_type_queue’: > ./gt-dbxout.h:83: error: ‘type_queue’ undeclared (first use in this > function) > ./gt-dbxout.h:83: error: (Each undeclared identifier is reported only once > ./gt-dbxout.h:83: error: for each function it appears in.) > ./gt-dbxout.h:85: error: ‘type_queue_index’ undeclared (first use in > this function) > ./gt-dbxout.h: In function ‘gt_pch_pa_type_queue’: > ./gt-dbxout.h:99: error: ‘type_queue’ undeclared (first use in this > function) > ./gt-dbxout.h:101: error: ‘type_queue_index’ undeclared (first use in > this function) > ./gt-dbxout.h: In function ‘gt_pch_na_type_queue’: > ./gt-dbxout.h:114: error: ‘type_queue’ undeclared (first use in this > function) > ./gt-dbxout.h:116: error: ‘type_queue_index’ undeclared (first use in > this function) > ./gt-dbxout.h: At top level: > ./gt-dbxout.h:205: error: ‘type_queue’ undeclared here (not in a function) > ./gt-dbxout.h:250: error: ‘type_queue_size’ undeclared here (not in a > function) > ./gt-dbxout.h:250: error: initializer element is not constant > ./gt-dbxout.h:250: error: (near initialization for > ‘gt_pch_rs_gt_dbxout_h[0].base’) > ./gt-dbxout.h:250: error: initializer element is not constant > ./gt-dbxout.h:250: error: (near initialization for > ‘gt_pch_rs_gt_dbxout_h[0].stride’) > ./gt-dbxout.h:251: error: ‘type_queue_index’ undeclared here (not in a > function) > ./gt-dbxout.h:251: error: initializer element is not constant > ./gt-dbxout.h:251: error: (near initialization for > ‘gt_pch_rs_gt_dbxout_h[1].base’) > ./gt-dbxout.h:251: error: initializer element is not constant > ./gt-dbxout.h:251: error: (near initialization for > ‘gt_pch_rs_gt_dbxout_h[1].stride’) > make[3]: *** [dbxout.o] Error 1 > make[2]: *** [all-stage1-gcc] Error 2 > make[1]: *** [stage1-bubble] Error 2 > make: *** [all] Error 2 > > My system is CentOS 4.5, which includes gcc 3.4.6, flex 2.5.4, m4 1.4.1, > and bison 1.875c. I have attempted to build llvm-gcc with a self-built > copies of gcc 4.2.1 and bison 2.3 which yielded similar error messages. > I have diff'd the Itanium generated copy of gt-dbxout.h against the > gt-dbxout.h from a successful x86-64 build and found no changes. Any > help would be greatly appreciated. > > Tom > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >
On Jan 10, 2008, at 10:29 AM, Thomas Jablin wrote:> Hi, > > I've figured out a little more. #if defined DBX_DEBUGGING_INFO || > XCOFF_DEBUGGING_INFO guards the declaration of type_queue, however, > neither is defined on Intanium. In gt-dbxout.h type_queue's uses are > unguarded and thus are undefined on Itanium. When I compared llvm- > gcc's > gt-dbxout.h with FSF gcc's, I found that type_queue was never used in > FSF gcc's version. Does anyone know what DBX_DEBUGGING_INFO and > XCOFF_DEBUGGING_INFO signify?DBX_DEBUGGING_INFO enables "stabs" debugging format. dbxout.c is responsible to generate debugging information in this format and I beleive type_queue is defined in dbxout.c If your platform is not using stabs debugging format (nowadays most of the platforms use DWARF format) then it won't define DBX_DEBUGGING_INFO.> I know that gt-dbxout.h is machine > generated. Does anyone know where and how this machine generation > occurs? Thanks. > Tom > > Thomas Jablin wrote: >> Hi, >> >> I am having some difficulties building llvm on Itanium. My >> procedure for >> building LLVM is: >> >> cd /liberty/llvm.ia64/llvm-2.1 >> ./configure >> make ENABLE_OPTIZED=1 >> cd /liberty/llvm.ia64/obj >> /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/configure >> --prefix=/liberty/llvm.ia64/install >> --enable-llvm=/liberty/llvm.ia64/llvm-2.1/ --enable-languages=c,c++ >> --disable-shared >> >> The build of llvm seems to succeed, but llvm-gcc dies with the >> following >> messages: >> >> gcc -Wall -c -DUSE_LIBUNWIND_EXCEPTIONS -g -fkeep-inline-functions >> -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes >> -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros >> -Wold-style-definition -Wmissing-format-attribute -fno-common >> -DHAVE_CONFIG_H -I. -I. -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/ >> gcc >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/. >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../include >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libcpp/include >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libdecnumber >> -I../libdecnumber -I/liberty/llvm.ia64/llvm-2.1/include >> -I/liberty/llvm.ia64/llvm-2.1//include -DENABLE_LLVM >> -I/liberty/llvm.ia64/llvm-2.1/include -D_DEBUG -D_GNU_SOURCE >> -D__STDC_LIMIT_MACROS >> /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c -o dbxout.o >> In file included from >> /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c:4365: >> ./gt-dbxout.h: In function ‘gt_ggc_ma_type_queue’: >> ./gt-dbxout.h:83: error: ‘type_queue’ undeclared (first use in this >> function) >> ./gt-dbxout.h:83: error: (Each undeclared identifier is reported >> only once >> ./gt-dbxout.h:83: error: for each function it appears in.) >> ./gt-dbxout.h:85: error: ‘type_queue_index’ undeclared (first use in >> this function) >> ./gt-dbxout.h: In function ‘gt_pch_pa_type_queue’: >> ./gt-dbxout.h:99: error: ‘type_queue’ undeclared (first use in this >> function) >> ./gt-dbxout.h:101: error: ‘type_queue_index’ undeclared (first use in >> this function) >> ./gt-dbxout.h: In function ‘gt_pch_na_type_queue’: >> ./gt-dbxout.h:114: error: ‘type_queue’ undeclared (first use in this >> function) >> ./gt-dbxout.h:116: error: ‘type_queue_index’ undeclared (first use in >> this function) >> ./gt-dbxout.h: At top level: >> ./gt-dbxout.h:205: error: ‘type_queue’ undeclared here (not in a >> function) >> ./gt-dbxout.h:250: error: ‘type_queue_size’ undeclared here (not in a >> function) >> ./gt-dbxout.h:250: error: initializer element is not constant >> ./gt-dbxout.h:250: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[0].base’) >> ./gt-dbxout.h:250: error: initializer element is not constant >> ./gt-dbxout.h:250: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[0].stride’) >> ./gt-dbxout.h:251: error: ‘type_queue_index’ undeclared here (not >> in a >> function) >> ./gt-dbxout.h:251: error: initializer element is not constant >> ./gt-dbxout.h:251: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[1].base’) >> ./gt-dbxout.h:251: error: initializer element is not constant >> ./gt-dbxout.h:251: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[1].stride’) >> make[3]: *** [dbxout.o] Error 1 >> make[2]: *** [all-stage1-gcc] Error 2 >> make[1]: *** [stage1-bubble] Error 2 >> make: *** [all] Error 2 >> >> My system is CentOS 4.5, which includes gcc 3.4.6, flex 2.5.4, m4 >> 1.4.1, >> and bison 1.875c. I have attempted to build llvm-gcc with a self- >> built >> copies of gcc 4.2.1 and bison 2.3 which yielded similar error >> messages. >> I have diff'd the Itanium generated copy of gt-dbxout.h against the >> gt-dbxout.h from a successful x86-64 build and found no changes. Any >> help would be greatly appreciated. >> >> Tom >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev- Devang
On Jan 10, 2008, at 10:29 AM, Thomas Jablin wrote:> Hi, > > I've figured out a little more. #if defined DBX_DEBUGGING_INFO || > XCOFF_DEBUGGING_INFO guards the declaration of type_queue, however, > neither is defined on Intanium. In gt-dbxout.h type_queue's uses are > unguarded and thus are undefined on Itanium. When I compared llvm- > gcc's > gt-dbxout.h with FSF gcc's, I found that type_queue was never used in > FSF gcc's version. Does anyone know what DBX_DEBUGGING_INFO and > XCOFF_DEBUGGING_INFO signify? I know that gt-dbxout.h is machine > generated. Does anyone know where and how this machine generation > occurs? Thanks. > TomI believe the code that does it is in gengtype* . Not sure what the executable is called. This is almost certainly a configuration issue.> Thomas Jablin wrote: >> Hi, >> >> I am having some difficulties building llvm on Itanium. My >> procedure for >> building LLVM is: >> >> cd /liberty/llvm.ia64/llvm-2.1 >> ./configure >> make ENABLE_OPTIZED=1 >> cd /liberty/llvm.ia64/obj >> /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/configure >> --prefix=/liberty/llvm.ia64/install >> --enable-llvm=/liberty/llvm.ia64/llvm-2.1/ --enable-languages=c,c++ >> --disable-shared >> >> The build of llvm seems to succeed, but llvm-gcc dies with the >> following >> messages: >> >> gcc -Wall -c -DUSE_LIBUNWIND_EXCEPTIONS -g -fkeep-inline-functions >> -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes >> -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros >> -Wold-style-definition -Wmissing-format-attribute -fno-common >> -DHAVE_CONFIG_H -I. -I. -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/ >> gcc >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/. >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../include >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libcpp/include >> -I/liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/../libdecnumber >> -I../libdecnumber -I/liberty/llvm.ia64/llvm-2.1/include >> -I/liberty/llvm.ia64/llvm-2.1//include -DENABLE_LLVM >> -I/liberty/llvm.ia64/llvm-2.1/include -D_DEBUG -D_GNU_SOURCE >> -D__STDC_LIMIT_MACROS >> /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c -o dbxout.o >> In file included from >> /liberty/llvm.ia64/llvm-gcc4.2-2.1.source/gcc/dbxout.c:4365: >> ./gt-dbxout.h: In function ‘gt_ggc_ma_type_queue’: >> ./gt-dbxout.h:83: error: ‘type_queue’ undeclared (first use in this >> function) >> ./gt-dbxout.h:83: error: (Each undeclared identifier is reported >> only once >> ./gt-dbxout.h:83: error: for each function it appears in.) >> ./gt-dbxout.h:85: error: ‘type_queue_index’ undeclared (first use in >> this function) >> ./gt-dbxout.h: In function ‘gt_pch_pa_type_queue’: >> ./gt-dbxout.h:99: error: ‘type_queue’ undeclared (first use in this >> function) >> ./gt-dbxout.h:101: error: ‘type_queue_index’ undeclared (first use in >> this function) >> ./gt-dbxout.h: In function ‘gt_pch_na_type_queue’: >> ./gt-dbxout.h:114: error: ‘type_queue’ undeclared (first use in this >> function) >> ./gt-dbxout.h:116: error: ‘type_queue_index’ undeclared (first use in >> this function) >> ./gt-dbxout.h: At top level: >> ./gt-dbxout.h:205: error: ‘type_queue’ undeclared here (not in a >> function) >> ./gt-dbxout.h:250: error: ‘type_queue_size’ undeclared here (not in a >> function) >> ./gt-dbxout.h:250: error: initializer element is not constant >> ./gt-dbxout.h:250: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[0].base’) >> ./gt-dbxout.h:250: error: initializer element is not constant >> ./gt-dbxout.h:250: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[0].stride’) >> ./gt-dbxout.h:251: error: ‘type_queue_index’ undeclared here (not >> in a >> function) >> ./gt-dbxout.h:251: error: initializer element is not constant >> ./gt-dbxout.h:251: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[1].base’) >> ./gt-dbxout.h:251: error: initializer element is not constant >> ./gt-dbxout.h:251: error: (near initialization for >> ‘gt_pch_rs_gt_dbxout_h[1].stride’) >> make[3]: *** [dbxout.o] Error 1 >> make[2]: *** [all-stage1-gcc] Error 2 >> make[1]: *** [stage1-bubble] Error 2 >> make: *** [all] Error 2 >> >> My system is CentOS 4.5, which includes gcc 3.4.6, flex 2.5.4, m4 >> 1.4.1, >> and bison 1.875c. I have attempted to build llvm-gcc with a self- >> built >> copies of gcc 4.2.1 and bison 2.3 which yielded similar error >> messages. >> I have diff'd the Itanium generated copy of gt-dbxout.h against the >> gt-dbxout.h from a successful x86-64 build and found no changes. Any >> help would be greatly appreciated. >> >> Tom >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev