Skip to content

sn-bindgen fails on Debian sid #384

@DavidGoodenough

Description

@DavidGoodenough

Given a very simple file "test.h":-

#include <stdint.h>
uint8_t hello();

if I run:- ~/src/RclSn/target/streams/_build/_global/bindgenBinary/_global/streams/sn-bindgen-gh-release-binary/v0.3.0 --header test.h --clang -v --package bah --scala

Debian clang version 17.0.6 (23+b2)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir:
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/10
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/12
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/13
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/14
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/15
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/6.5.0
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/8
Found candidate GCC installation: /../lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /../lib/gcc/x86_64-linux-gnu/15
Candidate multilib: .;@m64
Selected multilib: .;@m64
ignoring nonexistent directory "/../lib/gcc/x86_64-linux-gnu/15/../../../../x86_64-linux-gnu/include"
ignoring nonexistent directory "/include"
ignoring duplicate directory "/usr/local/include"
as it is a non-system directory that duplicates a system directory
ignoring duplicate directory "/usr/include/x86_64-linux-gnu"
as it is a non-system directory that duplicates a system directory
ignoring duplicate directory "/usr/include"
as it is a non-system directory that duplicates a system directory
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/llvm-21/lib/clang/21/include
/usr/include/clang/17.0.6/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
Clang reported [1] errors
[bindgen] error test.h:2:1: error: unknown type name 'uint8_t'

If I run clang -v test.h
Debian clang version 21.1.8 (2)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-21/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/12
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/13
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/14
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/15
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/15
Candidate multilib: .;@m64
Selected multilib: .;@m64
(in-process)
"/usr/lib/llvm-21/bin/clang" -cc1 -triple x86_64-pc-linux-gnu -emit-pch -dumpdir a- -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name test.h -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fdebug-compilation-dir=/home/david/tmp -v -fcoverage-compilation-dir=/home/david/tmp -resource-dir /usr/lib/llvm-21/lib/clang/21 -internal-isystem /usr/lib/llvm-21/lib/clang/21/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/15/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -ferror-limit 19 -fmessage-length=236 -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o test.h.pch -x c-header test.h
clang -cc1 version 21.1.8 based upon LLVM 21.1.8 default target x86_64-pc-linux-gnu
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/15/../../../../x86_64-linux-gnu/include"
ignoring nonexistent directory "/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/llvm-21/lib/clang/21/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.

This seems to find the right directories, sn-bindgen does not. Note that using clang-17 rather than clang (which is ln to clang21) makes no difference.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions