Setup cross compile project with Eclipse

Install Eclipse on Ubuntu 16.4

  • First download Eclipse from Eclipse download <https://www.eclipse.org/downloads/> and java if not already installed (default-jre)
    • Install a debugger, if not already installed Eclipse IDE for C/C++ developers.

    • Optional Install a Remote System Explorer
      • Help->Install New Software...-> –All Available Sites– -> Mobile and Device Development or General Purpose Tools -> Remote System Explorer.

Build custom software development kit (sdk)

  • source layers/openembedded-core/oe-init-build-env
  • bitbake console-hostmobility-dev-image -c populate_sdk
  • There will be a file output angstrom-glibc-x86_64-armv7at2hf-neon-v2018.06-toolchain.sh under deploy/sdk (file name can change over time and depend on target machine).
  • Run that script file and follow those instructions.
  • Now there should be a sysroot folder, an environment setup file , an site-config and one version file under the install location.
  • Run environment-setup-armv7at2hf-neon-angstrom-linux-gnueabi.sh before you start Eclipse to include the environment variables to your project.

Setup hello_word application

  • Create a new C or C++ project. Select Empty Project or Hello World template and Cross GCC toolchain.

  • Then, in the toolbar, click Project and select Properties from the drop down menu.
    • Navigate to C/C++ Build –> Settings
  • Within the Tool Settings tab, select [All configurations] from the configurations list. Select Cross GCC Compiler from the Tool Settings menu.
    • For Command, enter: ${CC}
  • Under Cross GCC Compiler, select Miscellaneous.
    • For Other flags, enter: ${CFLAGS} -c
  • Select Cross G++ Compiler from the Tool Settings menu.
    • For Command, enter: ${CXX}
  • Under Cross G++ Compiler, select Miscellaneous.
    • For Other flags, enter: ${CXXFLAGS} -c
  • Select Cross G++ Linker from the Tool Settings menu.
    • For Command, enter: ${CXX}
  • Under Cross G++ Linker, select Miscellaneous.
    • For Linker flags, enter: ${LDFLAGS}
  • Select Cross GCC Assembler from the Tool Settings menu.
    • For Command, enter: ${AS}
  • Other environment variables can be found in the environment-setup-armv7at2hf-neon-angstrom-linux-gnueabi file.

  • For more information checkout Toradex Guide <https://developer.toradex.com/getting-started/module-2-my-first-hello-world-in-c?som=apalis-imx6&board=apalis-evaluation-board>

  • and Toradex Guide <https://developer.toradex.com/knowledge-base/linux-sdks>.

Setup machine debugger

  • First Run->Debug configurations...->c/c++ remote application->add (right click).

  • Change connection to your machine.
    • ssh root@192.168.1.200 is default (eth0) for Mx4.
    • Test it with browse and change path to where you want it to execute.
  • Under debugger->change main->gdb debugger to arm-angstrom-linux-gnueabi-gdb.

  • tip Add one debug and one Release (run configurations)