motofan logo
20 страниц V < 1 2 3 4 5 > »         
> 

Пробуем портировать игры и проги сами

Lubomyr
сообщение 25.6.2008, 8:45


Ветеран
*****

Группа: Пользователи
Сообщений: 541
Регистрация: 25.8.2005
Из: Україна, Львів
Пользователь №: 49 683
Модель телефона: Samsung i5700
Прошивка: Android 2.1

Рейтинг: 285.5



Небольшой мануал или пример-ы по добавлению поддержки сворачивания, возможности ответа на звонки, флипы, локеры и т.д. для приложений которые используют SDL-либу

по пунктам
1. Ищем и меняем все строчки SDL_PollEvent на mySDL_PollEvent
2. Ищем и меняем все строчки SDL_GetTicks на st_get_ticks
3. В исходниках добавляем то что во вложении

2-a варианта
1) звук через SDL
2) звук через SDL-mixer

Добавлено позже (25.6.2008, 12:40):
чтоб openttd компилилось без ошибок
делаем изменения в файле- src/unix.cpp
добавляем строчку
extern "C" int CDECL main(int, char *[]);
перед int CDECL main(int argc, char* argv[])
Прикрепленный файл test_SDLmixer.cpp.txt   ( 1.79 килобайт ) Кол-во скачиваний: 238
Прикрепленный файл test_SDL.h.txt   ( 318 байт ) Кол-во скачиваний: 172
Прикрепленный файл test_SDL.cpp.txt   ( 1.75 килобайт ) Кол-во скачиваний: 226
Прикрепленный файл test_SDLmixer.h.txt   ( 356 байт ) Кол-во скачиваний: 201
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
dreamer7
сообщение 26.6.2008, 13:50


Интересующийся
**

Группа: Пользователи
Сообщений: 48
Регистрация: 6.12.2007
Пользователь №: 156 128
Модель телефона: A1200e

Рейтинг: 0



ерунда какая то твориться у меня
libtool: link: cannot find the library `' (libSDL.la: -Wl,-rpath-link,/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/arm-linux/lib,-rpath-link,/opt/dev-ezx/a1200/lib/ezx/lib,-rpath-link,/opt/dev-ezx/a1200/lib/ezx/lib/inputmethods)

ibSDL.la все пути правильно прописаны меняю другая la вылазит libm.la
и тд

где я не так делаю ?

Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 26.6.2008, 14:30


Ветеран
*****

Группа: Пользователи
Сообщений: 541
Регистрация: 25.8.2005
Из: Україна, Львів
Пользователь №: 49 683
Модель телефона: Samsung i5700
Прошивка: Android 2.1

Рейтинг: 285.5



Цитата(dreamer7 @ 26.6.2008, 16:50) *

ерунда какая то твориться у меня
libtool: link: cannot find the library `' (libSDL.la: -Wl,-rpath-link,/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/arm-linux/lib,-rpath-link,/opt/dev-ezx/a1200/lib/ezx/lib,-rpath-link,/opt/dev-ezx/a1200/lib/ezx/lib/inputmethods)

ibSDL.la все пути правильно прописаны меняю другая la вылазит libm.la
и тд

где я не так делаю ?


если имеется ввиду toppler то у меня эта игрушка выдает ошибка при выполнении Configure
почемуто не видит sdl_mixer и zlib под CygWin-ом
зато под линуксом все идет без ошибок
и configure и make

Добавлено позже (26.6.2008, 19:53):
компилил последнюю версию DOSBox 0.72
операции Configure и Make прошли без ошибок
при запуске на теле
Segmentation fault

