Toolchain compilation issue for gcc-4.2.1 in LTIB

Asked by Pradeepa Senanayake

Hello,

I'm trying to include GCC ARM toolchain to one of the development boards running the following Kernel.

root@freescale ~$ uname -a
Linux freescale 3.0.35-2666-gbdde708 #1 SMP PREEMPT Fri Aug 16 10:43:44 CST 2013 armv7l GNU/Linux

I'm using LTIB to include the gcc package. Since there is a gcc compilation issue I guess this is the right place to ask the question.

It looks like the LTIB is using gcc-4.2.1 source and trying to cross compile it to the ARM architecture. This is the output of ./ltib -p gcc -m scbuild

Processing: gcc
=================
Build path taken because: directory build, build key set, no prebuilt rpm,

rpmbuild --dbpath /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rootfs//var/lib/rpm --target arm --define '_unpackaged_files_terminate_build 0' --define '_target_cpu arm' --define '__strip strip' --define '_topdir /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm' --define '_prefix /usr' --define '_tmppath /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp' --define '_rpmdir /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/RPMS' --define '_mandir /usr/share/man' --define '_sysconfdir /etc' --define '_localstatedir /var' -bc --short-circuit /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp/gcc.spec
Building target platforms: arm
Building for target arm
...
...
etc.

After around 15 minutes the compilation fails giving the following errors.

--------------------------------------->>>

arm-none-linux-gnueabi-c++ -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/../gcc -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/arm-none-linux-gnueabi -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/libsupc++ -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -O2 -D_GNU_SOURCE -c /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/libsupc++/eh_alloc.cc -fPIC -DPIC -o eh_alloc.o
In file included from /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/libsupc++/eh_alloc.cc:37:0:
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring: In function 'void* std::memchr(void*, int, size_t)':
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:101:40: error: 'void* std::memchr(void*, int, size_t)' conflicts with previous using declaration 'void* memchr(void*, int, size_t)'
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:102:57: error: invalid conversion from 'const void*' to 'void*' [-fpermissive]
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring: In function 'char* std::strchr(char*, int)':
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:107:29: error: 'char* std::strchr(char*, int)' conflicts with previous using declaration 'char* strchr(char*, int)'
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring: In function 'char* std::strpbrk(char*, const char*)':
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:113:39: error: 'char* std::strpbrk(char*, const char*)' conflicts with previous using declaration 'char* strpbrk(char*, const char*)'
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring: In function 'char* std::strrchr(char*, int)':
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:119:30: error: 'char* std::strrchr(char*, int)' conflicts with previous using declaration 'char* strrchr(char*, int)'
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring: In function 'char* std::strstr(char*, const char*)':
/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:125:38: error: 'char* std::strstr(char*, const char*)' conflicts with previous using declaration 'char* strstr(char*, const char*)'
make[4]: *** [eh_alloc.lo] Error 1
make[4]: Leaving directory `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/libsupc++'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3'
make[1]: *** [all-target-libstdc++-v3] Error 2
make[1]: Leaving directory `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc'
make: *** [all] Error 2
error: Bad exit status from /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp/rpm-tmp.66909 (%build)

RPM build errors:
    Bad exit status from /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp/rpm-tmp.66909 (%build)
Build time for gcc: 1462 seconds

Failed building gcc

---------------------------------------<<<

Is this a fixed issue? This is the first time I'm building a toolchain. So am I missing something?

Thank you in advance.

Question information

Language:
English Edit question
Status:
Answered
For:
GNU Arm Embedded Toolchain Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Joey Ye (jinyun-ye) said :
#1

Pradeepa, this forum only supports GCC released from GCC-arm-embedded
launchpad project. The GCC 4.2.1 is out of scope. Also your issue looks to
me an application source code problem rather than a compiler problem.
On Mar 25, 2015 11:51 AM, "Pradeepa Senanayake" <
<email address hidden>> wrote:

