Contiene plantillas, documentos y ejemplos de código fuente a los que se hace referencia en https://embeddedartistry.com.
Tabla de contenido
Este repositorio utiliza submódulos. Puede clonar el repositorio de forma recursiva para configurar submódulos automáticamente:
$ git clone https://github.com/embeddedartistry/embedded-resources.git --recursive
También puedes inicializar submódulos después de la clonación:
$ git submodule update --init --recursive
Este repositorio requiere git-lfs. Si no tiene esto instalado, visite https://git-lfs.github.com
Si clonó este repositorio antes de instalar git-lfs, ejecute git lfs pull
. De lo contrario, clone realizará automáticamente un git lfs pull
.
Este repositorio se construye con meson, que requiere Python 3 y Ninja.
En Ubuntu, estos se pueden instalar fácilmente con el siguiente comando:
$ sudo apt-get install python3 python3-pip ninja-build
Para OSX, puedes usar brew
:
$ brew install python3 ninja
La mejor manera de conseguir Meson es a través de pip:
$ pip3 install meson
build/
docs
examples/
c/
cpp/
libc/
libcpp/
interview/
manufacturing/
Puede ejecutar make
desde el nivel superior para crear todos los ejemplos. La salida se colocará en una carpeta llamada buildresults/
en el nivel superior.
También puedes utilizar la sintaxis de mesón adecuada:
$ meson buildresults
$ cd buildresults
$ ninja
Los objetivos se pueden construir individualmente usando la interfaz ninja en el directorio buildresults/
.
$ cd buildresults
$ ninja interview/bad_c
Para limpiar las compilaciones, ejecute make clean
desde la raíz del proyecto o ninja clean
en el directorio buildresults/
.
Los archivos binarios se almacenarán en la carpeta buildresults/
en el mismo nivel jerárquico que en el árbol de origen. Por ejemplo, la aplicación de demostración de entrevista bad_c
estará en buildresults/interview/
.
Este repositorio ahora incluye pruebas. Las pruebas se pueden ejecutar con make test
, que construirá el proyecto, ejecutará las pruebas y le brindará el informe resumido del ejecutor de pruebas de Meson. En este escenario, los resultados de las pruebas se almacenan en archivos XML que se encuentran en buildresults/test
Para ver un resultado legible por humanos, cree el proyecto como lo haría normalmente ( make
o make test
) y luego emita este comando:
$ ninja -C buildresults/ embedded-resources-tests
ninja: Entering directory `buildresults/'
[0/1] Running external command embedde...es-tests (wrapped by meson to set env)
[==========] Running 1 test(s).
[ RUN ] test_case
[ OK ] test_case
[==========] 1 test(s) run.
[ PASSED ] 1 test(s).