# ../bin/gdb ./dosbox core
GNU gdb 6.6
Copyright © 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "arm-linux-gnu"...
Using host libthread_db library "/mmc/mmca1/games/lib/libthread_db.so.1".
Reading symbols from /mmc/mmca1/games/lib/libSDL-1.2.so.0...done.
Loaded symbols for /mmc/mmca1/games/lib/libSDL-1.2.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libutil.so.1...done.
Loaded symbols for /lib/libutil.so.1
Reading symbols from /usr/lib/ezx/lib/libqte-mt.so.2...done.
Loaded symbols for /usr/lib/ezx/lib/libqte-mt.so.2
Reading symbols from /lib/libpthread.so.0...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /usr/lib/ezx/lib/libezxappbase.so.1...done.
Loaded symbols for /usr/lib/ezx/lib/libezxappbase.so.1
Reading symbols from /usr/lib/ezx/lib/libezxappsdk.so.1...done.
Loaded symbols for /usr/lib/ezx/lib/libezxappsdk.so.1
Reading symbols from /usr/lib/ezx/lib/libezxopenwindow.so.1...done.
Loaded symbols for /usr/lib/ezx/lib/libezxopenwindow.so.1
Reading symbols from /usr/lib/ezx/lib/libipp-miscGen.so.1...done.
Loaded symbols for /usr/lib/ezx/lib/libipp-miscGen.so.1
Reading symbols from /usr/lib/ezx/lib/libipp-jp.so.1...done.
Loaded symbols for /usr/lib/ezx/lib/libipp-jp.so.1
Reading symbols from /usr/lib/ezx/lib/libipp-codecJP.so.1...done.
Loaded symbols for /usr/lib/ezx/lib/libipp-codecJP.so.1
Reading symbols from /usr/lib/libezxpm.so...done.
Loaded symbols for /usr/lib/libezxpm.so
Reading symbols from /mmc/mmca1/games/lib/libSDL_net-1.2.so.0...done.
Loaded symbols for /mmc/mmca1/games/lib/libSDL_net-1.2.so.0
Reading symbols from /usr/lib/libstdc++.so.5...done.
Loaded symbols for /usr/lib/libstdc++.so.5
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Core was generated by `'.
Program terminated with signal 11, Segmentation fault.
#0 0x410ceda8 in ?? () from /lib/libc.so.6
(gdb)

Добавлено позже (26.6.2008, 20:13):
Выкладываю рабочий кросстул для А1200 для линукса
http://rapidshare.com/files/124067106/a120...ool.tar.gz.html
рекомендую использовать blackhawk-sdk
http://keaglez.blogspot.com/2008/01/a1200e...-blackhawk.html
и окружение с портироваными либами хидерами и конфигами
http://upload.com.ua/get/900316728
распаковываем в /usr/local

стартовый скрипт setenv-a1200.sh
Цитата

#!/bin/bash

export EZXDIR=/opt/a1200/ezx
export QTDIR=/opt/a1200/qt
export QMAKESPEC=$QTDIR/mkspecs/qws/linux-gnu-ezx-g++
export TMAKEPATH=$QTDIR/tmake/lib/qws/linux-gnu-ezx-g++
export CROSSTOOL_DIR=/opt/crosstool
export PATH=$QTDIR/bin:$QTDIR/tmake/bin:$CROSSTOOL_DIR/bin:$PATH
export LFLAGS_EXTRA=" -Wl,-rpath-link,$CROSSTOOL_DIR/arm-linux-gnu/lib "

export ARCH=iwmmxt
export CC=arm-linux-gnu-gcc
export CXX=arm-linux-gnu-g++
export LD=arm-linux-gnu-ld
export AR=arm-linux-gnu-ar
export AS=arm-linux-gnu-as
export OC=arm-linux-gnu-objcopy
export RANLIB=arm-linux-gnu-ranlib
export STRIP=arm-linux-gnu-strip


рекомендуемые параметры до конфигурации приложений
Цитата

CFLAGS='-O2 -pipe -mcpu=iwmmxt -mtune=iwmmxt'
CXXFLAGS='-O2 -pipe -mcpu=iwmmxt -mtune=iwmmxt'
LDFLAGS='/opt/crosstool/arm-linux-gnu/lib /opt/a1200/lib /opt/a1200/lib/ezx/lib /opt/a1200/lib/ezx/lib/inputmethods /usr/local/lib'
CFLAGS='/opt/crosstool/arm-linux-gnu/include /opt/a1200/ezx/include /opt/a1200/qt/include /usr/loca/include'
LIBS='-ldl -lutil -lqte-mt -lpthread -lezxappbase -lezxappsdk -lezxopenwindow -lipp-miscGen -lipp-jp -lezxjpeg -lezxpm'


Добавлено позже (26.6.2008, 20:27):
Под линуксом у меня не наблюдается таких ошибок как при конфигурации невидятся некоторые либы такие как SDL-mixer SDL-image которые бывают под CygWin-ом

имея 2-а рабочих окружения очень удобно портировать проги, что не скомпилится под одним может скомпилится под другим и наоборот

для примера
freetype lib который был нужен для портирования jooleem
не портировался через Cygwin, зато скомпилился через Линукс
и использую либу портированую под линуксом, удалось портировать jooleem на CygWin

Сообщение отредактировал Lubomyr - 26.6.2008, 17:35
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Winand
сообщение 3.7.2008, 23:45


Ветеран
*****

Группа: Пользователи
Сообщений: 337
Регистрация: 3.2.2007
Из: г. Железнодорожный, Моск. обл.
Пользователь №: 120 503
Модель телефона: A1200e, Milestone
Прошивка: 14R_F6

Рейтинг: 44.5



хмм, почему-то многих параметров конфигурации нет. Попробовал на lmarbles
заругалось на --backend=sdl Ну я это убрал) совершенно не понятно как, но всё скомпилировалось.
Правда сказало SDL_Mixer not found.

Сообщение отредактировал Winand - 7.7.2008, 14:55
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Winand
сообщение 7.7.2008, 14:54


Ветеран
*****

Группа: Пользователи
Сообщений: 337
Регистрация: 3.2.2007
Из: г. Железнодорожный, Моск. обл.
Пользователь №: 120 503
Модель телефона: A1200e, Milestone
Прошивка: 14R_F6

Рейтинг: 44.5



прога всё время лезет в /usr/local/ - то есть, по мануалу, в директорию куда она установлена.
Как можно получить путь к запускаемому файлу, чтобы тупо подставить в коде?)
Вообще программа обращается к пути, хранимом в SRC_DIR, но я так и не понял, где оно объявляется..
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
lavelas
сообщение 8.7.2008, 13:57


Опытный
***

Группа: Пользователи
Сообщений: 124
Регистрация: 4.5.2007
Пользователь №: 133 636
Модель телефона: Motorola ROKR E6
Прошивка: R533_Ezh_08_0.1_RU

Рейтинг: 47.5



Цитата(Winand @ 7.7.2008, 18:54) *

Как можно получить путь к запускаемому файлу, чтобы тупо подставить в коде?)


Мож я чего не понял.. не arg[0] имеется ввиду? smile.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Winand
сообщение 8.7.2008, 18:57


Ветеран
*****

Группа: Пользователи
Сообщений: 337
Регистрация: 3.2.2007
Из: г. Железнодорожный, Моск. обл.
Пользователь №: 120 503
Модель телефона: A1200e, Milestone
Прошивка: 14R_F6

Рейтинг: 44.5



да, но arg[0] - это не совсем то. Там будет относительный путь, например "./app"
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
perk11
сообщение 12.7.2008, 11:35


Интересующийся
**

Группа: Пользователи
Сообщений: 42
Регистрация: 8.3.2006
Из: Москва
Пользователь №: 73 374
Модель телефона: LG Optimus Black

Рейтинг: 16



А что означает такая ошибка при запуске программы?
Код

# ./lbreakout2
LBreakout2 2.6beta-7
Copyright 2001-2005 Michael Speck
Published under GNU GPL
---
Looking up data in: .
Looking up custom levels in: /root/.lgames/lbreakout2-levels
Compiled without sound and music
hide splash: -1
map framebuffer at 0x4016f000 (size 466944)
Fatal STK Error!
Couldn't create screen bitmap
STK finalized
~SDL_QWin(): done
SDL finalized
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
kycb-kycb
сообщение 12.7.2008, 15:32


Мастер
****

Группа: Пользователи
Сообщений: 196
Регистрация: 16.11.2005
Из: г. Пермь
Пользователь №: 58 587
Модель телефона: XT910 MAXX
Прошивка: any

Рейтинг: 189



perk11,
Цитата
Couldn't create screen bitmap
обычно появляется при запуске приложения в полноэкранном режиме. Ищи как включить оконный режим.

Добавлено позже (12.7.2008, 22:00):
Кстати, если поможет, в сорцах чаще всего фуллскрин включается функциями SDL_CreateRGBSurface и SDL_SetVideoMode, первым и третьим параметром (соответственно) в которых указано SDL_FULLSCREEN. Достаточно это заменить на SDL_SWSURFACE, и приложение будет запускаться в окне.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
kyst123
сообщение 12.7.2008, 17:57


Интересующийся
**

Группа: Пользователи
Сообщений: 66
Регистрация: 28.1.2008
Пользователь №: 161 573
Модель телефона: А1200е
Прошивка: кутопия

Рейтинг: 0



Couldn't create screen bitmap
это побеждается изменением в исходник рарешения экрана.
Пользователю запрещено создавать сообщения
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Пробуем портировать игры и проги сами · Motorola ROKR E6, E6e, E6tv, MING A1200, A1200i, A1200e, A1200r, A1200w, A1600 · Forum
 

20 страниц V < 1 2 3 4 5 > » 
Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 26.4.2024, 20:24

Форум живёт: