
Randy MacLeod
On 2022-01-04 10:00, staticd wrote: One final update for anyone who might run into this problem. With all of my fiddling/twiddling I failed to get libquadmath to build under the `zeus` branch. Unfortunately, my other layer dependencies only support `zeus` so it seems I will have to wait until they support a branch that can build `libquadmath`. I am fairly certain there is just a simple mistake somewhere but, alas, I have been unable to find where that is. Hi, If you can come up with a reasonably simple reproducer and it fails on a supported branch: https://wiki.yoctoproject.org/wiki/Releasesthen we'd appreciate if if you could report the bug in the YP Bugzilla: https://wiki.yoctoproject.org/wiki/Bugzilla_Configuration_and_Bug_TrackingDon't worry too much about getting every field right if you aren't familiar with the overall project. There's no guarantee that we'll get someone to work on it but at least it's tracked and we might get to it at some point. ../Randy On Mon, Jan 3, 2022 at 4:55 PM staticd <staticd@... <mailto:staticd@...>> wrote: I made some progress... It turns out that libquadmath is failing to build. When I goto the `build/tmp/work/...../gcc-runtime/9.2.0-r0/gcc-9.2.0/build.arm-oe-linux-gnueabi.arm-oe-linux-gnueabi/arm-oe-linux-gnueabi/libquadmath` directory, the only files that are there are: ``` libquadmath ] ls -l total 476 -rw-r--r--. 1 2017 oe-builder 4433 Jan 3 16:17 config.h -rw-r--r--. 1 2017 oe-builder 69297 Jan 3 16:17 config.log -rwxr-xr-x. 1 2017 oe-builder 77122 Jan 3 16:17 config.status -rwxr-xr-x. 1 2017 oe-builder 267083 Jan 3 16:17 libtool -rw-r--r--. 1 2017 oe-builder 57241 Jan 3 16:17 Makefile -rw-r--r--. 1 2017 oe-builder 23 Jan 3 16:17 stamp-h1 ``` In the config.log, there are errors, some of which are expected, but still: ``` libquadmath ] grep -i error config.log arm-oe-linux-gnueabi-gcc: error: unrecognized command line option '-V' arm-oe-linux-gnueabi-gcc: fatal error: no input files arm-oe-linux-gnueabi-gcc: error: unrecognized command line option '-qversion'; did you mean '--version'? arm-oe-linux-gnueabi-gcc: fatal error: no input files conftest.c:11:10: fatal error: ac_nonexistent.h: No such file or directory arm-oe-linux-gnueabi-gcc: error: unrecognized command line option '-V' arm-oe-linux-gnueabi-gcc: fatal error: no input files arm-oe-linux-gnueabi-gcc: error: unrecognized command line option '-qversion'; did you mean '--version'? arm-oe-linux-gnueabi-gcc: fatal error: no input files conftest.c:28:10: fatal error: ac_nonexistent.h: No such file or directory configure:12551: arm-oe-linux-gnueabi-gcc -mthumb -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=/home/oe-builder/build/tmp-glibc/work/cortexa9t2hf-neon-oe-linux-gnueabi/gcc-runtime/9.2.0-r0/recipe-sysroot -c -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9t2hf-neon-oe-linux-gnueabi/gcc-runtime/9.2.0-r0/recipe-sysroot= -fdebug-prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9t2hf-neon-oe-linux-gnueabi/gcc-runtime/9.2.0-r0/recipe-sysroot-native= -fdebug-prefix-map=/home/oe-builder/build/tmp-glibc/work-shared/gcc-9.2.0-r0/gcc-9.2.0=/usr/src/debug/gcc-runtime/9.2.0-r0 -fdebug-prefix-map=/home/oe-builder/build/tmp-glibc/work-shared/gcc-9.2.0-r0/gcc-9.2.0/include=/usr/src/debug/gcc-runtime/9.2.0-r0/libstdc++-v3/../include -fdebug-prefix-map=/home/oe-builder/build/tmp-glibc/work-shared/gcc-9.2.0-r0/gcc-9.2.0/libiberty=/usr/src/debug/gcc-runtime/9.2.0-r0/libstdc++-v3/../libiberty -fdebug-prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9t2hf-neon-oe-linux-gnueabi/gcc-runtime/9.2.0-r0/gcc-9.2.0/build.arm-oe-linux-gnueabi.arm-oe-linux-gnueabi=/usr/src/debug/gcc-runtime/9.2.0-r0 -Werror conftest.c >&5 glibcxx_cv_system_error10=yes glibcxx_cv_system_error11=yes glibcxx_cv_system_error12=yes glibcxx_cv_system_error13=yes glibcxx_cv_system_error14=yes glibcxx_cv_system_error15=yes glibcxx_cv_system_error16=yes glibcxx_cv_system_error17=yes glibcxx_cv_system_error18=yes glibcxx_cv_system_error19=yes glibcxx_cv_system_error1=yes glibcxx_cv_system_error2=yes glibcxx_cv_system_error3=yes glibcxx_cv_system_error4=yes glibcxx_cv_system_error5=yes glibcxx_cv_system_error6=yes glibcxx_cv_system_error7=yes glibcxx_cv_system_error8=yes glibcxx_cv_system_error9=yes ``` If I check out another library that I expect to get, like, `libitm`, I see: ``` libquadmath ] ls -trl ../libitm/ total 2872 -rwxr-xr-x. 1 2017 oe-builder 97435 Jan 3 16:17 config.status -rw-r--r--. 1 2017 oe-builder 47665 Jan 3 16:17 Makefile drwxr-xr-x. 2 2017 oe-builder 22 Jan 3 16:17 testsuite -rw-r--r--. 1 2017 oe-builder 162 Jan 3 16:17 libitm.spec -rw-r--r--. 1 2017 oe-builder 5251 Jan 3 16:17 config.h -rw-r--r--. 1 2017 oe-builder 23 Jan 3 16:17 stamp-h1 -rwxr-xr-x. 1 2017 oe-builder 274850 Jan 3 16:17 libtool -rw-r--r--. 1 2017 oe-builder 868 Jan 3 16:17 gstdint.h -rw-r--r--. 1 2017 oe-builder 119521 Jan 3 16:17 config.log -rw-r--r--. 1 2017 oe-builder 50080 Jan 3 16:18 alloc_c.o ... -rw-r--r--. 1 2017 oe-builder 931 Jan 3 16:18 libitm.la <http://libitm.la> ``` Have you seen something like this before? I am not sure how to fix this... Any help is greatly appreciated. On Sun, Jan 2, 2022 at 5:13 PM staticd via lists.yoctoproject.org <http://lists.yoctoproject.org> <staticd=gmail.com@... <mailto:gmail.com@...>> wrote: So, I built the latest poky and created the example recipe with the `DEPENDS` from my recipe and indeed, I see `libquadmath.so <http://libquadmath.so>` in `sysroots-components/`. I am really scratching my head now. I must be missing something silly somewhere... My build environment is running `zeus` and the latest `poky` I grabbed is `honister` Perhaps something changed that I am just overlooking somehow. On Sun, Jan 2, 2022 at 2:18 PM staticd via lists.yoctoproject.org <http://lists.yoctoproject.org> <staticd=gmail.com@... <mailto:gmail.com@...>> wrote: Thank you, Konrad. I have tried both of the approaches (local.conf and gcc-runtime_%.bbappend/gcc_%.bbappend), still `libquadmath.so <http://libquadmath.so>` is not being built. I will keep fiddling but I think we are onto something. The interesting thing I found is that `libquadmath.so <http://libquadmath.so>` IS being built for the nativesdk but NOT when I add `DEPENDS = "virtual/${TARGET_PREFIX}compillerlibs"` to my recipe. Perhaps, because `FORTRAN = ""` is in the gcc_%.bb, maybe that should be something less strict? I might be screwing up my bbappend too... My append is in `meta-mylayer/recipes-devtools/gcc/gcc-runtime_%.bbappend` Which is mapped correctly to $BBFILES n my layers `layer.conf` On Sun, Jan 2, 2022 at 2:07 PM Konrad Weihmann <kweihmann@... <mailto:kweihmann@...>> wrote: The following I just found in local.conf.sample.extended # Enabling FORTRAN # Note this is not officially supported and is just illustrated here to # show an example of how it can be done # You'll also need your fortran recipe to depend on libgfortran FORTRAN:forcevariable = ",fortran" guess that will solve your issue without the need for a bbappend. Just inject that line via distro or local.conf On 02.01.22 18:31, staticd wrote: > I think to clarify...what I need are these files: > > --- snipped from gcc-runtime.inc --- > ``` > FILES_libquadmath = "${libdir}/libquadmath*.so.*" > SUMMARY_libquadmath = "GNU quad-precision math library" > FILES_libquadmath-dev = "\ > ${libdir}/${TARGET_SYS}/${BINV}/include/quadmath* \ > ${libdir}/libquadmath*.so \ > ${libdir}/libquadmath.la <http://libquadmath.la> <http://libquadmath.la <http://libquadmath.la>> \ > " > ``` > --- > to be in my $STAGING_LIBDIR > > So far, I have been unable to figure out how to do that, unfortunately. > > On Sun, Jan 2, 2022 at 12:23 PM staticd <staticd@... <mailto:staticd@...> > <mailto:staticd@... <mailto:staticd@...>>> wrote: > > Thank you, Michael. > > I have `DEPENDS = "virtual/arm-oe-linux-gnueabi-compilerlibs"` > > and `do_compile[depends] += > "virtual/arm-oe-linux-gnueabi-compilerlibs:do_check"` > > However, libquadmath.so <http://libquadmath.so> is still not present in `recipe-sysroot/lib` > > I used the `do_check` task from gcc_runtime but that still isn't > providing `libquadmath.so <http://libquadmath.so>` in my $STAGING_LIBDIR, which is where I > need it. > > Many thanks. > > On Sun, Jan 2, 2022 at 12:17 PM Michael Ho <michael.ho@... <mailto:michael.ho@...> > <mailto:michael.ho@... <mailto:michael.ho@...>>> wrote: > > Not familiar with Fortran but maybe it helps to know that this > is normally handled with the DEPENDS mechanism. When you add > other recipes as dependencies to your recipe, the task > do_prepare_recipe_sysroot (run before do_compile) will make hard > links to the files from those dependency recipes into that > recipe-sysroot directory. > > See: > https://docs.yoctoproject.org/singleindex.html#do-prepare-recipe-sysroot <https://docs.yoctoproject.org/singleindex.html#do-prepare-recipe-sysroot> > <https://docs.yoctoproject.org/singleindex.html#do-prepare-recipe-sysroot <https://docs.yoctoproject.org/singleindex.html#do-prepare-recipe-sysroot>> > > Kind regards, > Michael > > On Sun, 2 Jan 2022, 6:06 pm staticd, <staticd@... <mailto:staticd@...> > <mailto:staticd@... <mailto:staticd@...>>> wrote: > > okay...I think I have a more interesting question now... > > In the package I am building I have some Fortran code that > requires `libquadmath` > > I see that `gcc-runtime` provides the library but I need the > library present in `recipe-sysroot/lib` when my `do_compile` > runs > > Is there a way for me to do that? > > My current approach is to build my image, copy the > libraries/includes to my recipe and `install` them in > `recipe-sysroot` before `do_compile` > > This doesn't seem like the correct approach but I am not > sure how else to do it at this point > > Any help would be greatly appreciated. > > > > > > >
-- # Randy MacLeod # Wind River Linux
|