Giter VIP home page Giter VIP logo

ndless-docker's Introduction

Ndless-docker

Dockerfile for Ndless SDK, the toolchain to develop C and assembly programs for the TI-Nspire graphing calculator. The official Docker image is old and not maintained so have a try at this "Ndless-docker".

Why docker?

  • Installing a toolchain with Docker won't clutter your local environment
  • You can use Ndless SDK anywhere Docker runs

Requirements

  • Docker
  • Docker Compose

Usage

How to install Ndless SDK with Docker

$ git clone https://github.com/stepney141/ndless-docker
$ cd ndless-docker
$ docker-compose up -d --build

That is all. If the SDK has been installed correctly, you should see some outputs similar to these ones:

...
make[3]: Leaving directory '/opt/ndless-dev/Ndless/ndless/src/installer-5.2'
make[2]: Leaving directory '/opt/ndless-dev/Ndless/ndless/src'
make[1]: Leaving directory '/opt/ndless-dev/Ndless/ndless'
Removing intermediate container d69c543bbab8
 ---> 3715a1d66a8f
Successfully built 3715a1d66a8f
Successfully tagged ndless-docker_ndless-dev:latest
Creating ndless-dev ... 
Creating ndless-dev ... done

In general, building and installing a cross compiler tends to take a long time. For instance, setting up Ndless SDK with this Dockerfile took 78 minutes on my HP Spectre 13-ae019TU laptop computer.

If you get output messages like the above ones, you can stop the Docker container:

$ docker-compose down

How to build your source

First, make sure that your source files are in ndless-docker/src on your local storage.

After starting the Docker container with cd ndless-docker && docker-compose up -d, enter in it with docker-compose exec ndless-dev bash and do following operations in the container:

# cd /opt/ndless-dev/src
# nspire-tools new "program-name"

Then the toolchain will create a Makefile to build program-name.tns.
Next, run make in the Docker container to build it.

In default settings, your sources have to be in ndless-docker/src on local.
You can change all configs for the container by modifying docker-compose.yml.

Reference

Ndless SDK: C and assembly development introduction · ndless-nspire/Ndless Wiki

ndless-docker's People

Contributors

stepney141 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

dacaseo dw4lt

ndless-docker's Issues

Dockerfile doesn't work

So far building a docker image with this Dockerfile fails.
When a shell execute PYTHON="${PYTHON-$(which python3 2>/dev/null)}" at line 20 in build_toolchain.sh from Ndless, an error occurs and the script stops working.
I am trying to find out the cause of the problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.