All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexandre Belloni <alexandre.belloni@bootlin.com>
To: Sean Nyekjaer <sean@geanix.com>
Cc: openembedded-core@lists.openembedded.org, kasper@krinvent.dk
Subject: Re: [OE-core][PATCH 1/3] rust-cross-canadian: set CARGO_TARGET_<triple>_RUSTFLAGS
Date: Sat, 30 Sep 2023 12:45:13 +0200	[thread overview]
Message-ID: <20230930104513751864bd@mail.local> (raw)
In-Reply-To: <20230929101925.1442545-1-sean@geanix.com>

Hello,

This series causes those rust.RustHostCompileTest.test_cargo_build failures:

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/7879/steps/13/logs/stdio

RustCompileTest class: SDK doesn't contain a Rust cross-canadian toolchain
RustCompileTest class: SDK doesn't contain a Rust cross-canadian toolchain
EpoxyTest class: SDK doesn't contain Meson
GalculatorTest class: SDK don't support gtk+3
No perl package in the SDK
No python3 package in the SDK
RustCompileTest class: SDK doesn't contain a Rust cross-canadian toolchain
RustCompileTest class: SDK doesn't contain a Rust cross-canadian toolchain
Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/qemuarm/build/meta/lib/oeqa/sdk/cases/rust.py", line 56, in test_cargo_build
    self._run('cd %s/hello; cargo build --target %s-oesdk-linux-gnu' % (self.tc.sdk_dir, machine))
  File "/home/pokybuild/yocto-worker/qemuarm/build/meta/lib/oeqa/sdk/case.py", line 14, in _run
    return subprocess.check_output(". %s > /dev/null; %s;" % \
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/subprocess.py", line 466, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
oeqa.utils.subprocesstweak.OETestCalledProcessError: Command '. /home/pokybuild/yocto-worker/qemuarm/build/build/tmp/work/qemuarm-poky-linux-gnueabi/core-image-sato/1.0/testimage-sdk/environment-setup-cortexa15t2hf-neon-poky-linux-gnueabi > /dev/null; cd /home/pokybuild/yocto-worker/qemuarm/build/build/tmp/work/qemuarm-poky-linux-gnueabi/core-image-sato/1.0/testimage-sdk//hello; cargo build --target x86_64-oesdk-linux-gnu;' returned non-zero exit status 101
Standard Output: error: failed to run `rustc` to learn about target-specific information
Caused by:
  process didn't exit successfully: `rustc - --crate-name ___ --print=file-names --target x86_64-oesdk-linux-gnu --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name --print=cfg` (exit status: 1)
  --- stderr
  error: Error loading target specification: Could not find specification for target "x86_64-oesdk-linux-gnu". Run `rustc --print target-list` for a list of built-in targets


https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/7858/steps/15/logs/stdio

Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/qemuarm-oecore/build/meta/lib/oeqa/sdk/cases/rust.py", line 57, in test_cargo_build
    self._run('cd %s/hello; cargo run --target %s-oesdk-linux-gnu' % (self.tc.sdk_dir, machine))
  File "/home/pokybuild/yocto-worker/qemuarm-oecore/build/meta/lib/oeqa/sdk/case.py", line 14, in _run
    return subprocess.check_output(". %s > /dev/null; %s;" % \
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/subprocess.py", line 466, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
oeqa.utils.subprocesstweak.OETestCalledProcessError: Command '. /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/qemuarm-oe-linux-gnueabi/core-image-sato/1.0/testimage-sdk/environment-setup-cortexa15t2hf-neon-oe-linux-gnueabi > /dev/null; cd /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/qemuarm-oe-linux-gnueabi/core-image-sato/1.0/testimage-sdk//hello; cargo run --target i686-oesdk-linux-gnu;' returned non-zero exit status 101
Standard Output:     Finished dev [unoptimized + debuginfo] target(s) in 0.04s
     Running `/home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/qemuarm-oe-linux-gnueabi/core-image-sato/1.0/testimage-sdk/sysroots/i686-oesdk-linux/lib/ld-linux-i686.so.2 target/i686-oesdk-linux-gnu/debug/hello`
error: could not execute process `/home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/qemuarm-oe-linux-gnueabi/core-image-sato/1.0/testimage-sdk/sysroots/i686-oesdk-linux/lib/ld-linux-i686.so.2 target/i686-oesdk-linux-gnu/debug/hello` (never executed)
Caused by:
  No such file or directory (os error 2)

On 29/09/2023 12:19:21+0200, Sean Nyekjaer wrote:
> Avoid setting sdk-wide RUSTFLAGS as these flags only are valid when
> building for target.
> This will enable building for different targets with different
> RUSTFLAGS.
> 
> Signed-off-by: Sean Nyekjaer <sean@geanix.com>
> ---
>  meta/recipes-devtools/rust/rust-cross-canadian.inc | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-devtools/rust/rust-cross-canadian.inc b/meta/recipes-devtools/rust/rust-cross-canadian.inc
> index d569ac59f5..d25646237c 100644
> --- a/meta/recipes-devtools/rust/rust-cross-canadian.inc
> +++ b/meta/recipes-devtools/rust/rust-cross-canadian.inc
> @@ -54,8 +54,10 @@ do_install () {
>      mkdir "${ENV_SETUP_DIR}"
>      RUST_ENV_SETUP_SH="${ENV_SETUP_DIR}/rust.sh"
>  
> +    RUST_TARGET_TRIPLE=`echo ${RUST_TARGET_SYS} | tr '[:lower:]' '[:upper:]' | sed 's/-/_/g'`
> +
>      cat <<- EOF > "${RUST_ENV_SETUP_SH}"
> -	export RUSTFLAGS="--sysroot=\$OECORE_TARGET_SYSROOT/usr -C link-arg=--sysroot=\$OECORE_TARGET_SYSROOT"
> +	export CARGO_TARGET_${RUST_TARGET_TRIPLE}_RUSTFLAGS="--sysroot=\$OECORE_TARGET_SYSROOT/usr -C link-arg=--sysroot=\$OECORE_TARGET_SYSROOT"
>  	export RUST_TARGET_PATH="\$OECORE_NATIVE_SYSROOT/usr/lib/${TARGET_SYS}/rustlib"
>  	EOF
>  
> -- 
> 2.42.0
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#188399): https://lists.openembedded.org/g/openembedded-core/message/188399
> Mute This Topic: https://lists.openembedded.org/mt/101654701/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


      parent reply	other threads:[~2023-09-30 10:45 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-29 10:19 [OE-core][PATCH 1/3] rust-cross-canadian: set CARGO_TARGET_<triple>_RUSTFLAGS Sean Nyekjaer
2023-09-29 10:19 ` [OE-core][PATCH 2/3] rust-cross-canadian: set CARGO_TARGET_<triple>_RUNNER for nativesdk Sean Nyekjaer
2023-09-29 10:19 ` [OE-core][PATCH 3/3] oeqa/sdk/rust: Add build and run test of rust binary with SDK host Sean Nyekjaer
2023-09-30 10:45 ` Alexandre Belloni [this message]

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=20230930104513751864bd@mail.local \
    --to=alexandre.belloni@bootlin.com \
    --cc=kasper@krinvent.dk \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=sean@geanix.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.