.. Copyright 2014-present PlatformIO 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. .. _faq: Frequently Asked Questions ========================== .. note:: We have a big database with `Frequently Asked Questions in our Community Forums `_. Please have a look at it. .. contents:: General ------- What is PlatformIO? ~~~~~~~~~~~~~~~~~~~ Please refer to :ref:`what_is_pio` What is ``.pioenvs`` directory ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Please refer to :ref:`projectconf_pio_envs_dir`. Command completion in Terminal ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Bash completion ''''''''''''''' Bash completion support will complete subcommands and parameters. To enable Bash completion for `platformio` subcommands you need to put into your `.bashrc`: .. code-block:: bash eval "$(_PLATFORMIO_COMPLETE=source platformio)" eval "$(_PLATFORMIO_COMPLETE=source pio)" ZSH completion '''''''''''''' To enable ``zsh`` completion please run these commands: .. code-block:: bash autoload bashcompinit && bashcompinit eval "$(_PLATFORMIO_COMPLETE=source platformio)" eval "$(_PLATFORMIO_COMPLETE=source pio)" .. note:: For permanent command completion you need to place commands above to ``~/.bashrc`` or ``~/.zshrc`` file. PlatformIO IDE -------------- Please refer to :ref:`PlatformIO IDE Frequently Asked Questions `. Before/Pre and After/Post build actions --------------------------------------- PlatformIO Build System has rich API that allows to attach different pre-/post actions (hooks). See features of :ref:`projectconf_extra_script` option for :ref:`projectconf`. .. _faq_troubleshooting: Troubleshooting --------------- Installation ~~~~~~~~~~~~ [Errno 1] Operation not permitted ''''''''''''''''''''''''''''''''' Answered in `issue #295 `_. Windows AttributeError: 'module' object has no attribute 'packages' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Answered in `issue #252 `_. .. _faq_troubleshooting_pionotfoundinpath: Program "platformio" not found in PATH '''''''''''''''''''''''''''''''''''''' Where is ``platformio`` binary installed? Run this command in Terminal .. code-block:: bash # for Unix which platformio echo $PATH Windows OS where platformio echo %PATH% For example, ``which platformio`` is equal to ``/usr/local/bin/platformio``, then `PATH (wiki) `_ should contain ``/usr/local/bin`` directory. **Unix Users**: You can make "symlinks" from ``platformio`` program to the ``bin`` directory which is included in ``$PATH``. For example, see `issue #272 `_. Windows UnicodeDecodeError: 'ascii' codec can't decode byte ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Answered in `issue #143 `_. PlatformIO: command not found || An error "pkg_resources.DistributionNotFound" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Please upgrade *SetupTools* package: .. code-block:: bash [sudo] pip uninstall setuptools [sudo] pip install setuptools # Then re-install PlatformIO [sudo] pip uninstall platformio [sudo] pip install platformio Miscellaneous ~~~~~~~~~~~~~ Serial does not work with panStampAVR board ''''''''''''''''''''''''''''''''''''''''''' Answered in `issue #144 `_. Building ~~~~~~~~ ARM toolchain: cc1plus: error while loading shared libraries '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' See related answers for `error while loading shared libraries `_. Archlinux: libncurses.so.5: cannot open shared object file '''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Answered in `issue #291 `_. Monitoring a serial port breaks upload '''''''''''''''''''''''''''''''''''''' Answered in `issue #384 `_.