Dice Pig Mac OS
Intro
Welcome! In this workshop we will introduce some of the more compelling Pigweed features that make embedded product development easier.
You can find each section linked above numbering 00
to 05
.
Dice Pig is a deceptively simple dice game that anyone can learn in a snap: Step 1: Roll the die. If you roll a one, you lose all the points you accumulated during that turn, and you lose your turn. Step 2: Continue rolling the die until you're happy with the number of. Mac OS 10.8 'Mountain Lion', however, has dropped tcpwrappers from the operating system. If you do run hunt on a server connected directly to the Internet, use firewall rules to control who can connect to the huntd server rather than hosts.allow and hosts.deny. DICE MAC OS X DRIVER RELEASE NOTES Requirements: Operating System: Mac OS X Mountain Lion 10.8.5 Mac OS X Mavericks 10.9.5 Mac OS X Yosemite 10.10.5 Mac OS X El Capitan 10.11.6 macOS Sierra 10.12.x Hardware: Minimum: Intel Core 2 Duo processor 2GB RAM Recommended: Intel Core i5, Core i7, or Xeon processor 4GB or more RAM. Practical Play of the Dice Game Pig Abstract The object of the jeopardy dice game Pig is to be the first player to reach 100 points. Each turn, a player repeatedly rolls a die until either a 1 is rolled or the player holds and scores the sum of the rolls (i.e., theturn total).
1. Host Machine Setup
Python and Git are the only prerequisites for getting started with Pigweed. Download and install if you don't already have them available.
Windows
Use the Windows installers for Python and Git from:
Make sure to add them to your system path during installation.
Enable long file paths enabled on Windows. This can be done using
regedit
or by running this as an administrator:
Linux
If you are using a Teensy 3.x or 4.x board for the first time on a Linux machine you will need to install the udev rules from: https://www.pjrc.com/teensy/49-teensy.rules
Mac
Python and Git should be installed by default on Mac OS.
2. Repo Setup
Open a Terminal (cmd.exe
on Windows) and clone this repo with:
No worries if you missed --recursive
! Run this to pull third_party/nanopb
and third_party/pigweed
.
If you want to pull new changes run:
3. Run bootstrap
After cloning the build tools can be installed with the bootstrap
scripts. This is only required after the initial clone or updating Pigweed.
Windows
Linux & Mac
After the initial bootstrap, use the activate
scripts to setup your shell for development.
Windows
Linux & Mac
4. Install Teensyduino Core
To build for Arduino boards you must install a core. At this time only the Teensyduino core is supported. Check the Pigweed Arduino target docs for more info.
All Arduino cores should be installed into third_party/pigweed/third_party/arduino/cores/
Run this to install the Teensy core:
5. Build!
STM32F429i Discovery Board
To build for the stm32f429i_disc1
board run:
Then start the compile with:
Teensy 3.x/4.x
To build for a Teensy 4.0 board run the following.
Windows
Run gn args out
which will open a text editor. Paste in the following, save and close the editor.
The arduino_board
arg can be set to any of these:
'teensy31'
- Teensy 3.2 / 3.1'teensy35'
- Teensy 3.5'teensy36'
- Teensy 3.6'teensy40'
- Teensy 4.0'teensy41'
- Teensy 4.1
Args need only be set once per out
directory. After setting them gn gen out
alone can be used. Once gn
is done, compile everything with:
Linux & Mac
You can use gn args out
as shown above or include the args on the command line:
After gn
is done, compile everything with:
GN and Ninja Reference
Basics
Create a build directory named
out
.Set build options with
gn args
.Compile with
Clean by deleting the out folder or running:
Inspecting
List buildable targets.
Inspect a target to see it's dependencies. E.g.
cflags
,ldflags
, etc.Target names start with a//
to denote the root level of the project. The format in this example is//{FOLDER1}/{$FOLDER2}:{BUILD.gn_TARGET_NAME}({TOOLCHAIN})
Teensy
stm32f429i_disc1
Host
ccache
Pigweed can make use of ccache
if you have it available on your system PATH
. This will speed up recompiling previously compiled artifacts dramatically. Useful if you regularly clean your out directory. Set this build arg to enable:
Editor Integration
Use --export-compile-commands
to create the out/compile_commands.json
file for use with lsp servers like clangd
.
clangd
can be integrating with various text editor extensions such as:
Further Reading
Intro
Welcome! In this workshop we will introduce some of the more compelling Pigweed features that make embedded product development easier.
You can find each section linked above numbering 00
to 05
.
1. Host Machine Setup
Python and Git are the only prerequisites for getting started with Pigweed. Download and install if you don't already have them available.
Windows
Use the Windows installers for Python and Git from:
Make sure to add them to your system path during installation.
Enable long file paths enabled on Windows. This can be done using
regedit
or by running this as an administrator:
Linux
If you are using a Teensy 3.x or 4.x board for the first time on a Linux machine you will need to install the udev rules from: https://www.pjrc.com/teensy/49-teensy.rules
Mac
Python and Git should be installed by default on Mac OS.
2. Repo Setup
Open a Terminal (cmd.exe
on Windows) and clone this repo with:
No worries if you missed --recursive
! Run this to pull third_party/nanopb
and third_party/pigweed
.
If you want to pull new changes run:
3. Run bootstrap
After cloning the build tools can be installed with the bootstrap
scripts. This is only required after the initial clone or updating Pigweed.
Windows
Linux & Mac
After the initial bootstrap, use the activate
scripts to setup your shell for development.
Windows
Linux & Mac
4. Install Teensyduino Core
To build for Arduino boards you must install a core. At this time only the Teensyduino core is supported. Check the Pigweed Arduino target docs for more info.
Dice Pig Mac Os X
All Arduino cores should be installed into third_party/pigweed/third_party/arduino/cores/
Run this to install the Teensy core:
5. Build!
Dice Pig Mac Os Update
STM32F429i Discovery Board
To build for the stm32f429i_disc1
board run:
Then start the compile with:
Teensy 3.x/4.x
To build for a Teensy 4.0 board run the following.
Windows
Run gn args out
which will open a text editor. Paste in the following, save and close the editor.
The arduino_board
arg can be set to any of these:
'teensy31'
- Teensy 3.2 / 3.1'teensy35'
- Teensy 3.5'teensy36'
- Teensy 3.6'teensy40'
- Teensy 4.0'teensy41'
- Teensy 4.1
Dice Pig Mac Os Download
Args need only be set once per out
directory. After setting them gn gen out
alone can be used. Once gn
is done, compile everything with:
Linux & Mac
You can use gn args out
as shown above or include the args on the command line:
After gn
is done, compile everything with:
GN and Ninja Reference
Basics
Create a build directory named
out
.Set build options with
gn args
.Compile with
Clean by deleting the out folder or running:
Inspecting
List buildable targets.
Inspect a target to see it's dependencies. E.g.
cflags
,ldflags
, etc.Target names start with a//
to denote the root level of the project. The format in this example is//{FOLDER1}/{$FOLDER2}:{BUILD.gn_TARGET_NAME}({TOOLCHAIN})
Teensy
stm32f429i_disc1
Host
Dice Pig Mac Os Catalina
ccache
Pigweed can make use of ccache
if you have it available on your system PATH
. This will speed up recompiling previously compiled artifacts dramatically. Useful if you regularly clean your out directory. Set this build arg to enable:
Editor Integration
Use --export-compile-commands
to create the out/compile_commands.json
file for use with lsp servers like clangd
.
clangd
can be integrating with various text editor extensions such as: