Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 827010

Summary: media-libs/embree-4.3.0 fails to compile: string sub-command REPLACE requires at least four arguments
Product: Gentoo Linux Reporter: Agostino Sarubbo <ago>
Component: Current packagesAssignee: Sebastian Parborg <darkdefende>
Status: CONFIRMED ---    
Severity: normal CC: proxy-maint, sam
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 243502    
Attachments: build.log

Description Agostino Sarubbo gentoo-dev 2021-11-24 06:54:00 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: media-libs/embree-3.13.2 fails to compile.
Discovered on: amd64 (internal ref: ci)

NOTE:
If you think this is a GCC-11 related issue, please block bug 732706.
Comment 1 Agostino Sarubbo gentoo-dev 2021-11-24 06:54:03 UTC
Created attachment 755758 [details]
build.log

build log and emerge --info
Comment 2 Agostino Sarubbo gentoo-dev 2022-02-18 07:29:47 UTC
ci has reproduced this issue with version 3.13.3 - Updating summary.
Comment 3 Sebastian Parborg 2022-02-18 11:25:19 UTC
This is the offending cmake lines:
---
execute_process(COMMAND objdump -C -t ${file} OUTPUT_VARIABLE output)
string(REPLACE "\n" ";" output ${output})
---

I don't have any issues building this on my machine. So I have no clue why this would fail on your automated test system.

Do you have any ideas?
Comment 4 Agostino Sarubbo gentoo-dev 2022-08-11 09:49:56 UTC
ci has reproduced this issue with version 3.13.4 - Updating summary.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-08-11 10:05:39 UTC
(In reply to Sebastian Parborg from comment #3)
> This is the offending cmake lines:
> ---
> execute_process(COMMAND objdump -C -t ${file} OUTPUT_VARIABLE output)
> string(REPLACE "\n" ";" output ${output})
> ---
> 
> I don't have any issues building this on my machine. So I have no clue why
> this would fail on your automated test system.
> 
> Do you have any ideas?

binutils-config[-native-symlinks], I'm guessing.
Comment 6 Sebastian Parborg 2022-08-11 11:09:45 UTC
That does seem likely.

Should I add that as a required use flag?

Or is there an easy way in cmake to query for the path to the active binutils `objdump`?
Comment 7 Violet Purcell 2023-07-09 13:16:05 UTC
I'm also hitting this issue with llvm-objdump. This may be unrelated though. Manually running "objdump -C -t /var/tmp/portage/media-libs/embree-3.13.5/work/embree-3.13.5_build/libembree_avx512.a" produces no output.
Comment 8 Violet Purcell 2023-07-09 13:26:49 UTC
Oddly, I can't reproduce this when building outside of portage.
Comment 9 Violet Purcell 2023-07-09 13:32:51 UTC
Okay, it seems like by default embree builds with -g in CXXFLAGS. For some reason, this isn't the case when building with portage. The cmake step it fails on requires the static archive it runs on to have debug info for objdump to produce any output.
Comment 10 Violet Purcell 2023-07-09 13:43:38 UTC
(In reply to Violet Purcell from comment #9)
> Okay, it seems like by default embree builds with -g in CXXFLAGS. For some
> reason, this isn't the case when building with portage. The cmake step it
> fails on requires the static archive it runs on to have debug info for
> objdump to produce any output.

Nevermind, that's not it.
Comment 11 Violet Purcell 2023-07-09 13:48:44 UTC
I'll open a new bug for the issue with LLVM binutils, since it seems to be unrelated to the original build failure.
Comment 12 Agostino Sarubbo gentoo-dev 2024-03-26 07:40:43 UTC
ci has reproduced this issue with version 4.3.0 - Updating summary.