[BUILDROBOT] gcc21 fails to build tilegx-linux

Walter Lee walt@ezchip.com
Fri Feb 12 21:35:00 GMT 2016


Thanks for the bug report.  I have not been able to reproduce the link 
error in my environment, but I've committed a change to use g++ instead 
of gcc and I will see if the buildbot does better with that change.  The 
other issues I will fix when gcc is in stage 1.

Walter

On 2/7/2016 4:10 PM, Jan-Benedict Glaw wrote:
> Hi!
>
> Building current GCC on gcc21.fsffrance.org fails, see build
> http://toolchain.lug-owl.de/buildbot/show_build_details.php?id=490729:
>
> (`make all-gcc' build log at http://toolchain.lug-owl.de/buildbot/deliver_artifact.php?mode=view&id=4541729)
>
>
> g++ -fno-PIE -c   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE   -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -I. -I. -I/scratch/4/jbglaw/regular/repos/gcc/gcc -I/scratch/4/jbglaw/regular/repos/gcc/gcc/. -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../include -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libcpp/include  -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libdecnumber -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libbacktrace   -o tilegx.o -MT tilegx.o -MMD -MP -MF ./.deps/tilegx.TPo /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilegx/tilegx.c
> /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilegx/tilegx.c: In function ‘void tilegx_print_operand(FILE*, rtx, int)’:
> /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilegx/tilegx.c:5357:20: warning: format not a string literal and no format arguments [-Wformat-security]
>    fprintf (file, reg);
>                      ^
> g++ -fno-PIE -c   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE   -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -I. -I. -I/scratch/4/jbglaw/regular/repos/gcc/gcc -I/scratch/4/jbglaw/regular/repos/gcc/gcc/. -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../include -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libcpp/include  -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libdecnumber -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libbacktrace   -o linux.o -MT linux.o -MMD -MP -MF ./.deps/linux.TPo /scratch/4/jbglaw/regular/repos/gcc/gcc/config/linux.c
> gcc -I. -I/scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilegx -I/scratch/4/jbglaw/regular/repos/gcc/gcc -I/scratch/4/jbglaw/regular/repos/gcc/gcc//scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilegx -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../include  -I/scratch/4/jbglaw/regular/repos/gcc/gcc/../libcpp/include  -O2 -o gen-mul-tables -lstdc++ /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilepro/gen-mul-tables.cc;
> /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilepro/gen-mul-tables.cc: In function ‘int main()’:
> /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilepro/gen-mul-tables.cc:1315:26: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
>       (unsigned MUL_TYPE) n);
>                            ^
> /scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilepro/gen-mul-tables.cc:1323:70: warning: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
>      printf ("  {%lldll /* 0x%llx */ ,\n   {", n, (unsigned MUL_TYPE) n);
>                                                                        ^
> /tmp/ccGPqUhX.o: In function `find_sequences(ExpressionTree&, std::map<long long, ExpressionTree*, std::less<long long>, std::allocator<std::pair<long long const, ExpressionTree*> > >&)':
> gen-mul-tables.cc:(.text+0x83a): undefined reference to `operator new(unsigned long)'
> gen-mul-tables.cc:(.text+0x8f6): undefined reference to `operator new(unsigned long)'
> gen-mul-tables.cc:(.text+0x934): undefined reference to `std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
> /tmp/ccGPqUhX.o: In function `std::_Rb_tree<long long, std::pair<long long const, ExpressionTree*>, std::_Select1st<std::pair<long long const, ExpressionTree*> >, std::less<long long>, std::allocator<std::pair<long long const, ExpressionTree*> > >::_M_erase(std::_Rb_tree_node<std::pair<long long const, ExpressionTree*> >*)':
> gen-mul-tables.cc:(.text._ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E[_ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E]+0x2f): undefined reference to `operator delete(void*)'
> /tmp/ccGPqUhX.o: In function `std::_Rb_tree<long long, std::pair<long long const, ExpressionTree*>, std::_Select1st<std::pair<long long const, ExpressionTree*> >, std::less<long long>, std::allocator<std::pair<long long const, ExpressionTree*> > >::_M_get_insert_unique_pos(long long const&)':
> gen-mul-tables.cc:(.text._ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE24_M_get_insert_unique_posERS1_[_ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE24_M_get_insert_unique_posERS1_]+0x7f): undefined reference to `std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
> /tmp/ccGPqUhX.o: In function `std::_Rb_tree<long long, std::pair<long long const, ExpressionTree*>, std::_Select1st<std::pair<long long const, ExpressionTree*> >, std::less<long long>, std::allocator<std::pair<long long const, ExpressionTree*> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<long long const, ExpressionTree*> >, long long const&)':
> gen-mul-tables.cc:(.text._ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS1_[_ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS1_]+0x39): undefined reference to `std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
> gen-mul-tables.cc:(.text._ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS1_[_ZNSt8_Rb_treeIxSt4pairIKxP14ExpressionTreeESt10_Select1stIS4_ESt4lessIxESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS1_]+0x6f): undefined reference to `std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
> /tmp/ccGPqUhX.o: In function `main':
> gen-mul-tables.cc:(.text.startup+0x317): undefined reference to `std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
> /tmp/ccGPqUhX.o:(.eh_frame+0x6d7): undefined reference to `__gxx_personality_v0'
> collect2: error: ld returned 1 exit status
> make[1]: *** [/scratch/4/jbglaw/regular/repos/gcc/gcc/config/tilegx/mul-tables.c] Error 1
> make[1]: Leaving directory `/scratch/4/jbglaw/regular/build/tilegx-linux/build-gcc/gcc'
> make: *** [all-gcc] Error 2
>
>
>
> The fprintf() warning could easily be silenced with a "%s". The next
> two warnings can also be cured with simple casts. However, I'm not
> sure about the linking error. `-lstdc++' is there, maybe it's too
> early? Or just compile/link it with g++ instead of gcc?
>
> MfG, JBG
>



More information about the Gcc mailing list