From: Kai <kai.kang@windriver.com>
To: Martin Jansa <martin.jansa@gmail.com>
Cc: richard.purdie@linuxfoundation.org,
openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH v3 1/1] gfortran: update runtime dependencies
Date: Mon, 15 Jul 2024 18:20:10 +0800 [thread overview]
Message-ID: <6a947a6b-4052-413a-bd90-fb460be51ce5@windriver.com> (raw)
In-Reply-To: <CA+chaQczh+jy5tEz67r+dcLUJzV=tpnbMad3dHGGR1+KOmLFbw@mail.gmail.com>
On 7/15/24 17:59, Martin Jansa wrote:
> Hi Kai,
>
> are you also seeing these buildpaths warnings from libgfortran? These
> will be fatal since ERROR_QA update from yesterday:
> https://git.openembedded.org/openembedded-core/commit/?id=b79b191cc43a45dde2adb61ea349b426cb2461d1
> and it probably wasn't detected in AB builds which might not enable fortran.
Yes, it seems exists for long time. My colleague worked on it for
several days. But it seems hard to resolve that
host path are somehow set to the intrinsic path.
I'll discuss with him tomorrow and check if we can fix it.
Regards,
Kai
>
> Regards,
>
> On Mon, Jun 24, 2024 at 12:12 PM Kai <kai.kang@windriver.com> wrote:
>> On 6/19/24 23:00, Martin Jansa wrote:
>>> See https://lists.openembedded.org/g/openembedded-core/message/200915
>>> which allows to me to build nativesdk-gcc again.
>> Thanks for your fix.
>>
>> Regards,
>> Kai
>>
>>> I've built nativesdk-libgfortran and libgfortran with the patch, but
>>> haven't used fortran in runtime at all, that's why it's an RFC, there
>>> were also 2 warnings:
>>> WARNING: nativesdk-libgfortran-14.1.0-r0 do_package_qa: QA Issue: File
>>> /opt/.../usr/lib/.debug/libgfortran.so.5.0.0 in package
>>> nativesdk-libgfortran-dbg contains reference to TMPDIR [buildpaths]
>>> WARNING: libgfortran-14.1.0-r0 do_package_qa: QA Issue: File
>>> /usr/lib/.debug/libgfortran.so.5.0.0 in package libgfortran-dbg
>>> contains reference to TMPDIR [buildpaths]
>>> which I guess were already there.
>>>
>>> On Wed, Jun 19, 2024 at 3:24 PM Martin Jansa via
>>> lists.openembedded.org <martin.jansa=gmail.com@lists.openembedded.org>
>>> wrote:
>>>> Something seems wrong with this change which was merged today, now with:
>>>> MACHINE=qemuarm64
>>>> FORTRAN:forcevariable = ",fortran"
>>>>
>>>> I'm seeing:
>>>> build/oe-core $ bitbake -g nativesdk-libgfortran
>>>> NOTE: Resolving any missing task queue dependencies
>>>> ERROR: Nothing PROVIDES 'gcc-cross-x86_64' (but
>>>> virtual:nativesdk:/OE/build/oe-core/openembedded-core/meta/recipes-devtools/gcc/libgfortran_14.1.bb
>>>> DEPENDS on or otherwise requires it). Close matches:
>>>> gcc-cross-aarch64
>>>> ...
>>>>
>>>> This might have been broken even before this change, but now it got
>>>> included in dependency tree of nativesdk-gcc (as shown in bitbake -g
>>>> nativesdk-gcc now failing when host and target arch don't match):
>>>>
>>>> "nativesdk-gcc.do_package_qa" -> "nativesdk-libgfortran.do_packagedata"
>>>> nativesdk-gcc.do_package_write_ipk" -> "nativesdk-libgfortran.do_packagedata"
>>>>
>>>> Missing or unbuildable dependency chain was: ['image',
>>>> 'nativesdk-packagegroup-sdk-host', 'nativesdk-lcov',
>>>> 'nativesdk-gcov-symlinks', 'nativesdk-libgfortran-dev',
>>>> 'gcc-cross-x86_64']
>>>>
>>>> I guess the easiest fix would be in:
>>>> meta/recipes-devtools/gcc/libgfortran.inc:DEPENDS = "gcc-runtime
>>>> gcc-cross-${TARGET_ARCH}"
>>>> but I'm not very familiar with fortran (we've enabled it long time ago
>>>> to build lapack(blas) for snowboy, but wasn't actively used for couple
>>>> years).
>>>>
>>>> Regards,
>>>>
>>>>
>>>>
>>>> On Sun, Jun 16, 2024 at 5:32 PM Kai Kang via lists.openembedded.org
>>>> <kai.kang=windriver.com@lists.openembedded.org> wrote:
>>>>> From: Kai Kang <kai.kang@windriver.com>
>>>>>
>>>>> It fails to run both `gcc` and `gfortran` with errors:
>>>>>
>>>>> | root@qemux86-64:~# x86_64-poky-linux-gcc a.c
>>>>> | x86_64-poky-linux-gcc: fatal error: cannot execute 'as': posix_spawnp: No such file or directory
>>>>>
>>>>> then add binutils which provides `as` to RDEPENDS of gcc.
>>>>>
>>>>> libgfortran-dev provides libgfortran.spec which required by gfortran:
>>>>>
>>>>> | root@qemux86-64:~# gfortran hello.f95
>>>>> | gfortran: fatal error: cannot read spec file 'libgfortran.spec': No such file or directory
>>>>>
>>>>> And gcc provides liblto_plugin.so:
>>>>>
>>>>> | root@qemux86-64:~# gfortran hello.f95
>>>>> | gfortran: fatal error: '-fuse-linker-plugin', but liblto_plugin.so not found
>>>>>
>>>>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>>>> ---
>>>>> meta/recipes-devtools/gcc/gcc-target.inc | 9 +++++++--
>>>>> 1 file changed, 7 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-devtools/gcc/gcc-target.inc
>>>>> index 8e9693b4cb..e9187fc444 100644
>>>>> --- a/meta/recipes-devtools/gcc/gcc-target.inc
>>>>> +++ b/meta/recipes-devtools/gcc/gcc-target.inc
>>>>> @@ -33,7 +33,7 @@ PACKAGES = "\
>>>>> ${PN} ${PN}-plugins ${PN}-symlinks \
>>>>> g++ g++-symlinks \
>>>>> cpp cpp-symlinks \
>>>>> - gfortran gfortran-symlinks \
>>>>> + ${@bb.utils.contains('FORTRAN', ',fortran', 'gfortran gfortran-symlinks', '', d)} \
>>>>> gcov gcov-symlinks \
>>>>> ${PN}-doc \
>>>>> ${PN}-dev \
>>>>> @@ -60,7 +60,7 @@ RRECOMMENDS:${PN} += "\
>>>>> libssp \
>>>>> libssp-dev \
>>>>> "
>>>>> -RDEPENDS:${PN} += "cpp"
>>>>> +RDEPENDS:${PN} += "binutils cpp"
>>>>>
>>>>> FILES:${PN}-dev = "\
>>>>> ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
>>>>> @@ -80,10 +80,15 @@ FILES:${PN}-plugins = "\
>>>>> "
>>>>> ALLOW_EMPTY:${PN}-plugins = "1"
>>>>>
>>>>> +INSANE_SKIP:${MLPREFIX}gfortran += "dev-deps"
>>>>> FILES:gfortran = "\
>>>>> ${bindir}/${TARGET_PREFIX}gfortran \
>>>>> ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f951 \
>>>>> "
>>>>> +RDEPENDS:gfortran = "\
>>>>> + gcc \
>>>>> + libgfortran-dev \
>>>>> +"
>>>>> RRECOMMENDS:gfortran = "\
>>>>> libquadmath \
>>>>> libquadmath-dev \
>>>>> --
>>>>> 2.34.1
>>>>>
>>>>>
>>>>>
>>>>>
>>>> -=-=-=-=-=-=-=-=-=-=-=-
>>>> Links: You receive all messages sent to this group.
>>>> View/Reply Online (#200913): https://lists.openembedded.org/g/openembedded-core/message/200913
>>>> Mute This Topic: https://lists.openembedded.org/mt/106704990/3617156
>>>> Group Owner: openembedded-core+owner@lists.openembedded.org
>>>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [martin.jansa@gmail.com]
>>>> -=-=-=-=-=-=-=-=-=-=-=-
>>>>
>> --
>> Kai Kang
>> Wind River Linux
>>
--
Kai Kang
Wind River Linux
next prev parent reply other threads:[~2024-07-15 10:20 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-16 15:31 [PATCH v3 0/1] Update for gfortran kai.kang
2024-06-16 15:31 ` [PATCH v3 1/1] gfortran: update runtime dependencies kai.kang
2024-06-19 13:24 ` [OE-core] " Martin Jansa
[not found] ` <17DA6AA6C1087792.28936@lists.openembedded.org>
2024-06-19 15:00 ` Martin Jansa
2024-06-24 10:12 ` Kai
2024-07-15 9:59 ` Martin Jansa
2024-07-15 10:20 ` Kai [this message]
2024-07-15 10:37 ` Richard Purdie
[not found] ` <17E25C9ABAE28545.4882@lists.openembedded.org>
2024-07-15 12:15 ` Richard Purdie
2024-06-18 6:40 ` [OE-core] [PATCH v3 0/1] Update for gfortran Alexandre Belloni
2024-06-18 7:14 ` Alexandre Belloni
2024-06-24 10:06 ` Kai
2024-06-27 22:16 ` Alexandre Belloni
2024-07-01 3:28 ` Kai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6a947a6b-4052-413a-bd90-fb460be51ce5@windriver.com \
--to=kai.kang@windriver.com \
--cc=martin.jansa@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=richard.purdie@linuxfoundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox