mvBlueGEMINI Open Source Software ================================= Introduction ------------ The mvBlueGEMINI smart camera uses Embedded Linux/GNU as its operating system. It also makes use of a number of freely available tools that are released under different open source licences. Some of these licences require us to republish the source code used including any modifications that may have been made. In the associated archive file found here (e.g. SmartCam_Open_Source_20160331.tar.bz2) we have attempted to fulfil these requirements. We have provided all the relevant licence texts, archives of any source code used and, where necessary, archives of any changes in the form of patches that have been made to the standard sources that were already available publically. The list of sources includes the Linux kernel itself and any tools or other software written by MATRIX VISION that we have released under an open source license. *IMPORTANT* - The source archive does not include all the software and firmware running on the mvBlueGEMINI. - Not all the software in the source archive is installed on every different version of the mvBlueGEMINI. - All the software that is not included has a proprietary license and has been written by MATRIX VISION or by other authors. We are not free to distribute these sources or choose not to distribute them at the moment. In particular, source code cannot be supplied for: - Proprietary Linux kernel modules which are not dependent on other sub-sections or symbols of the kernel marked as for use only by GPL modules - Proprietary application code from MATRIX VISION (e.g. mvIMPACT Acquire SDK) - ICS - HALCON If you believe we have failed to include relevant open source software in our archive please contact MATRIX VISION support: support@matrix-vision.de Source code Archive ------------------- The archive includes two subdirectories: licences: all the relevant license texts grouped according to the name of the software. sources: all the relevant source code grouped according to the type of license. - The licence directories may contain a generic license and a specific license text file supplied with the software package. - The source directories may contain a single source archive if the source code has been used unchanged. - If MATRIX VISION has altered any source code there will be an additional archive containing all the changes in diff-patch format. - The name of the source archive includes the version number of the original source code, as supplied by the relevant author. Toolchain --------- The toolchain used to build all of the mvBlueGEMINI's software is based on the Linaro version linaro-4.8-r2013.12. It is available on the MATRIX VISION webserver. Installation: ---------------- snip --------------- chmod a+x angstrom-eglibc-i686-armv7ahf-vfp-neon-v2013.12-toolchain.sh ./angstrom-eglibc-i686-armv7ahf-vfp-neon-v2013.12-toolchain.sh ---------------- snip --------------- Warning! the toolchain should be installed to /usr/local/oecore-i686 After installation you can set up the relevant environment variables like this: ---------------- snip --------------- source /usr/local/oecore-i686/environment-setup-armv7ahf-vfp-neon-angstrom-linux-gnueabi ---------------- snip --------------- This will need to be repeated every time a new shell is opened. Re-Building binary code from the sources ---------------------------------------- In general it will be necessary to.. - unpack the main archive of an application - unpack any patch-archive and - apply the patches and - then cross-compile the package on a Linux PC (i686) using the linaro toolchain according to the instructions supplied with the package. A typical compile operation will make use of the linaro compiler using at least the following compiler options: arm-angstrom-linux-gnueabi-gcc -march=armv7-a -mthumb -mthumb-interwork -mfloat-abi=hard -mfpu=neon -- MATRIX VISION March 2016