Skip to content

thlorenz/learnuv

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

learnuv

Learn uv for fun and profit, a self guided workshop to the library that powers Node.js.

screenshot

Before You Start

Read the learnuv gitbook which explains some libuv and related C language concepts that will help you complete the exercises.

Installation

Requires Python 2.6 or 2.7 to be installed. If python is not in your path set the environment variable PYTHON to its location. For example on Windows: set PYTHON=C:\Python27\python.exe

git clone https://github.com/thlorenz/learnuv && cd learnuv
npm install

Getting Started

./learnuv help

Building

learnuv comes with build commands that you can use instead of the manual steps explained further below.

  • ./learnuv ninja Compile your sources with ninja, stored inside ./out/Debug
  • ./learnuv make Compile your sources with make, stored inside ./out/Debug
  • ./learnuv xcode Generate a learnuv Xcode project, named ./learnuv.xcodeproj

Windows Caveats

Ninja and Make do not work on windows except via cygwin.

Ninja

Highly recommended since it builds faster than any of the other options, so get ninja and do:

./gyp_learnuv.py -f ninja
ninja -C out/Debug
./out/Debug/01_system_info

Make

Works on Linux and OSX.

./gyp_learnuv.py -f make
make -C out
./out/Debug/01_system_info

Xcode

Works on OSX only. Highly recommended to ease debugging and code navigation.

./gyp_learnuv.py -f xcode
open learnuv.xcodeproj

Visual Studio

Works on Windows only. TODO need to adapt vcbuild.bat.

Running

./learnuv

License

MIT

About

Learn uv for fun and profit, a self guided workshop to the library that powers Node.js.

Resources

License

Stars

Watchers

Forks

Packages

No packages published