rizsotto / Bear

Bear is a tool that generates a compilation database for clang tooling.
GNU General Public License v3.0
4.64k stars 306 forks source link

bear -- make produces an empty compile_commands.json #551

Closed ShuaiQA closed 9 months ago

ShuaiQA commented 9 months ago

bear -- make produces an empty compile_commands.json

A simple HelloWorld program bear -- make is no problem, but for the same step of git clone git://g.csail.mit.edu/xv6-labs-2022 this project compile_commands.json is empty

bear --verbose -- make result: [00:49:47.776365, br, 31834] bear: 3.1.3 [00:49:47.776503, br, 31834] arguments: ["bear", "--verbose", "--", "make"] [00:49:47.776547, br, 31834] environment: [] [00:49:47.776585, br, 31834] sysname: Darwin [00:49:47.776587, br, 31834] release: 22.3.0 [00:49:47.776618, br, 31834] version: Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 [00:49:47.776620, br, 31834] machine: x86_64 [00:49:47.776631, br, 31834] arguments parsed: {program: bear, arguments: [{--: [make]}, {--bear-path: [/usr/local/bin/bear]}, {--library: [/usr/local/lib/bear/libexec.dylib]}, {--output: [compile_commands.json]}, {--verbose: []}, {--wrapper: [/usr/local/lib/bear/wrapper]}, {--wrapper-dir: [/usr/local/lib/bear/wrapper.d]}]} [00:49:47.779277, br, 31834] Process spawned. [pid: 31835, command: ["/usr/local/bin/bear", "intercept", "--library", "/usr/local/lib/bear/libexec.dylib", "--wrapper", "/usr/local/lib/bear/wrapper", "--wrapper-dir", "/usr/local/lib/bear/wrapper.d", "--output", "compile_commands.events.json", "--verbose", "--", "make"]] [00:49:47.779313, br, 31834] Process wait requested. [pid: 31835] [00:49:47.851835, br, 31835] bear: 3.1.3 [00:49:47.851967, br, 31835] arguments: ["/usr/local/bin/bear", "intercept", "--library", "/usr/local/lib/bear/libexec.dylib", "--wrapper", "/usr/local/lib/bear/wrapper", "--wrapper-dir", "/usr/local/lib/bear/wrapper.d", "--output", "compile_commands.events.json", "--verbose", "--", "make"] [00:49:47.852010, br, 31835] environment: [] [00:49:47.852026, br, 31835] sysname: Darwin [00:49:47.852027, br, 31835] release: 22.3.0 [00:49:47.852063, br, 31835] version: Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 [00:49:47.852064, br, 31835] machine: x86_64 [00:49:47.852075, br, 31835] arguments parsed: {program: intercept, arguments: [{--: [make]}, {--library: [/usr/local/lib/bear/libexec.dylib]}, {--output: [compile_commands.events.json]}, {--verbose: []}, {--wrapper: [/usr/local/lib/bear/wrapper]}, {--wrapper-dir: [/usr/local/lib/bear/wrapper.d]}, {command: [intercept]}]} [00:49:47.853057, br, 31835] session initialized with: wrapper_dir: /usr/local/lib/bear/wrapper.d [00:49:47.853080, br, 31835] session initialized with: mapping: {"ar": "/usr/bin/ar", "as": "/usr/bin/as", "bison": "/usr/bin/bison", "c++": "/usr/bin/c++", "cc": "/usr/bin/cc", "clang": "/usr/bin/clang", "clang++": "/usr/bin/clang++", "cpp": "/usr/bin/cpp", "ctangle": "/Library/TeX/texbin/ctangle", "cweave": "/Library/TeX/texbin/cweave", "flex": "/usr/bin/flex", "g++": "/usr/bin/g++", "gcc": "/usr/bin/gcc", "ld": "/usr/bin/ld", "lex": "/usr/bin/lex", "makeinfo": "/usr/local/bin/makeinfo", "nm": "/usr/bin/nm", "objdump": "/usr/bin/objdump", "ranlib": "/usr/bin/ranlib", "strip": "/usr/bin/strip", "tangle": "/Library/TeX/texbin/tangle", "tex": "/Library/TeX/texbin/tex", "weave": "/Library/TeX/texbin/weave", "yacc": "/usr/bin/yacc"} [00:49:47.853084, br, 31835] session initialized with: override: {} [00:49:47.854655, br, 31835] Running gRPC server. dns:///localhost:62645 [00:49:47.855049, br, 31835] Process spawned. [pid: 31836, command: ["make"]] [00:49:47.855084, br, 31835] Process wait requested. [pid: 31836] make: `kernel/kernel' is up to date. [00:49:47.931826, br, 31835] Process wait request: done. [pid: 31836] [00:49:47.931930, br, 31835] Running command. [Exited with 0] [00:49:47.931975, br, 31835] Stopping gRPC server. [00:49:47.932603, br, 31835] succeeded with: 0 [00:49:47.934033, br, 31834] Process wait request: done. [pid: 31835] [00:49:47.934117, br, 31834] Running intercept finished. [Exited with 0] [00:49:47.936302, br, 31834] Process spawned. [pid: 31850, command: ["/usr/local/bin/bear", "citnames", "--input", "compile_commands.events.json", "--output", "compile_commands.json", "--run-checks", "--verbose"]] [00:49:47.936326, br, 31834] Process wait requested. [pid: 31850] [00:49:48.008947, br, 31850] bear: 3.1.3 [00:49:48.009105, br, 31850] arguments: ["/usr/local/bin/bear", "citnames", "--input", "compile_commands.events.json", "--output", "compile_commands.json", "--run-checks", "--verbose"] [00:49:48.009159, br, 31850] environment: [] [00:49:48.009190, br, 31850] sysname: Darwin [00:49:48.009192, br, 31850] release: 22.3.0 [00:49:48.009225, br, 31850] version: Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 [00:49:48.009227, br, 31850] machine: x86_64 [00:49:48.009237, br, 31850] arguments parsed: {program: citnames, arguments: [{--input: [compile_commands.events.json]}, {--output: [compile_commands.json]}, {--run-checks: []}, {--verbose: []}, {command: [citnames]}]} [00:49:48.009449, br, 31850] Configuration: {"compilation":null,"output":{"content":{"duplicate_filter_fields":"file_output","include_only_existing_source":true},"format":{"command_as_array":true,"drop_output_field":false}}} [00:49:48.009530, br, 31850] compilation entries created. [size: 0] [00:49:48.009533, br, 31850] compilation entries to output. [size: 0] [00:49:48.009782, br, 31850] compilation entries written. [size: 0] [00:49:48.009792, br, 31850] succeeded with: 0 [00:49:48.010595, br, 31834] Process wait request: done. [pid: 31850] [00:49:48.010621, br, 31834] Running citnames finished. [Exited with 0] [00:49:48.010723, br, 31834] succeeded with: 0