> New question #264152 on GCC ARM Embedded:
> https://answers.launchpad.net/gcc-arm-embedded/+question/264152
>
> Hello,
>
> I'm trying to include GCC ARM toolchain to one of the development boards
> running the following Kernel.
>
> root@freescale ~$ uname -a
> Linux freescale 3.0.35-2666-gbdde708 #1 SMP PREEMPT Fri Aug 16 10:43:44
> CST 2013 armv7l GNU/Linux
>
> I'm using LTIB to include the gcc package. Since there is a gcc
> compilation issue I guess this is the right place to ask the question.
>
> It looks like the LTIB is using gcc-4.2.1 source and trying to cross
> compile it to the ARM architecture. This is the output of ./ltib -p gcc -m
> scbuild
>
> Processing: gcc
> =================
> Build path taken because: directory build, build key set, no prebuilt rpm,
>
> rpmbuild --dbpath
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rootfs//var/lib/rpm
> --target arm --define '_unpackaged_files_terminate_build 0' --define
> '_target_cpu arm' --define '__strip strip' --define '_topdir
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm'
> --define '_prefix /usr' --define '_tmppath
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp'
> --define '_rpmdir
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/RPMS'
> --define '_mandir /usr/share/man' --define '_sysconfdir /etc' --define
> '_localstatedir /var' -bc --short-circuit
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp/gcc.spec
> Building target platforms: arm
> Building for target arm
> ...
> ...
> etc.
>
> After around 15 minutes the compilation fails giving the following errors.
>
>
> --------------------------------------->>>
>
> arm-none-linux-gnueabi-c++
> -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/../gcc
> -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/arm-none-linux-gnueabi
> -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include
> -I/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/libsupc++
> -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual
> -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -O2
> -D_GNU_SOURCE -c
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/libsupc++/eh_alloc.cc
> -fPIC -DPIC -o eh_alloc.o
> In file included from
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/libstdc++-v3/libsupc++/eh_alloc.cc:37:0:
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:
> In function 'void* std::memchr(void*, int, size_t)':
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:101:40:
> error: 'void* std::memchr(void*, int, size_t)' conflicts with previous
> using declaration 'void* memchr(void*, int, size_t)'
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:102:57:
> error: invalid conversion from 'const void*' to 'void*' [-fpermissive]
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:
> In function 'char* std::strchr(char*, int)':
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:107:29:
> error: 'char* std::strchr(char*, int)' conflicts with previous using
> declaration 'char* strchr(char*, int)'
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:
> In function 'char* std::strpbrk(char*, const char*)':
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:113:39:
> error: 'char* std::strpbrk(char*, const char*)' conflicts with previous
> using declaration 'char* strpbrk(char*, const char*)'
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:
> In function 'char* std::strrchr(char*, int)':
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:119:30:
> error: 'char* std::strrchr(char*, int)' conflicts with previous using
> declaration 'char* strrchr(char*, int)'
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:
> In function 'char* std::strstr(char*, const char*)':
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/include/cstring:125:38:
> error: 'char* std::strstr(char*, const char*)' conflicts with previous
> using declaration 'char* strstr(char*, const char*)'
> make[4]: *** [eh_alloc.lo] Error 1
> make[4]: Leaving directory
> `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3/libsupc++'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory
> `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory
> `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc/arm-none-linux-gnueabi/libstdc++-v3'
> make[1]: *** [all-target-libstdc++-v3] Error 2
> make[1]: Leaving directory
> `/home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/rpm/BUILD/gcc-4.2.1/build-gcc'
> make: *** [all] Error 2
> error: Bad exit status from
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp/rpm-tmp.66909
> (%build)
>
>
> RPM build errors:
> Bad exit status from
> /home/madfsl/Desktop/iMx6/resources/L3.0.35_4.1.0_130816_source/y/ltib/tmp/rpm-tmp.66909
> (%build)
> Build time for gcc: 1462 seconds
>
> Failed building gcc
>
> ---------------------------------------<<<
>
> Is this a fixed issue? This is the first time I'm building a toolchain. So
> am I missing something?
>
> Thank you in advance.
>
>
>
> --
> You received this question notification because you are an answer
> contact for GCC ARM Embedded.
>

Can you help with this problem?

Provide an answer of your own, or ask Pradeepa Senanayake for more information if necessary.

To post a message you must log in.