const lib = b.addStaticLibrary("st", "src/main.zig"); 改为 const lib = b.addSharedLibrary("st","src/main.zig",std.build.LibExeObjStep.SharedLibKind{.unversioned = undefined}); 即可生成dll动态库和对应的lib文件。 或者直接用如下命令生成动态库 zig build-lib st.zig -dynamic 调用静态或...
$ zig build-lib mathtest.zig -dynamic 交叉编译的一流支持 使用异步函数进行并发 Zig 从0.5.0 引入了异步函数(async)。该功能不依赖于宿主操作系统,甚至不依赖于堆分配的内存。这意味着异步函数可以用于裸金属(freestanding)目标。 Zig 自动推导函数是否为异步,并允许在非异步函数上进行 async/await,这意味着 Zig...
build-exe Create executable fromsourceor object files build-lib Create library fromsourceor object files build-obj Create object fromsourceor object filesfmtReformat Zigsourceinto canonical form run Create executable and run immediatelytestCreate and run atestbuild translate-c Convert C code to Zig c...
[ 62%]: linking.release testlib.dlly:\zig\zig.exe build-lib -dynamic -fPIC -target x86_64-windows-msvc --strip -femit-bin=build\windows\x64\release\testlib.dll build\.objs\testlib\windows\x64\release\src\test.zig.objerror: lld: error: <root>: undefined symbol: _DllMainCRTStartup...
然后按照gyro文档中说的在build.zig中加入代码: const pkgs = @import("deps.zig").pkgs; 并在build函数中合适的位置加入 pkgs.addAllTo(xxx);//这里xxx对应的是你自己的编译类型,如果是exe就是exe,test就是test,lib就是lib PS:在下一开始使用的是这个包管理器,但后续因为crlf和lf的问题,实在是不堪其扰...
libdummy.sowill be produced. Conclusions That begsa question: is it or is it not possible to pass freeform extra arguments to internalzig ld.lldinvocation simply by using additionalzig build-liboptions and/or by using appropriate function inbuild.zig? (I didn't find a way to do it.) ...
在任意你喜欢的地方创建一个文件夹,并在文件夹中运行zig init-exe(或者init-lib) zig会问你创建默认的项目结构 选择你喜欢的编辑器打开(如果需要语法检查器可以看https://ziglang.org/learn/tools/ 这里), 项目结构 运行zig build run 运行结果 简单看一下语法: ...
zig translate-c .\hello.c -isystem "C:\zig\lib\libc\include\any-windows-any\" > hello.zig zig build-exe .\hello.zig start.zig:506:17: error: expected return type of main to be 'void', '!void', 'noreturn', 'u8', or '!u8' ...
Zig 标准库constc=@cImport({// 这个头文件里声明了函数 int foo(int)// 要编译 C 代码在 build...
一些刚开始用 Zig 的朋友容易把它理解为 C++ 的泛型或者元计算,但其实两者差异相当大。这里有一个有...