I referred to the related example bear make : empty output json #200 which does not work for me.

My computer is Apple M2 Pro $ uname -a Darwin deMacBook-Pro.local 22.3.0 Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 x86_64

Thank you for taking time out of your busy schedule to answer

rizsotto commented 9 months ago

make: `kernel/kernel' is up to date.

^ from the log that you've attached... the relevant page which describes this scenario is this one.

ShuaiQA commented 9 months ago

My mistake, the --verbose output I gave was wrong. I used make clean, and then executed bear -- make, which still didn't work. And I checked that the CC variable in the Makefile was a compiler command, and it still didn't work. . However, the same steps can produce results on the virtual machine Linux, but not on the Mac. this is new verbose: [10:02:58.803263, br, 38545] bear: 3.1.3 [10:02:58.804296, br, 38545] arguments: ["bear", "--verbose", "--", "make"] [10:02:58.804349, br, 38545] environment: [] [10:02:58.804453, br, 38545] sysname: Darwin [10:02:58.804455, br, 38545] release: 22.3.0 [10:02:58.804488, br, 38545] version: Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 [10:02:58.804490, br, 38545] machine: x86_64 [10:02:58.804509, br, 38545] arguments parsed: {program: bear, arguments: [{--: [make]}, {--bear-path: [/usr/local/bin/bear]}, {--library: [/usr/local/lib/bear/libexec.dylib]}, {--output: [compile_commands.json]}, {--verbose: []}, {--wrapper: [/usr/local/lib/bear/wrapper]}, {--wrapper-dir: [/usr/local/lib/bear/wrapper.d]}]} [10:02:58.809586, br, 38545] Process spawned. [pid: 38546, command: ["/usr/local/bin/bear", "intercept", "--library", "/usr/local/lib/bear/libexec.dylib", "--wrapper", "/usr/local/lib/bear/wrapper", "--wrapper-dir", "/usr/local/lib/bear/wrapper.d", "--output", "compile_commands.events.json", "--verbose", "--", "make"]] [10:02:58.809630, br, 38545] Process wait requested. [pid: 38546] [10:02:58.882186, br, 38546] bear: 3.1.3 [10:02:58.882323, br, 38546] arguments: ["/usr/local/bin/bear", "intercept", "--library", "/usr/local/lib/bear/libexec.dylib", "--wrapper", "/usr/local/lib/bear/wrapper", "--wrapper-dir", "/usr/local/lib/bear/wrapper.d", "--output", "compile_commands.events.json", "--verbose", "--", "make"] [10:02:58.882367, br, 38546] environment: [] [10:02:58.882395, br, 38546] sysname: Darwin [10:02:58.882397, br, 38546] release: 22.3.0 [10:02:58.882433, br, 38546] version: Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 [10:02:58.882435, br, 38546] machine: x86_64 [10:02:58.882445, br, 38546] arguments parsed: {program: intercept, arguments: [{--: [make]}, {--library: [/usr/local/lib/bear/libexec.dylib]}, {--output: [compile_commands.events.json]}, {--verbose: []}, {--wrapper: [/usr/local/lib/bear/wrapper]}, {--wrapper-dir: [/usr/local/lib/bear/wrapper.d]}, {command: [intercept]}]} [10:02:58.883449, br, 38546] session initialized with: wrapper_dir: /usr/local/lib/bear/wrapper.d [10:02:58.883471, br, 38546] session initialized with: mapping: {"ar": "/usr/bin/ar", "as": "/usr/bin/as", "bison": "/usr/bin/bison", "c++": "/usr/bin/c++", "cc": "/usr/bin/cc", "clang": "/usr/bin/clang", "clang++": "/usr/bin/clang++", "cpp": "/usr/bin/cpp", "ctangle": "/Library/TeX/texbin/ctangle", "cweave": "/Library/TeX/texbin/cweave", "flex": "/usr/bin/flex", "g++": "/usr/bin/g++", "gcc": "/usr/bin/gcc", "ld": "/usr/bin/ld", "lex": "/usr/bin/lex", "makeinfo": "/usr/local/bin/makeinfo", "nm": "/usr/bin/nm", "objdump": "/usr/bin/objdump", "ranlib": "/usr/bin/ranlib", "strip": "/usr/bin/strip", "tangle": "/Library/TeX/texbin/tangle", "tex": "/Library/TeX/texbin/tex", "weave": "/Library/TeX/texbin/weave", "yacc": "/usr/bin/yacc"} [10:02:58.883474, br, 38546] session initialized with: override: {} [10:02:58.885195, br, 38546] Running gRPC server. dns:///localhost:49628 [10:02:58.885625, br, 38546] Process spawned. [pid: 38547, command: ["make"]] [10:02:58.885659, br, 38546] Process wait requested. [pid: 38547] riscv64-unknown-elf-gcc -c -o kernel/entry.o kernel/entry.S riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/kalloc.o kernel/kalloc.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/string.o kernel/string.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/main.o kernel/main.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/vm.o kernel/vm.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/proc.o kernel/proc.c riscv64-unknown-elf-gcc -c -o kernel/swtch.o kernel/swtch.S riscv64-unknown-elf-gcc -c -o kernel/trampoline.o kernel/trampoline.S riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/trap.o kernel/trap.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/syscall.o kernel/syscall.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/sysproc.o kernel/sysproc.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/bio.o kernel/bio.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/fs.o kernel/fs.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/log.o kernel/log.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/sleeplock.o kernel/sleeplock.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/file.o kernel/file.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/pipe.o kernel/pipe.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/exec.o kernel/exec.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/sysfile.o kernel/sysfile.c riscv64-unknown-elf-gcc -c -o kernel/kernelvec.o kernel/kernelvec.S riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/plic.o kernel/plic.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/virtio_disk.o kernel/virtio_disk.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/start.o kernel/start.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/console.o kernel/console.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/printf.o kernel/printf.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/uart.o kernel/uart.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -c -o kernel/spinlock.o kernel/spinlock.c riscv64-unknown-elf-gcc -Wall -Werror -O -fno-omit-frame-pointer -ggdb -gdwarf-2 -DSOL_UTIL -DLAB_UTIL -MD -mcmodel=medany -ffreestanding -fno-common -nostdlib -mno-relax -I. -fno-stack-protector -fno-pie -no-pie -march=rv64g -nostdinc -I. -Ikernel -c user/initcode.S -o user/initcode.o riscv64-unknown-elf-ld -z max-page-size=4096 -N -e start -Ttext 0 -o user/initcode.out user/initcode.o riscv64-unknown-elf-ld: warning: user/initcode.out has a LOAD segment with RWX permissions riscv64-unknown-elf-objcopy -S -O binary user/initcode.out user/initcode riscv64-unknown-elf-objdump -S user/initcode.o > user/initcode.asm riscv64-unknown-elf-ld -z max-page-size=4096 -T kernel/kernel.ld -o kernel/kernel kernel/entry.o kernel/kalloc.o kernel/string.o kernel/main.o kernel/vm.o kernel/proc.o kernel/swtch.o kernel/trampoline.o kernel/trap.o kernel/syscall.o kernel/sysproc.o kernel/bio.o kernel/fs.o kernel/log.o kernel/sleeplock.o kernel/file.o kernel/pipe.o kernel/exec.o kernel/sysfile.o kernel/kernelvec.o kernel/plic.o kernel/virtio_disk.o kernel/start.o kernel/console.o kernel/printf.o kernel/uart.o kernel/spinlock.o riscv64-unknown-elf-ld: warning: kernel/kernel has a LOAD segment with RWX permissions riscv64-unknown-elf-objdump -S kernel/kernel > kernel/kernel.asm riscv64-unknown-elf-objdump -t kernel/kernel | sed '1,/SYMBOL TABLE/d; s/ .* / /; /^$/d' > kernel/kernel.sym [10:03:01.538043, br, 38546] Process wait request: done. [pid: 38547] [10:03:01.538155, br, 38546] Running command. [Exited with 0] [10:03:01.538202, br, 38546] Stopping gRPC server. [10:03:01.538773, br, 38546] succeeded with: 0 [10:03:01.540183, br, 38545] Process wait request: done. [pid: 38546] [10:03:01.540268, br, 38545] Running intercept finished. [Exited with 0] [10:03:01.542739, br, 38545] Process spawned. [pid: 38934, command: ["/usr/local/bin/bear", "citnames", "--input", "compile_commands.events.json", "--output", "compile_commands.json", "--run-checks", "--verbose"]] [10:03:01.542760, br, 38545] Process wait requested. [pid: 38934] [10:03:01.614394, br, 38934] bear: 3.1.3 [10:03:01.614528, br, 38934] arguments: ["/usr/local/bin/bear", "citnames", "--input", "compile_commands.events.json", "--output", "compile_commands.json", "--run-checks", "--verbose"] [10:03:01.614575, br, 38934] environment: [] [10:03:01.614605, br, 38934] sysname: Darwin [10:03:01.614608, br, 38934] release: 22.3.0 [10:03:01.614636, br, 38934] version: Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:46 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T6020 [10:03:01.614638, br, 38934] machine: x86_64 [10:03:01.614648, br, 38934] arguments parsed: {program: citnames, arguments: [{--input: [compile_commands.events.json]}, {--output: [compile_commands.json]}, {--run-checks: []}, {--verbose: []}, {command: [citnames]}]} [10:03:01.614872, br, 38934] Configuration: {"compilation":null,"output":{"content":{"duplicate_filter_fields":"file_output","include_only_existing_source":true},"format":{"command_as_array":true,"drop_output_field":false}}} [10:03:01.614956, br, 38934] compilation entries created. [size: 0] [10:03:01.614959, br, 38934] compilation entries to output. [size: 0] [10:03:01.615195, br, 38934] compilation entries written. [size: 0] [10:03:01.615209, br, 38934] succeeded with: 0 [10:03:01.615939, br, 38545] Process wait request: done. [pid: 38934] [10:03:01.615964, br, 38545] Running citnames finished. [Exited with 0] [10:03:01.616074, br, 38545] succeeded with: 0

I noticed that In case:if you are using non default compilers, you might want to write a configuration file to hint Bear which compilers to recognize. Can you give an example configuration file to prompt Bear which compilers to recognize?
Can you give me some more tips?

rizsotto commented 9 months ago

Ok, I see now...

  1. To intercept the compiler calls, I would suggest to create "wrapper" executable with the same name as your compiler. (Bear ships with a directory wrapper.d, which contains soft links to an executable called wrapper. You can see examples for the link in that directory. Just create one for riscv64-unknown-elf-gcc.)
  2. To recognized the compiler calls, I would suggest to create a configuration file.