Message ID | CAAfyv35O=kOjD1T3cBenxFEpV=uX16sAFciRcYv+PcEFZ1h0sA@mail.gmail.com |
---|---|
State | New |
Headers | show |
Series | rust issue for armv6 in mainline poky | expand |
Can you try the tip of master please? Alex On Mon, 21 Nov 2022 at 13:32, Marek Belisko <marek.belisko@gmail.com> wrote: > > Hi, > > on kirkstone branch when trying to build rust for raspberrypi machine > I'm getting: > > ERROR: rust-cross-arm1176jzfshf-vfp-glibc-1.59.0-r0 > do_rust_gen_targets: Error executing a python function in > exec_func_python() autogenerated: > > The stack trace of python calls that resulted in this exception/failure was: > File: 'exec_func_python() autogenerated', lineno: 2, function: <module> > 0001: > *** 0002:do_rust_gen_targets(d) > 0003: > File: '/data/projects/test-build/.build-rpi/../sources/poky/meta/recipes-devtools/rust/rust-cross.inc', > lineno: 19, function: do_rust_gen_targets > 0015: if arch == "arm" and target_is_armv7(d): > 0016: arch = 'armv7' > 0017: features = d.getVar('TARGET_LLVM_FEATURES') or "" > 0018: cpu = d.getVar('TARGET_LLVM_CPU') > *** 0019: rust_gen_target(d, thing, wd, features, cpu, arch, abi) > 0020:} > 0021: > 0022:# Otherwise we'll depend on what we provide > 0023:INHIBIT_DEFAULT_RUST_DEPS = "1" > File: '/data/projects/test-build/.build-rpi/../sources/poky/meta/recipes-devtools/rust/rust-common.inc', > lineno: 314, function: rust_gen_target > 0310: # build tspec > 0311: tspec = {} > 0312: tspec['llvm-target'] = d.getVar('RUST_TARGET_SYS', arch_abi) > 0313: tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi) > *** 0314: tspec['max-atomic-width'] = > int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi)) > 0315: tspec['target-pointer-width'] = > d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi) > 0316: tspec['target-c-int-width'] = > d.getVarFlag('TARGET_C_INT_WIDTH', arch_abi) > 0317: tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch_abi) > 0318: tspec['arch'] = arch_to_rust_target_arch(rust_arch) > Exception: TypeError: int() argument must be a string, a bytes-like > object or a number, not 'NoneType' > > by adding below it seems to fix an issue (copied from meta-rust): > diff --git a/meta/recipes-devtools/rust/rust-common.inc > b/meta/recipes-devtools/rust/rust-common.inc > index ef70c48d0f..389c75d2f7 100644 > --- a/meta/recipes-devtools/rust/rust-common.inc > +++ b/meta/recipes-devtools/rust/rust-common.inc > @@ -118,6 +118,15 @@ def llvm_features(d): > llvm_features_from_target_fpu(d)) > > > + > +DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" > +LLVM_TARGET[arm-eabi] = "${RUST_TARGET_SYS}" > +TARGET_ENDIAN[arm-eabi] = "little" > +TARGET_POINTER_WIDTH[arm-eabi] = "32" > +TARGET_C_INT_WIDTH[arm-eabi] = "32" > +MAX_ATOMIC_WIDTH[arm-eabi] = "64" > +FEATURES[arm-eabi] = "+v6,+vfp2" > + > ## arm-unknown-linux-gnueabihf > > Thanks and BR, > > marek > > -- > as simple and primitive as possible > ------------------------------------------------- > Marek Belisko - OPEN-NANDRA > Freelance Developer > > Ruska Nova Ves 219 | Presov, 08005 Slovak Republic > Tel: +421 915 052 184 > skype: marekwhite > twitter: #opennandra > web: http://open-nandra.com > > > -- > as simple and primitive as possible > ------------------------------------------------- > Marek Belisko - OPEN-NANDRA > Freelance Developer > > Ruska Nova Ves 219 | Presov, 08005 Slovak Republic > Tel: +421 915 052 184 > skype: marekwhite > twitter: #opennandra > web: http://open-nandra.com > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#58598): https://lists.yoctoproject.org/g/yocto/message/58598 > Mute This Topic: https://lists.yoctoproject.org/mt/95170677/1686489 > Group Owner: yocto+owner@lists.yoctoproject.org > Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub [alex.kanavin@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
Den mån 21 nov. 2022 kl 13:37 skrev Alexander Kanavin < alex.kanavin@gmail.com>: > Can you try the tip of master please? > Also came across this issue. Tip of master works just fine. / Mirza
diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc index ef70c48d0f..389c75d2f7 100644 --- a/meta/recipes-devtools/rust/rust-common.inc +++ b/meta/recipes-devtools/rust/rust-common.inc @@ -118,6 +118,15 @@ def llvm_features(d): llvm_features_from_target_fpu(d)) + +DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +LLVM_TARGET[arm-eabi] = "${RUST_TARGET_SYS}" +TARGET_ENDIAN[arm-eabi] = "little" +TARGET_POINTER_WIDTH[arm-eabi] = "32" +TARGET_C_INT_WIDTH[arm-eabi] = "32" +MAX_ATOMIC_WIDTH[arm-eabi] = "64" +FEATURES[arm-eabi] = "+v6,+vfp2" + ## arm-unknown-linux-gnueabihf Thanks and BR,