On Monday, 23 October 2023 at 18:00:39 UTC, Walter Bright wrote:
>On 10/23/2023 9:08 AM, d007 wrote:
>Error: unrecognized file extension h
That's because recognizing h files caused Iain problems building gdc.
To deal with:
--- file.c ---
#include "file.h"
today I try use importC with libfuse3.
DMD64 D Compiler v2.106.0-beta.1
dmd -c fuse.c -Hf=fuse.di
fuse.c:1:10: fatal error: fuse3/fuse.h: No such file or directory
1 | #include "fuse3/fuse.h"
| ^~~~~~~~~~~~~~
compilation terminated.
Error: C preprocess command cpp failed for file fuse.c, exit status 1
I am not sure how to pass c flags into dmd here, and I can not find document about this.
try with:
clang -E $dir/fuse.c -o fuse.i -I./include -DFUSE_USE_VERSION=30
dmd -c fuse.i -Hf=fuse.di
/usr/include/x86_64-linux-gnu/bits/byteswap.h(34): Error: missing comma or semicolon after declaration of `__uint16_t`, found `__bswap_16` instead
/usr/include/x86_64-linux-gnu/bits/byteswap.h(41): Error: no type for declarator before `}`
/usr/include/x86_64-linux-gnu/bits/byteswap.h(49): Error: missing comma or semicolon after declaration of `__uint32_t`, found `__bswap_32` instead
/usr/include/x86_64-linux-gnu/bits/byteswap.h(56): Error: no type for declarator before `}`
/usr/include/x86_64-linux-gnu/bits/byteswap.h(69): Error: missing comma or semicolon after declaration of `__inline`, found `__uint64_t` instead
/usr/include/x86_64-linux-gnu/bits/byteswap.h(77): Error: no type for declarator before `}`
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h(33): Error: missing comma or semicolon after declaration of `__uint16_t`, found `__uint16_identity` instead
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h(36): Error: no type for declarator before `}`
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h(39): Error: missing comma or semicolon after declaration of `__uint32_t`, found `__uint32_identity` instead
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h(42): Error: no type for declarator before `}`
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h(45): Error: missing comma or semicolon after declaration of `__uint64_t`, found `__uint64_identity` instead
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h(48): Error: no type for declarator before `}`
/usr/include/x86_64-linux-gnu/sys/select.h(102): Error: found `__readfds` when expecting `,`
/usr/include/x86_64-linux-gnu/sys/select.h(102): Error: no type-specifier for parameter
/usr/include/x86_64-linux-gnu/sys/select.h(103): Error: found `__writefds` when expecting `,`
/usr/include/x86_64-linux-gnu/sys/select.h(103): Error: no type-specifier for parameter
/usr/include/x86_64-linux-gnu/sys/select.h(104): Error: found `__exceptfds` when expecting `,`
/usr/include/x86_64-linux-gnu/sys/select.h(104): Error: no type-specifier for parameter
/usr/include/x86_64-linux-gnu/sys/select.h(105): Error: found `__timeout` when expecting `,`
/usr/include/x86_64-linux-gnu/sys/select.h(127): Error: found `__readfds` when expecting `,`
I use debian 12 amd64.