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
```
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 <staticd=
[email protected]> wrote:
> So, I built the latest poky and created the example recipe with the
> `DEPENDS` from my recipe and indeed, I see `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
> <[email protected]> wrote:
>
>> Thank you, Konrad.
>>
>> I have tried both of the approaches (local.conf and
>> gcc-runtime_%.bbappend/gcc_%.bbappend), still `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` 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 <[email protected]>
>> 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> \
>>> > "
>>> > ```
>>> > ---
>>> > 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 <[email protected]
>>> > <mailto:[email protected]>> 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 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` in my $STAGING_LIBDIR, which is where I
>>> > need it.
>>> >
>>> > Many thanks.
>>> >
>>> > On Sun, Jan 2, 2022 at 12:17 PM Michael Ho <[email protected]
>>> > <mailto:[email protected]>> 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
>>> >
>>> >
>>> > Kind regards,
>>> > Michael
>>> >
>>> > On Sun, 2 Jan 2022, 6:06 pm staticd, <[email protected]
>>> > <mailto:[email protected]>> 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.
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>>
>>
>>
>>
>>
>
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55708): https://lists.yoctoproject.org/g/yocto/message/55708
Mute This Topic: https://lists.yoctoproject.org/mt/88095036/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-