How to use ImportC to import WebGPU header
JN
666total at wp.pl
Wed Jan 10 23:36:33 UTC 2024
I would like to use ImportC to automatically import a C header
into my D project. I've been using Dstep so far which works ok,
but requires some manual fixes to get the resulting D file to
compare and it doesn't let me to just drop the C header file.
I created a fresh dub project to try. I try to import this header
https://github.com/webgpu-native/webgpu-headers/blob/main/webgpu.h . I put webgpu.h file next to app.d.
My code is:
```
import std.stdio;
import webgpu;
void main()
{
}
```
it builds.
Then I tried to output one of the enums to see if it works:
```
import std.stdio;
import webgpu;
void main()
{
writeln(WGPUBlendFactor_Dst);
}
```
and it says:
Starting Performing "debug" build using
C:\D\dmd2\windows\bin64\dmd.exe for x86_64.
Building test_importd ~master: building configuration
[application]
source\app.d(6,10): Error: undefined identifier
`WGPUBlendFactor_Dst`
Error C:\D\dmd2\windows\bin64\dmd.exe failed with exit code 1.
I tried to do the other commandline but I get this error instead:
C:\Users\haxx\Desktop\dev\test_importd\source>dmd -c webgpu.c
-Hf=webgpu.di
C:\D\dmd2\windows\bin64\..\..\src\druntime\import\importc.h(134):
fatal error C1034:
sal.h: no include path set
Error: C preprocess command C:\Program Files (x86)\Microsoft
Visual
Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.exe failed for file
webgpu.c, exit status 2
More information about the Digitalmars-d-learn
mailing list