User Tools

Site Tools


chumbyqt

Differences

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

Link to this comparison view

chumbyqt [2012/03/02 20:58]
paalsteek
chumbyqt [2013/01/15 16:01] (current)
paalsteek [openssl] section added
Line 1: Line 1:
-====== Download ====== 
- 
-You can find a "ready to use" image for an usb stick [[http://paalsteek.de/msg/chumby-usb.zip|here]](zip) or [[http://paalsteek.de/msg/chumby-usb.tar.gz|here]](tar.gz). 
-Just unpack it on a usb stick that is either FAT32 or ext2/3 formatted and edit flukso.conf to the values of your flukso. 
- 
 ===== Preparation ===== ===== Preparation =====
  
 You will need a chumby, one usb-stick with at least 75 Mb of free space and ext2/3 formatting. You will need a chumby, one usb-stick with at least 75 Mb of free space and ext2/3 formatting.
 Since the chumby mounts the USB-Stick in /mnt/usb, this is done the same way when building. Since the chumby mounts the USB-Stick in /mnt/usb, this is done the same way when building.
 +
 +:!: Warning :!:
 +
 +This software only works with chumby software version 1.0.7 or higher
  
 ===== Arm Toolchain ===== ===== Arm Toolchain =====
Line 15: Line 14:
 {{http://wiki.chumby.com/mediawiki/index.php/GNU_Toolchain}} {{http://wiki.chumby.com/mediawiki/index.php/GNU_Toolchain}}
  
 +==== Troubleshooting ====
  
 +With Ubuntu 12.04 LTS I got 'No such file or directory' messages when executing the gcc. After installing ia32-libs as suggested by {{http://io-repo.blogspot.de/2011/09/problem-with-codesourcery-tools-arm.html}} everything worked fine.
 ===== TSlib ===== ===== TSlib =====
  
Line 37: Line 38:
 ===== Qt ===== ===== Qt =====
 Download Qt from {{http://trolltech.com/developer/downloads/qtopia/coregpl}}, install it to a custom folder. Make sure to install the sources! Download Qt from {{http://trolltech.com/developer/downloads/qtopia/coregpl}}, install it to a custom folder. Make sure to install the sources!
 +
 +:!: In order to use the api of mysmartgrid you need openssl. See section "openssl" for further information. :!:
 +
 <code> <code>
 cd QtSDK/QtSources/<Version>/ cd QtSDK/QtSources/<Version>/
Line 91: Line 95:
   - run /mnt/usb/test/pictureflow -qws & (note the &, application will crash otherwise)   - run /mnt/usb/test/pictureflow -qws & (note the &, application will crash otherwise)
  
 +===== Controlpanel source =====
 +
 +<code>
 +git clone https://github.com/mysmartgrid/chumby-controlpanel.git
 +</code>
 +
 +===== Libraries needed for controlpanel =====
  
 ==== libiw ==== ==== libiw ====
 Download [[http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/wireless_tools.29.tar.gz]] Download [[http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/wireless_tools.29.tar.gz]]
  
-copy libiw.h to /mnt/usb/include/+copy iwlib.h to /mnt/usb/include/iwlib.h and wireless.22.h to /mnt/usb/include/wireless.h 
 + 
 +copy /usr/lib/libiw.so.29 to /mnt/usb/lib/libiw.so.29 and create a symlink/copy /mnt/usb/lib/libiw.so 
 + 
 +==== alsalib ==== 
 + 
 +Download [[http://files.chumby.com/source/falconwing/build2370/alsa-lib_1.0.10.orig.tar.gz]] 
 + 
 +configure: 
 +./configure  --prefix=/opt/arm-2008q3 --datadir /mnt/usb/share --libdir /mnt/usb/lib/alsa-lib --host=arm-linux host_alias=arm-linux 
 + 
 +copy sound and all header files in include/ to /mnt/usb/include/alsa/ 
 + 
 +copy /usr/lib/libasound.so and /usr/lib/libasound.so.2 to /mnt/usb/lib/ 
 + 
 + 
 +==== Bluetune, Atomix and Neptune ==== 
 + 
 +Bluetune is used to play media such as mp3-files, webradio, etc. It is included in the chumby software but needs to be available for compiling and linking. 
 + 
 +Download [[http://files.chumby.com/source/ironforge/build733/BlueTune-1-3-1-32-chumby-1.6.0.tar.gz]] and compile it according to the supplied manual. 
 + 
 +For me the following patches helped: 
 + 
 +<code> 
 +--- bt-ref/BlueTune/Build/Targets/arm-chumby-linux/Config.scons 2008-07-14 21:19:53.000000000 +0200 
 ++++ BlueTune-1-3-1-32-chumby-1.6.0/BlueTune/Build/Targets/arm-chumby-linux/Config.scons 2012-11-23 20:45:10.601406637 +0100 
 +@@ -1,7 +1,7 @@ 
 +-GCC_ARM_OPTIONS='-mcpu=arm9e -mtune=arm9e' 
 +-LoadTool('gcc-generic', env, gcc_cross_prefix='arm-linux', gcc_extra_options=GCC_ARM_OPTIONS) 
 ++GCC_ARM_OPTIONS='-I/usr/arm-2008q3/include -L/usr/arm-2008q3/lib -mcpu=arm9e -mtune=arm9e' 
 ++LoadTool('gcc-generic', env, gcc_cross_prefix='arm-none-linux-gnueabi', gcc_extra_options=GCC_ARM_OPTIONS) 
 + env['BLT_RELAXED_ENV'] = env.Copy() 
 +-LoadTool('gcc-generic', env['BLT_RELAXED_ENV'], gcc_cross_prefix = 'arm-linux', gcc_extra_options=GCC_ARM_OPTIONS, gcc_relaxed_warnings=True) 
 ++LoadTool('gcc-generic', env['BLT_RELAXED_ENV'], gcc_cross_prefix = 'arm-none-linux-gnueabi', gcc_extra_options=GCC_ARM_OPTIONS, gcc_relaxed_warnings=True) 
 +  
 + env['BLT_CPU_CONFIG_NO_FLOAT'] = True 
 + env['ATX_SYSTEM_SOURCES']={'System/StdC':'*.c', 'System/Bsd':'*.c', 'System/Posix':'*.c'} 
 +--- bt-ref/Makefile     2008-03-26 21:45:27.000000000 +0100 
 ++++ BlueTune-1-3-1-32-chumby-1.6.0/Makefile     2012-11-23 20:49:07.561462806 +0100 
 +@@ -15,7 +15,7 @@ 
 +  
 + # BlueTune uses its own funny identifier for arm-linux 
 + BTTARGET=$(TARGET) 
 +-ifeq ($(TARGET),arm-linux) 
 ++ifeq ($(TARGET),arm-none-linux-gnueabi) 
 +   BTTARGET=arm-chumby-linux 
 + endif 
 + BTBUILD=$(BUILD) 
 +@@ -34,7 +34,7 @@ 
 +  
 + EXEDIR=../output/$(TARGETDIR)/$(BUILD)/bin 
 + LIBDIR=../output/$(TARGETDIR)/$(BUILD)/lib 
 +-INCDIR=../include/all/all 
 ++INCDIR=../output/${TARGETDIR}/${BUILD}/include 
 + OUTPUT_EXES= 
 + OUTPUT_LIBS= 
 +  
 +</code> 
 + 
 +To tell cmake where to find the header and library files set the environment variables BLUETUNE_HOME, ATOMIX_HOME and NEPTUNE_HOME. 
 + 
 +==== QJson ==== 
 + 
 +Compile and install QJson with 
 + 
 +<code> 
 +git clone https://github.com/flavio/qjson.git 
 +cd qjson 
 +TOOLCHAIN_PREFIX=/usr/arm-2008q3 cmake -DCMAKE_TOOLCHAIN_FILE=../chumby-controlpanel/modules/Toolchain-arm.cmake -DCMAKE_INSTALL_PREFIX=/usr/arm-2008q3 CMakeLists.txt 
 +sudo make install 
 +</code> 
 + 
 +where CMAKE_TOOLCHAIN_FILE should be set to the toolchain file of the chumby-controlpanel, TOOLCHAIN_PREFIX and CMAKE_INSTALL_PREFIX is the location of your arm-toolchain. 
 + 
 +Further information regarding QJson can be found at http://qjson.sourceforge.net/
  
-copy /usr/lib/libiw.so.29 to /mnt/usb/lib/libiw.so.29 and create a symlink /mnt/usb/lib/libiw.so+==== Openssl ====
  
 +In order to enable ssl support in Qt you need the openssl libraries for arm. http://wiki.chumby.com/index.php/Web_Browser#build_openssl contains instructions on building openssl. Append -openssl to the configure line of qt to force openssl support.
chumbyqt.1330718339.txt.gz · Last modified: 2012/10/30 10:36 (external edit)