atharvanan1 / aesd_project_build

Contains build system for Advanced Embedded Software Development Final Project
MIT License
0 stars 0 forks source link

Add application package to Yocto #6

Closed atharvanan1 closed 4 years ago

atharvanan1 commented 4 years ago

Add applications from Application Repository. Set them up as per hello-world recipe.

DoD: Applications are present in rootfs. They run as intended and pass the tests.

Blocker: #2 #3 (resolved)

bcis93 commented 4 years ago

Azure has a Yocto layer! This should install the runtime environment needed for iotedge. I am working on adding this layer to a Yocto build to test it out.

atharvanan1 commented 4 years ago

Tested with a build for Azure Yocto Layers - needs validation

atharvanan1 commented 4 years ago

Facing some issue with building the application. Possibly, there is an error in our makefile configuration, or the proprietary libraries have some error that needs to be patched.

bcis93 commented 4 years ago

Currently blocked - it looks like meta-iot-cloud layer might not be building the azure iot sdk quite right. The build of that layer succeeds, but when we try to build our app based on the libraries that got installed, there are some build errors (looks like include path errors)

atharvanan1 commented 4 years ago

Developed a CMake based compilation solution to fix include path errors.

atharvanan1 commented 4 years ago

Blocker: Compilation gives linker error, as certain libraries are not present

Libraries not present: prov_auth_client hsm_security_client parson uhttp

These libraries are not present in sysroot

atharvanan1 commented 4 years ago

A solution seems to be adding individual recipes for building these libraries. Dan had tried using a patch to modify how the meta-iot-cloud recipes built everything, however it ran into an issue - link.

His suggestion was to build each libraries individually, so we will now try to integrate that into our solution

atharvanan1 commented 4 years ago

Further progress was made. Identified three methods to solve this problem:

  1. Using meta-iot-cloud with patches to install provisioning-client
  2. Using custom recipes-azure
  3. Installing individual libraries
bcis93 commented 4 years ago

azure_app builds and is present in rootfs with 5517f162ee7d42902146bf4a508b04a05cdc88ec