Benutzer-Werkzeuge

Webseiten-Werkzeuge


howto:hexabus_on_rpi

Dies ist eine alte Version des Dokuments!


installing hexabus on an RaspberryPi running Debian wheezy (Raspbian)

initial setup

use http://downloads.raspberrypi.org/images/raspbian/2013-02-09-wheezy-raspbian/2013-02-09-wheezy-raspbian.zip

use raspi-config to:

  • expand root partition to fill card
  • set the amount of ram for the gpu to 16 MB

update the system:

apt-get update
apt-get upgrade
reboot

install development tools

apt-get install git cmake g++

install development tools

apt-get install libsqlite3-dev

install Boost

apt-get install libboost1.49-dev libboost-chrono1.49-dev libboost-chrono1.49.0 libboost-date-time1.49-dev libboost-date-time1.49.0 libboost-filesystem1.49-dev libboost-filesystem1.49.0 libboost-system1.49.0 libboost-system1.49-dev libboost-program-options1.49-dev libboost-program-options1.49.0 libboost-serialization1.49.0 libboost-serialization1.49-dev libboost-test1.49-dev libboost-test1.49.0 libboost-thread-dev libboost-thread1.49-dev libboost-thread1.49.0

install libklio

git clone https://github.com/mysmartgrid/libklio.git
cd libklio
make
make release *)
cd ..

*)
make release throws an error at the end because it's unable to find rpmbuild (well...):
[...]
Linking CXX executable algorithmstest
/usr/bin/c++   -Wall  -O3 -Wno-non-virtual-dtor -Werror    CMakeFiles/algorithmstest.dir/test_algorithms.cpp.o CMakeFiles/algorithmstest.dir/main.cpp.o  -o algorithmstest -rdynamic ../../libklio/libklio.a -Wl,-Bstatic -lboost_test_exec_monitor-mt -Wl,-Bdynamic -lboost_program_options-mt -lboost_filesystem-mt -lboost_system-mt -lboost_date_time-mt -lsqlite3 -Wl,-Bstatic -lboost_test_exec_monitor-mt -Wl,-Bdynamic -lboost_program_options-mt -lboost_filesystem-mt -lboost_system-mt -lboost_date_time-mt
[100%] Built target algorithmstest
Run CPack packaging tool...
CPack: Create package using STGZ
CPack: Install projects
CPack: - Run preinstall target for: libklio
CPack: - Install project: libklio
CPack: Create package
CPack: - package: /usr/local/src/libklio/build/libklio-0.2.0-Linux.sh generated.
CPack: Create package using TGZ
CPack: Install projects
CPack: - Run preinstall target for: libklio
CPack: - Install project: libklio
CPack: Create package
CPack: - package: /usr/local/src/libklio/build/libklio-0.2.0-Linux.tar.gz generated.
CPack: Create package using DEB
CPack: Install projects
CPack: - Run preinstall target for: libklio
CPack: - Install project: libklio
CPack: Create package
CPack: - package: /usr/local/src/libklio/build/libklio-0.2.0-Linux.deb generated.
CPack: Create package using RPM
CPack: Install projects
CPack: - Run preinstall target for: libklio
CPack: - Install project: libklio
CPack: Create package
CMake Error at /usr/share/cmake-2.8/Modules/CPackRPM.cmake:271 (MESSAGE):
  RPM package requires rpmbuild executable


CPack Error: Error while execution CPackRPM.cmake
CPack Error: Cannot find rpmbuild
CPack Error: Problem compressing the directory
CPack Error: Error when generating package: libklio
make[1]: *** [package] Error 1
make: *** [release] Error 2

install libklio

dpkg -i build libklio-0.2.0-linux.deb

install hexabus

git clone https://github.com/mysmartgrid/hexabus.git
cd hexabus
git checkout development
cd hostsoftware/libhexabus
make release
dpkg -i build/libhexabus-0.6.0-Linux.deb

install Hexabus assembler

cd ../hba
make release

output:
-- The C compiler identification is GNU 4.6.3
-- The CXX compiler identification is GNU 4.6.3
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for C++ include iostream
-- Looking for C++ include iostream - found
-- Check for STD namespace
-- Check for STD namespace - found
-- Check for ANSI scope
-- Check for ANSI scope - found
-- Check for sstream
-- Check for sstream - found
-- Boost version: 1.49.0
-- Found the following Boost libraries:
--   program_options
--   system

***** Configuration *****
  prefix: /usr/local
  boost include: /usr/include
  boost program options lib: /usr/lib/libboost_program_options-mt.so
  boost system lib: /usr/lib/libboost_system-mt.so
  extended logging: 1
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/src/hexabus/hostsoftware/hba/build
Scanning dependencies of target hba
[ 11%] Building CXX object libhba/CMakeFiles/hba.dir/generator_flash.cpp.o
/usr/local/src/hexabus/hostsoftware/hba/libhba/generator_flash.cpp: In member function ‘void hba_doc_visitor::operator()(const hexabus::if_clause_doc&, unsigned int, unsigned int) const’:
/usr/local/src/hexabus/hostsoftware/hba/libhba/generator_flash.cpp:78:21: error: cannot bind packed field ‘t.transition::value.hxb_value::<anonymous>.hxb_value::<anonymous union>::v_float’ to ‘float&’
/usr/local/src/hexabus/hostsoftware/hba/libhba/generator_flash.cpp:80:33: error: cannot bind packed field ‘t.transition::value.hxb_value::<anonymous>.hxb_value::<anonymous union>::v_u32’ to ‘unsigned int&’
/usr/local/src/hexabus/hostsoftware/hba/libhba/generator_flash.cpp: In member function ‘void hba_doc_visitor::operator()(const hexabus::condition_doc&) const’:
/usr/local/src/hexabus/hostsoftware/hba/libhba/generator_flash.cpp:151:23: error: cannot bind packed field ‘c.condition::value.hxb_value::<anonymous>.hxb_value::<anonymous union>::v_float’ to ‘float&’
/usr/local/src/hexabus/hostsoftware/hba/libhba/generator_flash.cpp:153:35: error: cannot bind packed field ‘c.condition::value.hxb_value::<anonymous>.hxb_value::<anonymous union>::v_u32’ to ‘unsigned int&’
make[3]: *** [libhba/CMakeFiles/hba.dir/generator_flash.cpp.o] Error 1
make[2]: *** [libhba/CMakeFiles/hba.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [release] Error 2

install hexinfo

<code> cd ../hexinfo make release dpkg -i build

howto/hexabus_on_rpi.1367265746.txt.gz · Zuletzt geändert: 2013/04/29 22:02 von justinotherguy