Skip to content
This repository was archived by the owner on Jan 14, 2024. It is now read-only.
This repository was archived by the owner on Jan 14, 2024. It is now read-only.

bitops.h:209:9: error: 'asm goto' constructs are not supported yet #2

Description

@omac777

I tried to build the hello_world example and it failed.

I followed the instructions:

export PATH=/home/loongson/.cargo/bin:$PATH;
rustup component add --toolchain=nightly rust-src
rustup component add rustfmt-preview
cargo install cargo-edit
cargo install cargo-xbuild

uname -a
Linux righteous 5.2.0-2-amd64 #1 SMP Debian 5.2.7-1 (2019-08-07) x86_64 GNU/Linux

sudo apt-get install llvm clang
Reading package lists... Done
Building dependency tree       
Reading state information... Done
clang is already the newest version (1:7.0-47.1).
llvm is already the newest version (1:7.0-47.1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

sudo apt-get install linux-headers-`uname -r`
Reading package lists... Done
Building dependency tree       
Reading state information... Done
linux-headers-5.2.0-2-amd64 is already the newest version (5.2.7-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

loongson@righteous:~/redoxstuff/linux-kernel-module-rust/hello_world$ cargo -V
cargo 1.38.0-nightly (e853aa976 2019-08-09)

git clone https://github.com/lizhuohua/linux-kernel-module-rust.git
cd linux-kernel-module-rust/
cd hello_world
RUST_TARGET_PATH=$(pwd)/.. cargo xbuild --target x86_64-linux-kernel-module
loongson@righteous:~/redoxstuff/linux-kernel-module-rust/hello_world$ RUST_TARGET_PATH=$(pwd)/.. cargo xbuild --target x86_64-linux-kernel-module
    Updating crates.io index
  Downloaded compiler_builtins v0.1.19
   Compiling core v0.0.0 (/home/loongson/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore)
   Compiling compiler_builtins v0.1.19
   Compiling rustc-std-workspace-core v1.0.0 (/home/loongson/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/tools/rustc-std-workspace-core)
   Compiling alloc v0.0.0 (/tmp/xargo.fIuOm42grKJg)
    Finished release [optimized] target(s) in 22.59s
    Updating crates.io index
  Downloaded bindgen v0.43.2
  Downloaded env_logger v0.6.2
  Downloaded cexpr v0.3.5
  Downloaded peeking_take_while v0.1.2
  Downloaded which v1.0.5
  Downloaded nom v4.2.3
  Downloaded clang-sys v0.26.4
  Downloaded proc-macro2 v0.3.5
  Downloaded libloading v0.5.2
   Compiling memchr v2.2.1
   Compiling version_check v0.1.5
   Compiling libc v0.2.62
   Compiling cc v1.0.40
   Compiling bitflags v1.1.0
   Compiling log v0.4.8
   Compiling glob v0.2.11
   Compiling lazy_static v1.3.0
   Compiling quick-error v1.2.2
   Compiling cfg-if v0.1.9
   Compiling regex-syntax v0.6.11
   Compiling unicode-xid v0.1.0
   Compiling unicode-width v0.1.5
   Compiling termcolor v1.0.5
   Compiling strsim v0.8.0
   Compiling ansi_term v0.11.0
   Compiling bindgen v0.43.2
   Compiling vec_map v0.8.1
   Compiling peeking_take_while v0.1.2
   Compiling shlex v0.1.1
   Compiling thread_local v0.3.6
   Compiling humantime v1.2.0
   Compiling proc-macro2 v0.3.5
   Compiling textwrap v0.11.0
   Compiling nom v4.2.3
   Compiling clang-sys v0.26.4
   Compiling quote v0.5.2
   Compiling aho-corasick v0.7.6
   Compiling atty v0.2.13
   Compiling which v1.0.5
   Compiling clap v2.33.0
   Compiling libloading v0.5.2
   Compiling cexpr v0.3.5
   Compiling regex v1.2.1
   Compiling env_logger v0.6.2
   Compiling linux-kernel-module v0.1.0 (/home/loongson/redoxstuff/linux-kernel-module-rust)
error: failed to run custom build command for `linux-kernel-module v0.1.0 (/home/loongson/redoxstuff/linux-kernel-module-rust)`

Caused by:
  process didn't exit successfully: `/home/loongson/redoxstuff/linux-kernel-module-rust/hello_world/target/debug/build/linux-kernel-module-7c510a191cf3f5d3/build-script-build` (exit code: 101)
--- stdout
Target=x86_64-linux-kernel-module
get output:-nostdinc -isystem /usr/lib/llvm-7/lib/clang/7.0.1/include -I/usr/src/linux-headers-5.2.0-2-common/arch/x86/include -I/usr/src/linux-headers-5.2.0-2-amd64/./arch/x86/include/generated -I/usr/src/linux-headers-5.2.0-2-common/include -I/usr/src/linux-headers-5.2.0-2-amd64/./include -I/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/uapi -I/usr/src/linux-headers-5.2.0-2-amd64/./arch/x86/include/generated/uapi -I/usr/src/linux-headers-5.2.0-2-common/include/uapi -I/usr/src/linux-headers-5.2.0-2-amd64/./include/generated/uapi -include /usr/src/linux-headers-5.2.0-2-common/include/linux/kconfig.h -DMODULE

cargo:rerun-if-changed=src/bindgen_helper.h

--- stderr
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:128:2: warning: implicit declaration of function 'barrier' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:209:9: error: 'asm goto' constructs are not supported yet
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:255:9: error: 'asm goto' constructs are not supported yet
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:308:9: error: 'asm goto' constructs are not supported yet
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:47:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:53:26: warning: implicit declaration of function 'hweight32' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:53:41: warning: implicit declaration of function 'hweight64' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:163:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:164:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:171:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:24:9: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:32:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration]
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:197:15: error: unknown type name '__attribute_const__'
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:198:1: error: expected identifier or '('
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:13: error: expected parameter declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:13: error: expected ')'
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:13: note: to match this '('
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:24: error: expected function body after function declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: error: expected parameter declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: error: expected ')'
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: note: to match this '('
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: error: expected function body after function declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:28: error: expected parameter declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:28: error: expected ')'
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:27: note: to match this '('
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:19: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:33: error: expected ';' after top level declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:21: error: expected parameter declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:21: error: expected ')'
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:20: note: to match this '('
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:12: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:26: error: expected ';' after top level declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:21: error: expected parameter declarator
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:21: error: expected ')'
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:20: note: to match this '('
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:12: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
fatal error: too many errors emitted, stopping now [-ferror-limit=]
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:128:2: warning: implicit declaration of function 'barrier' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:209:9: error: 'asm goto' constructs are not supported yet, err: true
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:255:9: error: 'asm goto' constructs are not supported yet, err: true
/usr/src/linux-headers-5.2.0-2-common/arch/x86/include/asm/bitops.h:308:9: error: 'asm goto' constructs are not supported yet, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:47:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:53:26: warning: implicit declaration of function 'hweight32' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:53:41: warning: implicit declaration of function 'hweight64' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:163:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:164:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/bitops.h:171:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:24:9: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:32:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:197:15: error: unknown type name '__attribute_const__', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/log2.h:198:1: error: expected identifier or '(', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:13: error: expected parameter declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:13: error: expected ')', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:142:24: error: expected function body after function declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: error: expected parameter declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: error: expected ')', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/init.h:149:5: error: expected function body after function declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:28: error: expected parameter declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:28: error: expected ')', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:19: warning: type specifier missing, defaults to 'int' [-Wimplicit-int], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:142:33: error: expected ';' after top level declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:21: error: expected parameter declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:21: error: expected ')', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:12: warning: type specifier missing, defaults to 'int' [-Wimplicit-int], err: false
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:162:26: error: expected ';' after top level declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:21: error: expected parameter declarator, err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:21: error: expected ')', err: true
/usr/src/linux-headers-5.2.0-2-common/include/linux/printk.h:167:12: warning: type specifier missing, defaults to 'int' [-Wimplicit-int], err: false
fatal error: too many errors emitted, stopping now [-ferror-limit=], err: true
thread 'main' panicked at 'Unable to generate bindings: ()', src/libcore/result.rs:1084:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions