当前位置: 首页 > news >正文

0419-Box-建立环境

环境

  • Time 2024-03-07
  • Zig 0.12.0-dev.3152+90c1a2c41
  • WSL-Ubuntu 22.04.3 LTS

前言

说明

参考资料:

  1. 《游戏开发:世嘉新人培训教材》

目标

建立一个 Zig 语言的控制台初始环境。

build.zig.zon

.{.name = "test",.version = "0.0.0",.dependencies = .{},.paths = .{""},
}

build.zig

const std = @import("std");pub fn build(b: *std.Build) void {const target = b.standardTargetOptions(.{});const optimize = b.standardOptimizeOption(.{});const exe = b.addExecutable(.{.name = "demo",.root_source_file = .{ .path = "src/main.zig" },.target = target,.optimize = optimize,});b.installArtifact(exe);const run_cmd = b.addRunArtifact(exe);run_cmd.step.dependOn(b.getInstallStep());if (b.args) |args| {run_cmd.addArgs(args);}const run_step = b.step("run", "Run the app");run_step.dependOn(&run_cmd.step);const exe_unit_tests = b.addTest(.{.root_source_file = .{ .path = "src/main.zig" },.target = target,.optimize = optimize,});const run_exe_unit_tests = b.addRunArtifact(exe_unit_tests);const test_step = b.step("test", "Run unit tests");test_step.dependOn(&run_exe_unit_tests.step);
}

main.zig

const std = @import("std");pub fn main() !void {std.debug.print("All your {s} are belong to us.\n", .{"codebase"});const stdout_file = std.io.getStdOut().writer();var bw = std.io.bufferedWriter(stdout_file);const stdout = bw.writer();try stdout.print("Run `zig build test` to run the tests.\n", .{});try bw.flush(); // don't forget to flush!
}test "simple test" {var list = std.ArrayList(i32).init(std.testing.allocator);defer list.deinit(); // try commenting this out and see if zig detects the memory leak!try list.append(42);try std.testing.expectEqual(@as(i32, 42), list.pop());
}

总结

实现了 Zig 的初始环境配置。

附录

http://www.jsqmd.com/news/1377756/

相关文章:

  • Play Integrity Fix终极指南:如何在Root设备上恢复Google认证
  • 终极Windows驱动管理指南:DriverStore Explorer完全教程,轻松释放数十GB磁盘空间
  • OBS Spout2插件:打破视频软件壁垒的终极纹理共享方案
  • 附近正规汽车托运公司 - 产品推荐官
  • Java 23 种设计模式:从踩坑到精通 | 番外:迭代器模式 —— 物流运单批量处理实战
  • 5步轻松搞定Windows包管理器安装:winget-install终极指南
  • Windows内核驱动漏洞CVE-2025-55680深度剖析:从原理到防御
  • 从零基础到就业的一年成长规划:按月拆解、可直接落地、普通人也能上岸
  • 2026 阜阳科技职院高起专报名条件?热门专业有哪些? - 小张zc
  • AI记忆系统核心架构:从向量化存储到智能检索的工程实践
  • JavaScript去混淆终极指南:快速解密混淆代码的完整方案
  • NBTExplorer:免费跨平台Minecraft数据编辑器的完整使用指南
  • Windows 10 1909版(18363)系统要求深度解析与兼容性实战指南
  • 为AI模型服务配置Nginx反向代理与HTTPS:以Phi-4-mini-reasoning为例
  • 离散数学逻辑:程序员必备的底层思维与工程实践指南
  • 向量函数与向量数据库的联动关系
  • 从零开始组装专业级3D打印机:Original Prusa i3 MK3S开源设计完整指南
  • VSCode高效开发Vue 3:Volar配置与插件生态全解析
  • 终极Windows窗口大小调整指南:3分钟学会强制调整任意软件界面
  • 泗县家装怎么选|好先生装饰与提莫装饰解析,附本地装修选购避坑指南 - 收录优先
  • 2026年督字诀学术科研辅导服务实力盘点梳理 - 互联网科技品牌测评
  • MCP Go SDK v1.0.0发布:构建AI原生应用工具集,实现LLM与外部系统安全集成
  • 这套“世界模型考试“,终于把AI视频生成的真实水平测了个底朝天
  • Minecraft光影包终极指南:Photon着色器打造真实游戏视觉体验
  • VMware Workstation 16虚拟机去虚拟化实战:绕过检测与深度伪装指南
  • 如何用SPT-AKI存档编辑器彻底掌控你的塔科夫离线游戏体验
  • LLM应用Canary发布实战:从流量染色到多维度监控的工程实践
  • PUBG罗技鼠标压枪宏终极指南:5步实现精准后坐力控制
  • 招投标加分|3A信用认证是哪个部门办的?正规发证机构怎么选? - 实用干货补给站
  • 2026年淄博变频器维修公司十大口碑** - 产品推荐官