README.Qtopia
author Ryan C. Gordon <icculus@icculus.org>
Fri, 15 Jun 2007 07:19:05 +0000
branchSDL-1.2
changeset 3965 19d708301fab
parent 386 2c5d4c22a2ac
permissions -rw-r--r--
Make sure __inline__ isn't defined before #defining it, since some compilers
(like Sun Studio) have this as a predefined macro.

Fixes Bugzilla #434.
slouken@386
     1
slouken@386
     2
==============================================================================
slouken@386
     3
Using the Simple DirectMedia Layer with Qtopia/OPIE
slouken@386
     4
==============================================================================
slouken@386
     5
slouken@386
     6
==============================================================================
slouken@386
     7
I.  Setting up the Qtopia development environment.
slouken@386
     8
slouken@386
     9
  This document will not explain how to setup the Qtopia development
slouken@386
    10
  environment. That is outside the scope of the document. You can read
slouken@386
    11
  more on this subject in this excellent howto:
slouken@386
    12
slouken@386
    13
	http://www.zauruszone.com/howtos/linux_compiler_setup_howto.html
slouken@386
    14
slouken@386
    15
==============================================================================
slouken@386
    16
II.  Building the Simple DirectMedia Layer libraries using the arm
slouken@386
    17
     cross-compiler
slouken@386
    18
slouken@386
    19
  This is somewhat tricky since the name of the compiler binaries
slouken@386
    20
  differ from the standard. Also you should disable features not
slouken@386
    21
  needed. The command below works for me. Note that it's all one
slouken@386
    22
  line. You can also set the NM, LD etc environment variables
slouken@386
    23
  separately.
slouken@386
    24
slouken@386
    25
	NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ RANLIB=arm-linux-ranlib AR=arm-linux-ar ./configure --enable-video-qtopia --disable-video-dummy --disable-video-fbcon  --disable-video-dga --disable-arts --disable-esd --disable-alsa --disable-cdrom --disable-video-x11 --disable-nasm --prefix=/opt/Qtopia/sharp/ arm-unknown-linux-gnu
slouken@386
    26
slouken@386
    27
  One thing to note is that the above configure will include joystick
slouken@386
    28
  support, even though you can't have joysticks on the Zaurus. The
slouken@386
    29
  reason for this is to avoid link / compile / runtime errors with
slouken@386
    30
  applications that have joystick support.
slouken@386
    31
slouken@386
    32
==============================================================================
slouken@386
    33
III.  Building the Simple DirectMedia Layer test programs:
slouken@386
    34
slouken@386
    35
  After installing, making sure the correct sdl-config is in your
slouken@386
    36
  path, run configure like this:
slouken@386
    37
slouken@386
    38
	NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ AR=arm-linux-ar ./configure arm-unknown-linux-gnu
slouken@386
    39
slouken@386
    40
==============================================================================
slouken@386
    41
IV.  Application porting notes
slouken@386
    42
slouken@386
    43
  One thing I have noticed is that applications sometimes don't exit
slouken@386
    44
  correctly. Their icon remains in the taskbar and they tend to
slouken@386
    45
  relaunch themselves automatically. I believe this problem doesn't
slouken@386
    46
  occur if you exit your application using the exit() method. However,
slouken@386
    47
  if you end main() with 'return 0;' or so, this seems to happen.
slouken@386
    48
slouken@386
    49
  Also note that when running in landscape mode - i.e requesting a
slouken@386
    50
  window that is HEIGHT pixels wide and WIDTH pixels high, where WIDTH
slouken@386
    51
  and HEIGHT normally is 240 and 320 - the image is blitted so that
slouken@386
    52
  the hardware buttons are on the left side of the display. This might
slouken@386
    53
  not always be desirable but such is the code today.
slouken@386
    54
slouken@386
    55
slouken@386
    56
==============================================================================
slouken@386
    57
V.  Enjoy! :)
slouken@386
    58
slouken@386
    59
  If you have a project you'd like me to know about, or want to ask questions,
slouken@386
    60
  go ahead and join the SDL developer's mailing list by sending e-mail to:
slouken@386
    61
slouken@386
    62
	sdl-request@libsdl.org
slouken@386
    63
slouken@386
    64
  and put "subscribe" into the subject of the message. Or alternatively you
slouken@386
    65
  can use the web interface:
slouken@386
    66
slouken@386
    67
	http://www.libsdl.org/mailman/listinfo/sdl
slouken@386
    68
  
slouken@386
    69
==============================================================================
slouken@386
    70
VI.  What is supported:
slouken@386
    71
slouken@386
    72
Keyboard (Sharp Zaurus)
slouken@386
    73
Hardware buttons
slouken@386
    74
Stylus input (mouse)
slouken@386
    75
Video. Allows fullscreen both in portrait mode (up to WIDTHxHEIGHT
slouken@386
    76
size window) and in landscape mode (up to HEIGHTxWIDTH). 
slouken@386
    77
slouken@386
    78
All other SDL functionality works like a normal Linux system (threads,
slouken@386
    79
audio etc).
slouken@386
    80
slouken@386
    81
-- 
slouken@386
    82
David Hedbor <david@hedbor.org>
slouken@386
    83
http://david.hedbor.org/ 	http://eongames.com/
slouken@386
    84