-
Notifications
You must be signed in to change notification settings - Fork 298
Compiling G2 on Linux and OS X (command line)
Justin Clift edited this page Jan 14, 2016
·
5 revisions
- Install the prerequisites:
sudo apt-get install git-core gcc make
For a 64bit Linux you might also need lib32z1 because the gcc-arm-none-eabi package in /Tools is a 32bit binary:
sudo apt-get install lib32z1
- Checkout TinyG2 source as of now, master branch is very outdated. There's no stable version available, but the brave souls may try edge branch.
mkdir -p ~/src/github.com/synthetos
cd ~/src/github.com/synthetos
git clone https://github.com/synthetos/g2 g2
cd ./g2
git checkout edge
To clone the edge branch directly you can run the following command:
git clone -b edge git@github.com:synthetos/g2.git
- Build the sources:
cd g2/TinyG2
make
If you get the error which breaks at include <type_traits>
you probably use an incompatible version of gcc-arm-none-eabi
. At this time, to compile G2 it's best to use the gcc-arm-none-eabi binaries which are downloaded in the Tools directory or downgrade to 4.9.1.
Do not use -j option when running make. It will break everything. See #11 for the details. The output is ./bin/gShield/gShield_flash.bin.
After compiling, you will likely want to flash the firmware.
Getting Started Pages
- Home
- What is g2core?
- Who uses g2core?
- Jerk-Controlled Motion
- Getting Started with g2core
- Connecting to g2core
- Configuring g2core
- Flashing g2core
- Troubleshooting
Reference Pages
- Gcodes
- Mcodes
- Text Mode
- JSON Communications
- GPIO Digital IO
- Alarms & Exceptions
- Power Management
- Coordinate Systems
- Status Reports
- Status Codes
- G2 Communications
- Tool Offsets and Selection
- Probing
- Feedhold, Resume, Job Kill
- Marlin Compatibility
- 9 Axis UVW Operation
- gQuintic Specs
Discussion Topics
- Roadmap
- GPIO for 1.X Releases
- Toolheads
- Raster Streaming Prototol
- g2core REST Interface
- Gcode Parsing
- G2 3DP Dialect
- Consensus Gcode
- Digital DRO
- Overview of Motion Processing
Developer Pages
- Development & Contribution
- Branching and Release - DRAFT
- Getting Started with g2core Development
- Project Structure & Motate
- Compiling G2
- OSX w/Xcode
- OSX/Linux Command Line
- Windows10 w/AtmelStudio7
- Debugging G2 on OSX
- Board and Machine Profiles
- Arduino Due Pinout
- Arduino DUE External Interfaces
- Diagnostics
- Debugging w/Motate Pins
- Development Troubleshooting
- g2core Communications
- Git Procedures
- Windows 10 / VMware 8 Issues
- Dual Endpoint USB Internals
- G2core License
- VSCode Setup
- Compatibility Axioms
- Wiki History