2016-08-03 22:18:51 +03:00
|
|
|
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
2015-11-18 17:33:46 +02:00
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
you may not use this file except in compliance with the License.
|
|
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
|
2014-08-09 16:31:20 +03:00
|
|
|
.. _cmd_init:
|
|
|
|
|
|
|
|
platformio init
|
|
|
|
===============
|
|
|
|
|
|
|
|
.. contents::
|
|
|
|
|
|
|
|
Usage
|
|
|
|
-----
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
2014-11-30 18:14:18 +02:00
|
|
|
platformio init [OPTIONS]
|
2014-08-09 16:31:20 +03:00
|
|
|
|
|
|
|
|
|
|
|
Description
|
|
|
|
-----------
|
|
|
|
|
2015-12-07 22:23:20 +02:00
|
|
|
Initialize new PlatformIO based project or update existing with new data.
|
2014-08-09 16:31:20 +03:00
|
|
|
|
|
|
|
|
|
|
|
This command will create:
|
|
|
|
|
|
|
|
* :ref:`projectconf`
|
2016-03-06 01:03:43 +02:00
|
|
|
* ``src`` directory where you should place source code
|
|
|
|
(``*.h, *.c, *.cpp, *.S, *.ino, etc.``)
|
|
|
|
* ``lib`` directory can be used for the project specific (private) libraries.
|
|
|
|
More details are located in ``lib/readme.txt`` file.
|
|
|
|
* Miscellaneous files for CVS and :ref:`ci` support.
|
2015-08-22 23:11:48 +03:00
|
|
|
|
2014-11-30 18:14:18 +02:00
|
|
|
Options
|
|
|
|
-------
|
|
|
|
|
2015-05-07 16:44:56 +01:00
|
|
|
.. program:: platformio init
|
|
|
|
|
2014-11-30 18:14:18 +02:00
|
|
|
.. option::
|
2015-05-15 22:31:55 +02:00
|
|
|
-d, --project-dir
|
2014-11-30 18:14:18 +02:00
|
|
|
|
2016-06-13 19:24:13 +03:00
|
|
|
A path to the directory where *PlatformIO* will initialize new project.
|
2014-08-09 16:31:20 +03:00
|
|
|
|
2014-12-29 20:22:01 +02:00
|
|
|
.. option::
|
2015-05-15 22:31:55 +02:00
|
|
|
-b, --board
|
2014-12-29 20:22:01 +02:00
|
|
|
|
2016-08-26 16:09:52 +03:00
|
|
|
If you specify board ``ID`` (you can pass multiple ``--board`` options), then
|
2014-12-29 20:22:01 +02:00
|
|
|
*PlatformIO* will automatically generate environment for :ref:`projectconf` and
|
|
|
|
pre-fill these data:
|
|
|
|
|
|
|
|
* :ref:`projectconf_env_platform`
|
|
|
|
* :ref:`projectconf_env_framework`
|
|
|
|
* :ref:`projectconf_env_board`
|
|
|
|
|
|
|
|
The full list with pre-configured boards is available here :ref:`platforms`.
|
|
|
|
|
2015-05-22 19:08:51 +03:00
|
|
|
.. option::
|
|
|
|
--ide
|
|
|
|
|
2016-09-01 15:14:38 +03:00
|
|
|
Initialize PlatformIO project for the specified IDE which can be imported later
|
2015-05-22 19:08:51 +03:00
|
|
|
via "Import Project" functionality.
|
|
|
|
|
|
|
|
A list with supported IDE is available within ``platformio init --help`` command.
|
2015-12-26 01:02:44 +02:00
|
|
|
Also, please take a look at :ref:`ide` page.
|
2015-05-22 19:08:51 +03:00
|
|
|
|
2014-12-29 20:22:01 +02:00
|
|
|
.. option::
|
2016-09-01 15:14:38 +03:00
|
|
|
-O, --project-option
|
2014-12-29 20:22:01 +02:00
|
|
|
|
2016-09-01 15:14:38 +03:00
|
|
|
Initialize project with additional options from :ref:`projectconf`. For example,
|
|
|
|
``platformio init --project-option="lib_deps=ArduinoJSON"``.
|
2014-08-09 16:31:20 +03:00
|
|
|
|
2015-04-23 12:54:59 +01:00
|
|
|
.. option::
|
|
|
|
--env-prefix
|
|
|
|
|
2015-05-06 11:28:56 +01:00
|
|
|
An environment prefix which will be used with pair in board type.
|
|
|
|
For example, the default environment name for ``teensy_31`` board will
|
|
|
|
be ``[env:teensy_31]``.
|
2015-04-23 12:54:59 +01:00
|
|
|
|
|
|
|
|
2015-08-22 23:11:48 +03:00
|
|
|
|
2014-08-09 16:31:20 +03:00
|
|
|
Examples
|
|
|
|
--------
|
|
|
|
|
2014-11-30 18:14:18 +02:00
|
|
|
1. Create new project in the current working directory
|
|
|
|
|
2014-08-09 16:31:20 +03:00
|
|
|
.. code-block:: bash
|
|
|
|
|
|
|
|
$ platformio init
|
2014-12-29 20:22:01 +02:00
|
|
|
|
2014-11-30 18:14:18 +02:00
|
|
|
The current working directory *** will be used for the new project.
|
|
|
|
You can specify another project directory via
|
2014-12-03 14:56:24 +02:00
|
|
|
`platformio init -d %PATH_TO_THE_PROJECT_DIR%` command.
|
2014-11-30 18:14:18 +02:00
|
|
|
|
|
|
|
The next files/directories will be created in ***
|
2015-01-31 22:42:52 +02:00
|
|
|
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
|
2015-10-13 14:01:16 +01:00
|
|
|
src - Put your source files here
|
2015-08-21 23:56:22 +03:00
|
|
|
lib - Put here project specific (private) libraries
|
2014-11-30 18:14:18 +02:00
|
|
|
Project has been successfully initialized!
|
2015-01-31 22:42:52 +02:00
|
|
|
Useful commands:
|
|
|
|
`platformio run` - process/build project from the current directory
|
|
|
|
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
|
|
|
|
`platformio run --target clean` - clean project (remove compiled files)
|
2014-11-30 18:14:18 +02:00
|
|
|
|
|
|
|
|
|
|
|
2. Create new project in the specified directory
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
|
|
|
$ platformio init -d %PATH_TO_DIR%
|
2014-12-29 20:22:01 +02:00
|
|
|
|
|
|
|
The next files/directories will be created in ***
|
2015-01-31 22:42:52 +02:00
|
|
|
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
|
2015-10-13 14:01:16 +01:00
|
|
|
src - Put your source files here
|
2015-08-21 23:56:22 +03:00
|
|
|
lib - Put here project specific (private) libraries
|
2014-12-29 20:22:01 +02:00
|
|
|
Project has been successfully initialized!
|
2015-01-31 22:42:52 +02:00
|
|
|
Useful commands:
|
|
|
|
`platformio run` - process/build project from the current directory
|
|
|
|
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
|
|
|
|
`platformio run --target clean` - clean project (remove compiled files)
|
2014-12-29 20:22:01 +02:00
|
|
|
|
2016-09-01 15:14:38 +03:00
|
|
|
3. Initialize project for Arduino Uno
|
2014-12-29 20:22:01 +02:00
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
|
|
|
$ platformio init --board uno
|
|
|
|
|
2015-01-31 22:42:52 +02:00
|
|
|
The current working directory *** will be used for the new project.
|
|
|
|
You can specify another project directory via
|
|
|
|
`platformio init -d %PATH_TO_THE_PROJECT_DIR%` command.
|
|
|
|
|
2014-11-30 18:14:18 +02:00
|
|
|
The next files/directories will be created in ***
|
2015-01-31 22:42:52 +02:00
|
|
|
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
|
2015-10-13 14:01:16 +01:00
|
|
|
src - Put your source files here
|
2015-08-21 23:56:22 +03:00
|
|
|
lib - Put here project specific (private) libraries
|
2014-11-30 18:14:18 +02:00
|
|
|
Project has been successfully initialized!
|
2015-01-31 22:42:52 +02:00
|
|
|
Useful commands:
|
|
|
|
`platformio run` - process/build project from the current directory
|
|
|
|
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
|
|
|
|
`platformio run --target clean` - clean project (remove compiled files)
|