This shows you the differences between two versions of the page.
chumbyqt [2012/08/07 13:32] paalsteek [Arm Toolchain] |
chumbyqt [2013/01/15 16:01] (current) paalsteek [openssl] section added |
||
---|---|---|---|
Line 38: | 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 92: | 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 ===== | ===== Libraries needed for controlpanel ===== | ||
Line 105: | Line 113: | ||
Download [[http://files.chumby.com/source/falconwing/build2370/alsa-lib_1.0.10.orig.tar.gz]] | 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 sound and all header files in include/ to /mnt/usb/include/alsa/ | ||
Line 110: | Line 121: | ||
copy /usr/lib/libasound.so and /usr/lib/libasound.so.2 to /mnt/usb/lib/ | 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/ | ||
+ | |||
+ | ==== 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. |