General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
Go to file
2020-08-19 16:12:29 -07:00
.builds ci: don't rely on sourcehut's pkg system 2020-01-30 10:23:00 -05:00
.github Sponsors Button => ZSF 2020-07-11 18:33:56 -04:00
ci ci linux: bump qemu-5.1.0 2020-08-14 14:38:54 -04:00
cmake update cmake, update readme, in response to the dynamic linking fiasco 2020-04-17 18:41:21 -04:00
deps deps/SoftFloat-3e/: commit with LF line endings 2020-05-31 12:18:31 -04:00
doc Merge pull request #6046 from heidezomp/std-log-scoped-part2 2020-08-17 16:59:27 -04:00
lib builder: implement integer options 2020-08-19 17:41:43 -04:00
src Merge pull request #5495 from xackus/fix_5314 2020-08-18 23:55:44 +03:00
src-self-hosted stage2: emit zir variable fix, array type and enum literal support 2020-08-19 16:12:29 -07:00
test stage2: fix astgen of decl ref, add test for global consts 2020-08-19 16:12:29 -07:00
tools Update tools/process_headers.zig to latest zig 2020-08-10 21:09:23 -04:00
.gitattributes .gitattributes: deps/SoftFloat-3e/*.txt lines are crlf terminated 2020-04-05 11:03:31 -04:00
.gitignore fix .gitignore file and add commit missing std lib file 2019-02-26 18:33:27 -05:00
build.zig build: -Dforce-link-libc now also applies to test-stage2 2020-08-18 15:08:43 -07:00
CMakeLists.txt simplify zig info and rename it to zig env 2020-08-17 17:06:43 -07:00
CONTRIBUTING.md add behavior tests fro macro translations 2020-07-16 17:10:52 +03:00
LICENSE add license 2015-08-05 16:22:18 -07:00
README.md clean up readme 2020-07-03 04:43:05 +00:00

ZIG

A general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

Resources

Building from Source

Build Status

Note that you can download a binary of master branch.

Stage 1: Build Zig from C++ Source Code

Dependencies

POSIX
  • cmake >= 2.8.5
  • gcc >= 5.0.0 or clang >= 3.6.0
  • LLVM, Clang, LLD development libraries == 10.x, compiled with the same gcc or clang version above
Windows
  • cmake >= 3.15.3
  • Microsoft Visual Studio. Supported versions:
    • 2015 (version 14)
    • 2017 (version 15.8)
    • 2019 (version 16)
  • LLVM, Clang, LLD development libraries == 10.x

Instructions

POSIX
mkdir build
cd build
cmake ..
make install

Need help? Troubleshooting Build Issues

MacOS
brew install cmake llvm
brew outdated llvm || brew upgrade llvm
mkdir build
cd build
cmake .. -DCMAKE_PREFIX_PATH=$(brew --prefix llvm)
make install

You will now run into this issue: homebrew and llvm 10 packages in apt.llvm.org are broken with undefined reference to getPollyPluginInfo or error: unable to create target: 'Unable to find target for this triple (no targets are registered)', in which case try -DZIG_WORKAROUND_4799=ON

Hopefully this will be fixed upstream with LLVM 10.0.1.

Windows

See https://github.com/ziglang/zig/wiki/Building-Zig-on-Windows