This repository was archived by the owner on Jan 14, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 26
This repository was archived by the owner on Jan 14, 2024. It is now read-only.
Bindgen fails on Arch Linux 5.2.8-arch1-1-ARCH #1
Copy link
Copy link
Open
Description
Hi, I just saw this on reddit and want to try. But bindgen seems to fail on my machine running Arch Linux with kernel version 5.2.8-arch1-1-ARCH
I have no experience in kernel development, so I'm not sure what the issue is here. The errors seems to come from clang:
Full output:
~/git/linux-kernel-module-rust/hello_world master RUST_TARGET_PATH=$(pwd)/.. cargo xbuild --target x86_64-linux-kernel-module
Updating crates.io index
Compiling core v0.0.0 (/home/kai/.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/kai/.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.S1rXilz6pftT)
Finished release [optimized] target(s) in 16.28s
Compiling memchr v2.2.1
Compiling libc v0.2.62
Compiling version_check v0.1.5
Compiling cc v1.0.40
Compiling log v0.4.8
Compiling bitflags v1.1.0
Compiling lazy_static v1.3.0
Compiling glob v0.2.11
Compiling regex-syntax v0.6.11
Compiling quick-error v1.2.2
Compiling cfg-if v0.1.9
Compiling unicode-width v0.1.5
Compiling unicode-xid v0.1.0
Compiling strsim v0.8.0
Compiling bindgen v0.43.2
Compiling ansi_term v0.11.0
Compiling termcolor v1.0.5
Compiling vec_map v0.8.1
Compiling peeking_take_while v0.1.2
Compiling shlex v0.1.1
Compiling humantime v1.2.0
Compiling thread_local v0.3.6
Compiling textwrap v0.11.0
Compiling proc-macro2 v0.3.5
Compiling nom v4.2.3
Compiling clang-sys v0.26.4
Compiling quote v0.5.2
Compiling aho-corasick v0.7.6
Compiling libloading v0.5.2
Compiling atty v0.2.13
Compiling which v1.0.5
Compiling clap v2.33.0
Compiling cexpr v0.3.5
Compiling regex v1.2.1
Compiling env_logger v0.6.2
Compiling linux-device-driver v0.1.0 (/home/kai/git/linux-kernel-module-rust)
error: failed to run custom build command for `linux-device-driver v0.1.0 (/home/kai/git/linux-kernel-module-rust)`
Caused by:
process didn't exit successfully: `/home/kai/git/linux-kernel-module-rust/hello_world/target/debug/build/linux-device-driver-fd96a7e17f92603d/build-script-build` (exit code: 101)
--- stdout
Target=x86_64-linux-kernel-module
get output:-nostdinc -isystem /usr/lib/clang/8.0.1/include -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/generated -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/uapi -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/generated/uapi -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/uapi -I/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/generated/uapi -include /usr/lib/modules/5.2.8-arch1-1-ARCH/build/include/linux/kconfig.h -DMODULE
cargo:rerun-if-changed=src/bindgen_helper.h
--- stderr
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:128:2: warning: implicit declaration of function 'barrier' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:209:9: error: 'asm goto' constructs are not supported yet
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:255:9: error: 'asm goto' constructs are not supported yet
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:308:9: error: 'asm goto' constructs are not supported yet
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:47:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:53:26: warning: implicit declaration of function 'hweight32' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:53:41: warning: implicit declaration of function 'hweight64' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:163:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:164:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:171:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:24:9: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:32:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:197:15: error: unknown type name '__attribute_const__'
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:198:1: error: expected identifier or '('
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:13: error: expected parameter declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:13: error: expected ')'
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:13: note: to match this '('
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:24: error: expected function body after function declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: error: expected parameter declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: error: expected ')'
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: note: to match this '('
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: error: expected function body after function declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:28: error: expected parameter declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:28: error: expected ')'
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:27: note: to match this '('
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:19: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:33: error: expected ';' after top level declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:21: error: expected parameter declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:21: error: expected ')'
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:20: note: to match this '('
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:12: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:26: error: expected ';' after top level declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:167:21: error: expected parameter declarator
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:167:21: error: expected ')'
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:167:20: note: to match this '('
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./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/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:128:2: warning: implicit declaration of function 'barrier' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:209:9: error: 'asm goto' constructs are not supported yet, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:255:9: error: 'asm goto' constructs are not supported yet, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./arch/x86/include/asm/bitops.h:308:9: error: 'asm goto' constructs are not supported yet, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:47:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:53:26: warning: implicit declaration of function 'hweight32' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:53:41: warning: implicit declaration of function 'hweight64' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:163:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:164:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/bitops.h:171:10: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:24:9: warning: implicit declaration of function 'fls' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:32:9: warning: implicit declaration of function 'fls64' is invalid in C99 [-Wimplicit-function-declaration], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:197:15: error: unknown type name '__attribute_const__', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/log2.h:198:1: error: expected identifier or '(', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:13: error: expected parameter declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:13: error: expected ')', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:142:24: error: expected function body after function declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: error: expected parameter declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: error: expected ')', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/init.h:149:5: error: expected function body after function declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:28: error: expected parameter declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:28: error: expected ')', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:19: warning: type specifier missing, defaults to 'int' [-Wimplicit-int], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:142:33: error: expected ';' after top level declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:21: error: expected parameter declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:21: error: expected ')', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:12: warning: type specifier missing, defaults to 'int' [-Wimplicit-int], err: false
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:162:26: error: expected ';' after top level declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:167:21: error: expected parameter declarator, err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./include/linux/printk.h:167:21: error: expected ')', err: true
/usr/lib/modules/5.2.8-arch1-1-ARCH/build/./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.
$clang --version
clang version 8.0.1 (tags/RELEASE_801/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Metadata
Metadata
Assignees
Labels
No labels