gcmc - G-Code Meta Compiler

Introduction

Getting and building gcmc

Please note: the git repository has been moved from gitorious.org to gitlab.com. You should rebase your local repository if you have cloned it.

$ tar xzf gcmc-1.8.3.tar.gz

$ cd gcmc-1.8.3

$ ./configure

$ make



'make'

'src'

'gcmc'

'configure --host i686-w64-mingw32'

'gcmc.exe'

Running gcmc

$ ./gcmc -o output.ngc input.gcmc

$ make examples

Changes

gcmc-1.8.3 - 2019-07-07

Fix: arc_* functions could generate a NaN in the SVG output

Fix: NaN and Inf now include sign due to changes newer printf behavior

gcmc-1.8.2 - 2017-02-19

Fix: spindle() function must first set speed with S before enabling spindle with M3/M4

gcmc-1.8.1 - 2017-02-11

Fix: Use-after-free bug in filename referencing when handling includes

Fix: Split the Bezier min-length and co-linear calculations to become slightly more accurate

gcmc-1.8.0 - 2016-07-25

Feature: Convert all internal string handling to Unicode (wchar_t)

Feature: to_float() and to_int() now can convert strings to values including units

Feature: Functions insert(), delete(), head(), tail() and reverse() can now operate on strings

Feature: Allow strings to be indexed as rvalues, returning the indexed character as string

Feature: Add to_val() and to_chr() functions to allow character manipulations

Feature: Add relocate() function to support adhoc relative offsets

Feature: Add TODO (wish)list

Fix: Several interpreter memory leaks plugged using valgrind

Fix: Allow delete() to delete all entries

Fix: Use correct source argument in insert() to insert into target

Fix: Fix relative arcs, specifically SVG, to use the correct movement

Fix: Fix arcs and circles, use global position whith undef end coord.

Bugs reports and feature requests

Gcmc documentation

gcmc man-page All command-line options and switches. gcmc introduction page Starting with a simple step-by-step introduction to the basic concepts and ending with the creation of an example to create involute gears. gcmc syntax page Detailed description of language syntax and its semantics. gcmc function reference page All built-in functions described with all parameters, types and operational modes. gcmc library page Library functions are more complex operations like tool compensation and canned drill sequences.

Gcmc examples and screenshots

Posted: 2013-11-04

Updated: 2015-05-14