Building 4.8 without multilib
Is that supposed to be possible? When I add --disable-multilib to the configure options, the build fails on the install, because it hasn't built any of src/gcc-linaro-4.8-2014.02/libgcc: /bin/sh ../../../../src/gcc-linaro-4.8-2014.02/libgcc/../mkinstalldirs /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3 /usr/bin/install -c -m 644 libgcc_eh.a /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3/ /usr/bin/install: cannot stat `libgcc_eh.a': No such file or directory make[3]: *** [install-shared] Error 1 make[3]: Leaving directory `/home/ubuntu/work483/build/gcc/arm-linux-gnueabi/libgcc' make[2]: *** [install-target-libgcc] Error 2 make[2]: Leaving directory `/home/ubuntu/work483/build/gcc' make[1]: *** [install] Error 2 make[1]: Leaving directory `/home/ubuntu/work483/build/gcc' make: *** [stamp/gcc-install] Error 2 I don't want or need multilib, so I'd rather build the toolchain without it, but before I try to make that happen, I wanted to make sure it's supposed to be able to get built correctly that way. Thanks, Diane ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: Building 4.8 without multilib
Am 05.03.2014 01:01, schrieb Diane Holt: > Is that supposed to be possible? When I add --disable-multilib to the > configure options, the build fails on the install, because it hasn't built > any of src/gcc-linaro-4.8-2014.02/libgcc: > > /bin/sh ../../../../src/gcc-linaro-4.8-2014.02/libgcc/../mkinstalldirs > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3 > /usr/bin/install -c -m 644 libgcc_eh.a > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3/ > /usr/bin/install: cannot stat `libgcc_eh.a': No such file or directory > make[3]: *** [install-shared] Error 1 > make[3]: Leaving directory > `/home/ubuntu/work483/build/gcc/arm-linux-gnueabi/libgcc' > make[2]: *** [install-target-libgcc] Error 2 > make[2]: Leaving directory `/home/ubuntu/work483/build/gcc' > make[1]: *** [install] Error 2 > make[1]: Leaving directory `/home/ubuntu/work483/build/gcc' > make: *** [stamp/gcc-install] Error 2 > > I don't want or need multilib, so I'd rather build the toolchain without > it, but before I try to make that happen, I wanted to make sure it's > supposed to be able to get built correctly that way. yes, I had to revert that Linaro local patch as well (not to disable building multilibs, but to be able to build the Ubuntu multilibs (soft-float/hard-float). Matthias 2014-01-16 Zhenqiang Chen Linaro local patch for armv4t multilib support. * gcc/config/arm/t-mlibs: New file. * config.gcc: Add t-mlibs. * incpath.c (add_standard_paths): Try multilib path first. * gcc.c (for_each_path): Likewise. ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: Building 4.8 without multilib
On Wed, Mar 5, 2014 at 8:01 AM, Diane Holt wrote: > Is that supposed to be possible? When I add --disable-multilib to the > configure options, the build fails on the install, because it hasn't built > any of src/gcc-linaro-4.8-2014.02/libgcc: > > /bin/sh ../../../../src/gcc-linaro-4.8-2014.02/libgcc/../mkinstalldirs > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3 > /usr/bin/install -c -m 644 libgcc_eh.a > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3/ > /usr/bin/install: cannot stat `libgcc_eh.a': No such file or directory > make[3]: *** [install-shared] Error 1 > make[3]: Leaving directory > `/home/ubuntu/work483/build/gcc/arm-linux-gnueabi/libgcc' > make[2]: *** [install-target-libgcc] Error 2 > make[2]: Leaving directory `/home/ubuntu/work483/build/gcc' > make[1]: *** [install] Error 2 > make[1]: Leaving directory `/home/ubuntu/work483/build/gcc' > make: *** [stamp/gcc-install] Error 2 > > I don't want or need multilib, so I'd rather build the toolchain without it, > but before I try to make that happen, I wanted to make sure it's supposed to > be able to get built correctly that way. > > Thanks, > Diane Diane, I ran into this issue as well, and believe that it's related to your sysroot lacking the proper soft-float headers and/or missing kernel headers. This means that your sysroots include/ directory needs to be prepared for multi-lib headers before you do a multi-lib enabled gcc build. So, what I did was identify the multi-lib configurations that are enabled when I selected a particular --target. Take that information and build the kernel headers for all configurations and install those headers into the sysroot include directory. Then build a glibc version for each configuration and install the headers into the sysroot. Then you might need to inform GCC where the include directories are (though a properly formatted multi-lib sysroot should be automatically detected when you pass the sysroot switch). Zhenqiang Chen knows about this process a bit better than I do. -- Ryan S. Arnold Linaro Toolchain Working Group www.linaro.org ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: Building 4.8 without multilib
Sorry, but I'm not sure I understand either of these replies. I'm trying to find a way to be able to build with --disable-multilib. When I build with multilib enabled, it succeeds just fine. Thanks, Diane On Tue, Mar 4, 2014 at 6:37 PM, Ryan Arnold wrote: > On Wed, Mar 5, 2014 at 8:01 AM, Diane Holt wrote: > > Is that supposed to be possible? When I add --disable-multilib to the > > configure options, the build fails on the install, because it hasn't > built > > any of src/gcc-linaro-4.8-2014.02/libgcc: > > > > /bin/sh ../../../../src/gcc-linaro-4.8-2014.02/libgcc/../mkinstalldirs > > > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3 > > /usr/bin/install -c -m 644 libgcc_eh.a > > > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3/ > > /usr/bin/install: cannot stat `libgcc_eh.a': No such file or directory > > make[3]: *** [install-shared] Error 1 > > make[3]: Leaving directory > > `/home/ubuntu/work483/build/gcc/arm-linux-gnueabi/libgcc' > > make[2]: *** [install-target-libgcc] Error 2 > > make[2]: Leaving directory `/home/ubuntu/work483/build/gcc' > > make[1]: *** [install] Error 2 > > make[1]: Leaving directory `/home/ubuntu/work483/build/gcc' > > make: *** [stamp/gcc-install] Error 2 > > > > I don't want or need multilib, so I'd rather build the toolchain without > it, > > but before I try to make that happen, I wanted to make sure it's > supposed to > > be able to get built correctly that way. > > > > Thanks, > > Diane > > Diane, > > I ran into this issue as well, and believe that it's related to your > sysroot lacking the proper soft-float headers and/or missing kernel > headers. > > This means that your sysroots include/ directory needs to be prepared > for multi-lib headers before you do a multi-lib enabled gcc build. > > So, what I did was identify the multi-lib configurations that are > enabled when I selected a particular --target. > > Take that information and build the kernel headers for all > configurations and install those headers into the sysroot include > directory. > > Then build a glibc version for each configuration and install the > headers into the sysroot. > > Then you might need to inform GCC where the include directories are > (though a properly formatted multi-lib sysroot should be automatically > detected when you pass the sysroot switch). > > Zhenqiang Chen knows about this process a bit better than I do. > > -- > Ryan S. Arnold > Linaro Toolchain Working Group > www.linaro.org > ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: Building 4.8 without multilib
How do you build your eglibc/glibc? Can you share your gcc config for me to reproduce it? Thanks! -Zhenqiang On 5 March 2014 10:49, Diane Holt wrote: > Sorry, but I'm not sure I understand either of these replies. I'm trying to > find a way to be able to build with --disable-multilib. When I build with > multilib enabled, it succeeds just fine. > > Thanks, > Diane > > > On Tue, Mar 4, 2014 at 6:37 PM, Ryan Arnold wrote: >> >> On Wed, Mar 5, 2014 at 8:01 AM, Diane Holt wrote: >> > Is that supposed to be possible? When I add --disable-multilib to the >> > configure options, the build fails on the install, because it hasn't >> > built >> > any of src/gcc-linaro-4.8-2014.02/libgcc: >> > >> > /bin/sh ../../../../src/gcc-linaro-4.8-2014.02/libgcc/../mkinstalldirs >> > >> > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3 >> > /usr/bin/install -c -m 644 libgcc_eh.a >> > >> > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3/ >> > /usr/bin/install: cannot stat `libgcc_eh.a': No such file or directory >> > make[3]: *** [install-shared] Error 1 >> > make[3]: Leaving directory >> > `/home/ubuntu/work483/build/gcc/arm-linux-gnueabi/libgcc' >> > make[2]: *** [install-target-libgcc] Error 2 >> > make[2]: Leaving directory `/home/ubuntu/work483/build/gcc' >> > make[1]: *** [install] Error 2 >> > make[1]: Leaving directory `/home/ubuntu/work483/build/gcc' >> > make: *** [stamp/gcc-install] Error 2 >> > >> > I don't want or need multilib, so I'd rather build the toolchain without >> > it, >> > but before I try to make that happen, I wanted to make sure it's >> > supposed to >> > be able to get built correctly that way. >> > >> > Thanks, >> > Diane >> >> Diane, >> >> I ran into this issue as well, and believe that it's related to your >> sysroot lacking the proper soft-float headers and/or missing kernel >> headers. >> >> This means that your sysroots include/ directory needs to be prepared >> for multi-lib headers before you do a multi-lib enabled gcc build. >> >> So, what I did was identify the multi-lib configurations that are >> enabled when I selected a particular --target. >> >> Take that information and build the kernel headers for all >> configurations and install those headers into the sysroot include >> directory. >> >> Then build a glibc version for each configuration and install the >> headers into the sysroot. >> >> Then you might need to inform GCC where the include directories are >> (though a properly formatted multi-lib sysroot should be automatically >> detected when you pass the sysroot switch). >> >> Zhenqiang Chen knows about this process a bit better than I do. >> >> -- >> Ryan S. Arnold >> Linaro Toolchain Working Group >> www.linaro.org > > ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: Building 4.8 without multilib
I just tried to build arm-linux-gnueabi toolchain without multilib based on gcc-linaro-4.8-2014.02 release. It did work. My gcc configure: --target=arm-linux-gnueabi --enable-languages=c,c++,fortran --disable-multilib --enable-multiarch --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with-float=softfp --enable-c99 --enable-long-long --with-mode=thumb --with-float=softfp Thanks! -Zhenqiang On 5 March 2014 10:49, Diane Holt wrote: > Sorry, but I'm not sure I understand either of these replies. I'm trying to > find a way to be able to build with --disable-multilib. When I build with > multilib enabled, it succeeds just fine. > > Thanks, > Diane > > > On Tue, Mar 4, 2014 at 6:37 PM, Ryan Arnold wrote: >> >> On Wed, Mar 5, 2014 at 8:01 AM, Diane Holt wrote: >> > Is that supposed to be possible? When I add --disable-multilib to the >> > configure options, the build fails on the install, because it hasn't >> > built >> > any of src/gcc-linaro-4.8-2014.02/libgcc: >> > >> > /bin/sh ../../../../src/gcc-linaro-4.8-2014.02/libgcc/../mkinstalldirs >> > >> > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3 >> > /usr/bin/install -c -m 644 libgcc_eh.a >> > >> > /home/ubuntu/work483/build/sysroot/home/ubuntu/opt/cross-gcc-linaro/lib/gcc/arm-linux-gnueabi/4.8.3/ >> > /usr/bin/install: cannot stat `libgcc_eh.a': No such file or directory >> > make[3]: *** [install-shared] Error 1 >> > make[3]: Leaving directory >> > `/home/ubuntu/work483/build/gcc/arm-linux-gnueabi/libgcc' >> > make[2]: *** [install-target-libgcc] Error 2 >> > make[2]: Leaving directory `/home/ubuntu/work483/build/gcc' >> > make[1]: *** [install] Error 2 >> > make[1]: Leaving directory `/home/ubuntu/work483/build/gcc' >> > make: *** [stamp/gcc-install] Error 2 >> > >> > I don't want or need multilib, so I'd rather build the toolchain without >> > it, >> > but before I try to make that happen, I wanted to make sure it's >> > supposed to >> > be able to get built correctly that way. >> > >> > Thanks, >> > Diane >> >> Diane, >> >> I ran into this issue as well, and believe that it's related to your >> sysroot lacking the proper soft-float headers and/or missing kernel >> headers. >> >> This means that your sysroots include/ directory needs to be prepared >> for multi-lib headers before you do a multi-lib enabled gcc build. >> >> So, what I did was identify the multi-lib configurations that are >> enabled when I selected a particular --target. >> >> Take that information and build the kernel headers for all >> configurations and install those headers into the sysroot include >> directory. >> >> Then build a glibc version for each configuration and install the >> headers into the sysroot. >> >> Then you might need to inform GCC where the include directories are >> (though a properly formatted multi-lib sysroot should be automatically >> detected when you pass the sysroot switch). >> >> Zhenqiang Chen knows about this process a bit better than I do. >> >> -- >> Ryan S. Arnold >> Linaro Toolchain Working Group >> www.linaro.org > > ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain