Difference between revisions of "Mraa"
(→Install example: Install Mraa on ROCK Pi 4C Ubuntu Focal system) |
(→Mraa on ROCK Pi boards) |
||
Line 67: | Line 67: | ||
Version v2.1.0-11-g06b2be2 on Radxa ROCK Pi N10 | Version v2.1.0-11-g06b2be2 on Radxa ROCK Pi N10 | ||
</pre> | </pre> | ||
+ | |||
+ | ==== Install example: Install Mraa on CM3 IO Debian11 system ==== | ||
+ | For Debian11 Distribution the below commands install the essential set: | ||
+ | |||
+ | <pre> | ||
+ | root@radxa-cm3-io:/home/rock# apt-get install -y git build-essential swig4.0 python-dev cmake libjson-c-dev libnode-dev | ||
+ | root@radxa-cm3-io:/home/rock# apt-get install -y libc6 libjson-c5 libgcc1 libstdc++6 python2.7 libpython2.7 python3.7 libpython3.7 python3-dev | ||
+ | root@radxa-cm3-io:/home/rock# apt-get install -y libgtest-dev pkg-config cmake-data | ||
+ | </pre> | ||
+ | |||
+ | Get source code. | ||
+ | <pre> | ||
+ | root@radxa-cm3-io:/home/rock# git clone -b master https://github.com/radxa/mraa.git | ||
+ | root@radxa-cm3-io:/home/rock# cd mraa | ||
+ | </pre> | ||
+ | |||
+ | Patch the source code for building mraa with Python. | ||
+ | <pre> | ||
+ | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
+ | index 250d910..f1880e1 100644 | ||
+ | --- a/CMakeLists.txt | ||
+ | +++ b/CMakeLists.txt | ||
+ | @@ -145,7 +145,7 @@ include_directories (${SYSTEM_USR_DIR}) | ||
+ | option (BUILDDOC "Build all doc." OFF) | ||
+ | option (BUILDSWIG "Build swig modules." ON) | ||
+ | option (BUILDSWIGPYTHON "Build swig python modules." ON) | ||
+ | -option (BUILDSWIGNODE "Build swig node modules." ON) | ||
+ | +option (BUILDSWIGNODE "Build swig node modules." OFF) | ||
+ | option (BUILDSWIGJAVA "Build Java API." OFF) | ||
+ | option (USBPLAT "Detection USB platform." OFF) | ||
+ | option (FIRMATA "Add Firmata support to mraa." OFF) | ||
+ | @@ -156,7 +156,7 @@ option (FTDI4222 "Build with FTDI FT4222 subplatform support." OFF) | ||
+ | option (ENABLEEXAMPLES "Disable building of examples" ON) | ||
+ | option (INSTALLTOOLS "Install all tools" ON) | ||
+ | option (BUILDTESTS "Override the addition of tests" ON) | ||
+ | -option (USEPYTHON3TESTS "Force tests to run with python3" OFF) | ||
+ | +option (USEPYTHON3TESTS "Force tests to run with python3" ON) | ||
+ | |||
+ | set (BUILDARCH "" CACHE STRING "Override architecture to build for") | ||
+ | </pre> | ||
+ | |||
+ | Add the keyword extern. | ||
+ | <pre> | ||
+ | root@radxa-cm3-io:/home/rock/mraa/include# vi version.h | ||
+ | |||
+ | extern const char* gVERSION; | ||
+ | extern const char* gVERSION_SHORT; | ||
+ | </pre> | ||
+ | |||
+ | Build and install mraa. | ||
+ | |||
+ | <pre> | ||
+ | root@radxa-cm3-io:/home/rock/mraa# mkdir build | ||
+ | root@radxa-cm3-io:/home/rock/mraa# cd build/ | ||
+ | root@radxa-cm3-io:/home/rock/mraa/build# cmake .. | ||
+ | root@radxa-cm3-io:/home/rock/mraa/build# make | ||
+ | root@radxa-cm3-io:/home/rock/mraa/build# make install | ||
+ | root@radxa-cm3-io:/home/rock/mraa/build# ldconfig | ||
+ | root@radxa-cm3-io:/home/rock/mraa/build# mraa-gpio version | ||
+ | Version v2.1.0-23-gfc8c906 on Radxa CM3 IO | ||
+ | </pre> | ||
+ | |||
==== Install example: Install Mraa on ROCK Pi 4C Ubuntu Focal system ==== | ==== Install example: Install Mraa on ROCK Pi 4C Ubuntu Focal system ==== |
Revision as of 10:08, 8 October 2022
Contents
Mraa on ROCK Pi boards
This document describes how to build and use mraa for ROCK Pi boards.
List of ROCK Pi Boards supported
- ROCK Pi 4 A/B/C
- ROCK Pi E
- ROCK Pi N10
- ROCK Pi S
- ROCK Pi X
List of Linux Distributions
- Ubuntu
- Debian
- Yocto (mraa-radxa_git.bb)
Install example: Install Mraa on ROCK Pi N10 Debian system
For Debian Distribution the below commands install the essential set:
root@rockpin10bc:/home/rock# apt-get install -y git build-essential swig3.0 python-dev cmake libjson-c-dev libnode-dev root@rockpin10bc:/home/rock# apt-get install -y libc6 libjson-c3 libgcc1 libstdc++6 python2.7 libpython2.7 python3.7 libpython3.7 python3-dev root@rockpin10bc:/home/rock# apt-get install -y libgtest-dev pkg-config cmake-data
Get source code.
root@rockpin10bc:/home/rock# git clone -b master https://github.com/radxa/mraa.git root@rockpin10bc:/home/rock# cd mraa
Patch the source code for building mraa with Python.
diff --git a/CMakeLists.txt b/CMakeLists.txt index 250d910..f1880e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -145,7 +145,7 @@ include_directories (${SYSTEM_USR_DIR}) option (BUILDDOC "Build all doc." OFF) option (BUILDSWIG "Build swig modules." ON) option (BUILDSWIGPYTHON "Build swig python modules." ON) -option (BUILDSWIGNODE "Build swig node modules." ON) +option (BUILDSWIGNODE "Build swig node modules." OFF) option (BUILDSWIGJAVA "Build Java API." OFF) option (USBPLAT "Detection USB platform." OFF) option (FIRMATA "Add Firmata support to mraa." OFF) @@ -156,7 +156,7 @@ option (FTDI4222 "Build with FTDI FT4222 subplatform support." OFF) option (ENABLEEXAMPLES "Disable building of examples" ON) option (INSTALLTOOLS "Install all tools" ON) option (BUILDTESTS "Override the addition of tests" ON) -option (USEPYTHON3TESTS "Force tests to run with python3" OFF) +option (USEPYTHON3TESTS "Force tests to run with python3" ON) set (BUILDARCH "" CACHE STRING "Override architecture to build for")
Build and install mraa.
root@rockpin10bc:/home/rock/mraa# mkdir build root@rockpin10bc:/home/rock/mraa# cd build/ root@rockpin10bc:/home/rock/mraa/build# cmake .. root@rockpin10bc:/home/rock/mraa/build# make root@rockpin10bc:/home/rock/mraa/build# make install root@rockpin10bc:/home/rock/mraa/build# ldconfig root@rockpin10bc:/home/rock/mraa/build# mraa-gpio version Version v2.1.0-11-g06b2be2 on Radxa ROCK Pi N10
Install example: Install Mraa on CM3 IO Debian11 system
For Debian11 Distribution the below commands install the essential set:
root@radxa-cm3-io:/home/rock# apt-get install -y git build-essential swig4.0 python-dev cmake libjson-c-dev libnode-dev root@radxa-cm3-io:/home/rock# apt-get install -y libc6 libjson-c5 libgcc1 libstdc++6 python2.7 libpython2.7 python3.7 libpython3.7 python3-dev root@radxa-cm3-io:/home/rock# apt-get install -y libgtest-dev pkg-config cmake-data
Get source code.
root@radxa-cm3-io:/home/rock# git clone -b master https://github.com/radxa/mraa.git root@radxa-cm3-io:/home/rock# cd mraa
Patch the source code for building mraa with Python.
diff --git a/CMakeLists.txt b/CMakeLists.txt index 250d910..f1880e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -145,7 +145,7 @@ include_directories (${SYSTEM_USR_DIR}) option (BUILDDOC "Build all doc." OFF) option (BUILDSWIG "Build swig modules." ON) option (BUILDSWIGPYTHON "Build swig python modules." ON) -option (BUILDSWIGNODE "Build swig node modules." ON) +option (BUILDSWIGNODE "Build swig node modules." OFF) option (BUILDSWIGJAVA "Build Java API." OFF) option (USBPLAT "Detection USB platform." OFF) option (FIRMATA "Add Firmata support to mraa." OFF) @@ -156,7 +156,7 @@ option (FTDI4222 "Build with FTDI FT4222 subplatform support." OFF) option (ENABLEEXAMPLES "Disable building of examples" ON) option (INSTALLTOOLS "Install all tools" ON) option (BUILDTESTS "Override the addition of tests" ON) -option (USEPYTHON3TESTS "Force tests to run with python3" OFF) +option (USEPYTHON3TESTS "Force tests to run with python3" ON) set (BUILDARCH "" CACHE STRING "Override architecture to build for")
Add the keyword extern.
root@radxa-cm3-io:/home/rock/mraa/include# vi version.h extern const char* gVERSION; extern const char* gVERSION_SHORT;
Build and install mraa.
root@radxa-cm3-io:/home/rock/mraa# mkdir build root@radxa-cm3-io:/home/rock/mraa# cd build/ root@radxa-cm3-io:/home/rock/mraa/build# cmake .. root@radxa-cm3-io:/home/rock/mraa/build# make root@radxa-cm3-io:/home/rock/mraa/build# make install root@radxa-cm3-io:/home/rock/mraa/build# ldconfig root@radxa-cm3-io:/home/rock/mraa/build# mraa-gpio version Version v2.1.0-23-gfc8c906 on Radxa CM3 IO
Install example: Install Mraa on ROCK Pi 4C Ubuntu Focal system
For Ubuntu Distribution the below commands install the essential set:
root@rockpin10bc:/home/rock# apt-get install -y git build-essential swig3.0 python-dev cmake libjson-c-dev libnode-dev root@rockpin10bc:/home/rock# apt-get install -y libc6 libgcc1 libstdc++6 python python2.7 libpython2.7 python3.8 libpython3.8 python3-dev python3 root@rockpin10bc:/home/rock# apt-get install -y libgtest-dev pkg-config cmake-data
Get source code.
root@rockpin10bc:/home/rock# git clone -b master https://github.com/radxa/mraa.git root@rockpin10bc:/home/rock# cd mraa
Patch the source code for building mraa with Python.
diff --git a/CMakeLists.txt b/CMakeLists.txt index 250d910..f1880e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -145,7 +145,7 @@ include_directories (${SYSTEM_USR_DIR}) option (BUILDDOC "Build all doc." OFF) option (BUILDSWIG "Build swig modules." ON) option (BUILDSWIGPYTHON "Build swig python modules." ON) -option (BUILDSWIGNODE "Build swig node modules." ON) +option (BUILDSWIGNODE "Build swig node modules." OFF) option (BUILDSWIGJAVA "Build Java API." OFF) option (USBPLAT "Detection USB platform." OFF) option (FIRMATA "Add Firmata support to mraa." OFF) @@ -156,7 +156,7 @@ option (FTDI4222 "Build with FTDI FT4222 subplatform support." OFF) option (ENABLEEXAMPLES "Disable building of examples" ON) option (INSTALLTOOLS "Install all tools" ON) option (BUILDTESTS "Override the addition of tests" ON) -option (USEPYTHON3TESTS "Force tests to run with python3" OFF) +option (USEPYTHON3TESTS "Force tests to run with python3" ON) set (BUILDARCH "" CACHE STRING "Override architecture to build for")
Build and install mraa.
root@rockpin10bc:/home/rock/mraa# mkdir build root@rockpin10bc:/home/rock/mraa# cd build/ root@rockpin10bc:/home/rock/mraa/build# cmake .. root@rockpin10bc:/home/rock/mraa/build# make root@rockpin10bc:/home/rock/mraa/build# make install root@rockpin10bc:/home/rock/mraa/build# ldconfig root@rockpin10bc:/home/rock/mraa/build# mraa-gpio version Version v2.1.0-11-g06b2be2 on ROCK Pi 4
Use mraa
Since we have installed mraa successfully, now we start to use it. At this part, you can check out the following guides.
Troubleshooting
- If you have an issue, start a new post on the forum. https://forum.radxa.com/.