diff mbox series

[1/2] gfortran: update runtime dependencies

Message ID 20240613115159.3660790-1-kai.kang@windriver.com
State New
Headers show
Series [1/2] gfortran: update runtime dependencies | expand

Commit Message

Kai June 13, 2024, 11:51 a.m. UTC
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 | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

Comments

Richard Purdie June 13, 2024, 9:56 p.m. UTC | #1
On Thu, 2024-06-13 at 19:51 +0800, Kai Kang via 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 | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-
> devtools/gcc/gcc-target.inc
> index 82da5ef82b..6ab83449ea 100644
> --- a/meta/recipes-devtools/gcc/gcc-target.inc
> +++ b/meta/recipes-devtools/gcc/gcc-target.inc
> @@ -61,7 +61,7 @@ RRECOMMENDS:${PN} += "\
>      libssp \
>      libssp-dev \
>  "
> -RDEPENDS:${PN} += "cpp"
> +RDEPENDS:${PN} += "binutils cpp"
>  
>  FILES:${PN}-dev = "\
>      ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
> @@ -94,10 +94,15 @@ RRECOMMENDS:g77 = "\
>      libg2c-dev \
>  "
>  
> +INSANE_SKIP: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 \
> 

https://valkyrie.yoctoproject.org/#/builders/10/builds/56/steps/11/logs/stdio

(and may more similar failures)

Cheers,

Richard
Kai June 14, 2024, 2:36 a.m. UTC | #2
On 6/14/24 05:56, Richard Purdie wrote:
> On Thu, 2024-06-13 at 19:51 +0800, Kai Kang via 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 | 7 ++++++-
>>   1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-
>> devtools/gcc/gcc-target.inc
>> index 82da5ef82b..6ab83449ea 100644
>> --- a/meta/recipes-devtools/gcc/gcc-target.inc
>> +++ b/meta/recipes-devtools/gcc/gcc-target.inc
>> @@ -61,7 +61,7 @@ RRECOMMENDS:${PN} += "\
>>       libssp \
>>       libssp-dev \
>>   "
>> -RDEPENDS:${PN} += "cpp"
>> +RDEPENDS:${PN} += "binutils cpp"
>>   
>>   FILES:${PN}-dev = "\
>>       ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
>> @@ -94,10 +94,15 @@ RRECOMMENDS:g77 = "\
>>       libg2c-dev \
>>   "
>>   
>> +INSANE_SKIP: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 \
>>
> https://valkyrie.yoctoproject.org/#/builders/10/builds/56/steps/11/logs/stdio

I've figured out the root cause. v2 will be sent.

Regards,
Kai

>
> (and may more similar failures)
>
> Cheers,
>
> Richard
>
>
diff mbox series

Patch

diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-devtools/gcc/gcc-target.inc
index 82da5ef82b..6ab83449ea 100644
--- a/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/meta/recipes-devtools/gcc/gcc-target.inc
@@ -61,7 +61,7 @@  RRECOMMENDS:${PN} += "\
     libssp \
     libssp-dev \
 "
-RDEPENDS:${PN} += "cpp"
+RDEPENDS:${PN} += "binutils cpp"
 
 FILES:${PN}-dev = "\
     ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
@@ -94,10 +94,15 @@  RRECOMMENDS:g77 = "\
     libg2c-dev \
 "
 
+INSANE_SKIP: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 \