User Tools

Site Tools


build

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
build [2019/11/13 12:30] – [Build] grafbuild [2023/05/31 16:37] (current) – [Preparations] ursgraf
Line 1: Line 1:
 ====== Build the Software ====== ====== Build the Software ======
-The application is developed on a Linux host machine and can then be deployed to the board.+The application is developed on a Linux host machine and can then be deployed to the board. The software itself can be studied on [[https://github.com/eeduro/delta]].
 ===== Preparations ===== ===== Preparations =====
-You need any 64 bit Linux version (VM or standalone). We suggest using UbuntuPlease make sure to have all necessary tools available.+Install our Linux image on the target and install the necessary SDK and tools on the host as described in [[https://wiki.eeros.org/getting_started/install/use_on_bbb|Installation on a Beaglebone Blue Board]]. Use a production image (ost-distro-*), see [[https://wiki.bu.ost.ch/infoportal/software/linux/yocto/meta-ost]]. This image is write protected which make it safe to turn the power of at any instance. However, you must make sure to mount the system as writable, see [[deploy|]].
  
-<code> +===== Getting the Sources =====
-$ sudo apt-get install make cmake git g++ +
-</code> +
- +
-As cross tool chain, the **arm-linux-gnueabihf-gcc-4.9** is needed. It is recommended to use a Ubuntu 16.04 as host operating system, since this packet is available in the default repositories. +
-If a Linux host is used in a virtual machine, a [[https://lubuntu.net/downloads/|lightweight Ubuntu distribution]] is recommended. In case you are using a newer Ubuntu version, you have to add //xenial// to your sources list, see [[https://askubuntu.com/questions/1036108/install-gcc-4-9-at-ubuntu-18-04]]. +
-==== Start your Beagle Bone Blue ==== +
-  * Connect the micro USB with the PC. +
-  * It takes about 15 seconds until the Beagle Bone Blue is powered up and another 15 seconds until a network adapter is shown on your host pc. Open a Terminal and check if this network is already available. <code>$ ifconfig </code> If you work on the host in a virtual machine, you might need to select the device //BeagleBone.org// among your various USB devices. +
-  * Connect via ssh to your Beagle Bone Blue <code>$ ssh debian@192.168.7.2</code> Default credentials are "debian:temppwd" +
- +
-==== Login ==== +
-The first time you do this you will get a security alert in the console - type "yes" and hit enter.  +
-Then enter the password "temppwd" and confirm with enter. Don't be alarmed if the console does not response while you type your password.+
  
-===== Getting the Sources with a Script ===== +Fetch the [[https://github.com/eeduro/eeduro-scripts.git|EEDURO scripts]] on your host and change into the right directory
-A git repository [[https://github.com/eeduro/eeduro-scripts|]] hosted on GitHub contains useful build scripts. Fetch it on your cross development system with +
 <code> <code>
-$ git clone https://github.com/eeduro/eeduro-scripts.git eeros-project +$ git clone https://github.com/eeduro/eeduro-scripts.git eeduro 
-$ cd eeros-project+$ cd eeduro/delta
 </code> </code>
-Run the ''clone.sh'' script. This will clone all the necessary repositories.+Run the ''clone.sh'' script. This will clone the necessary repository.
 <code> <code>
 $ ./clone.sh $ ./clone.sh
 </code> </code>
  
-===== Compile Roboticscape Library ===== 
-The library for the roboticscape must be compiled manually. Though the library is already on the target, we must also have it on the host, in order to be able to link an application. At the time of writing, the Beaglebone Blue boards are shipped with an image that has the robotics cape library version 0.3.4 installed. Therefore, it is highly recommended to use this version. The bbblue-eeros wrapper library was implemented to work with the robotics cape library v0.3.4. Newer version were not tested yet. When using the clone.sh script, the correct version is checked out per default and no additional step is necessary. \\ 
-If not yet installed, the cross toolchain must be installed on the host machine with the following command 
-<code> 
-$ sudo apt-get install g++-4.9-arm-linux-gnueabihf 
-</code> 
-If this fails and your Linux version does not offer the right version of the cross toolchain in its repositories, you have to add //xenial// to your sources list, see [[https://askubuntu.com/questions/1036108/install-gcc-4-9-at-ubuntu-18-04]]. 
- 
-To compile the library, change into: 
-<code> 
-$ cd librobotcontrol/libraries 
-</code> 
-and edit the ''Makefile'' therein. Change the following two lines from  
-<code> 
-CC := gcc 
-LINKER := gcc 
-</code> 
-to 
-<code> 
-CC := arm-linux-gnueabihf-gcc-4.9 
-LINKER := arm-linux-gnueabihf-gcc-4.9 
-</code> 
-This change is necessary because the library must be compiled with the cross compiler. Now, the roboticscape library can be compiled using make. 
-<code> 
-$ make 
-</code> 
  
 ===== Compile ===== ===== Compile =====
- +Start the compilation of the delta application with
-Change back into your project directory and start the compilation of EEROS, the hardware wrapper library, and the delta application with+
 <code> <code>
 $ ./make.sh $ ./make.sh
 </code> </code>
  
-Finally, load the executable onto the target (see notes below if you are doing this on a brand new board) with 
-<code> 
-$ ./deploy.sh 
-</code> 
-The default password on the BeagleBone Blue Board is "temppwd". Edit the ''deploy.txt'' file to define which files should be downloaded. \\ 
  
-==== Notes ==== 
-When the BeagleBone Blue Board is used the first time (never used with EEROS before or a brand new BeagleBone Blue / Image), some initial setup steps are needed. The script **deploy.sh** will copy the executable and libraries to **/opt/eeros**. Therefore, this folder must be present on the target or the copy fails. To create the folder, execute the following on the BeagleBone: 
-<code> 
-debian@beaglebone:$ sudo mkdir /opt/eeros 
-debian@beaglebone:$ sudo chown debian:debian /opt/eeros/ 
-</code> 
- 
-Also, some links must be created. The system must find the eeros libraries to load them. The following symbolic links are needed: 
-<code> 
-debian@beaglebone:$ cd /usr/lib/ 
-debian@beaglebone:$ sudo ln -s /opt/eeros/lib/libbbblueeeros.so.1.1.0.0 libbbblueeeros.so.1.1.0.0 
-debian@beaglebone:$ sudo ln -s libbbblueeeros.so.1.1.0.0 libbbblueeeros.so 
-debian@beaglebone:$ sudo ln -s /opt/eeros/lib/libeeros.so.1.0.0.30 libeeros.so.1.0.0.30 
-debian@beaglebone:$ sudo ln -s libeeros.so.1.0.0.30 libeeros.so 
-</code> 
-Make sure the version information (....so.1.0.0.0) is not outdated! This can be checked by browsing the **BeagleBoneBlue/install-armhf/lib/** folder on the development computer before copying the libraries to the target. 
-  
  
 ---- ----
-**Next: [[test|]] **+**Next: [[connect|]] **
  
  
build.1573644624.txt.gz · Last modified: 2019/11/13 12:30 by graf