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

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

Lubomyr
сообщение 19.5.2008, 17:49


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

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

Рейтинг: 285.5



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

Что для этого нужно

Вариант 1 (Windows+Cygwin+a1200devezx sdk)

1) Устанавливаем Cygwin под виндой (CygWin берем отсюда http://cygwin.com/ )
выбираем нужные пакеты при установке

devel->gcc
devel->make
devel->autoconf
devel->automake
perl->perl
utils->patch

2) копируем свои либы с телефона
для этого используем консоль или телнет

cd /usr/lib
tar zcvf /mmc/mmca1/ezx-lib.tar.gz *

после этой опрации на карте памяти должен появится файл ezx-lib.tar.gz копируем его на комп

3) качаем сдк http://www.motorolafans.com/MotoModFiles/E...20080304.tar.gz

4) качаем игровое окружение (games-env-cygwin.tar.gz)
Изображение
Зеркало1 на megaupload.com
Зеркало2 на humyo.com

5) копируем
ezx-lib.tar.gz
samr7-ezx-crosstool-foxe6-sdk-20080304.tar.gz
games-env.tar.gz
в папку где установлен Cygwin (по умолчанию C:\cygwin)

6) запускаем Cygwin
и выполняем следующие операции для распаковки архивов

cd /
tar zxvf samr7-ezx-crosstool-foxe6-sdk.tar.gz

cd /opt/dev-ezx/a1200/lib (или cd /opt/dev-ezx/e6/lib в зависимости от модели)
tar xvf ezx-lib.tar.gz

cd /
tar -C /usr/local/ -xzvf /games-env-cygwin.tar.gz

Все теперь все окружение для портирования готово

после запуска CygWin набираем

source /usr/local/setenv-a1200.sh

(или вместо a1200 - e6 в зависимости от вашей модели телефона)

7) качаем исходники игры которую хотим портировать и распаковываем в нужную папку (для примера /home/lubomyr)
рекомендуется чтоб в исходниках присутствовал файл configure или (autogen.sh, configure.am, makefile.am)
в зависимости насколько мы правильно зададим параметры конфигурации зависит и наш успех портации игры
пареметры которые могут использоватся при конфигурации можно увидить используя

./configure --help

в конце списка флажки которые нужно указать перед конфигурацией

CFLAGS='-O2 -pipe -mcpu=iwmmxt -mtune=iwmmxt'
CXXFLAGS='-O2 -pipe -mcpu=iwmmxt -mtune=iwmmxt'
NM=arm-linux-nm
LD=arm-linux-ld
CC=arm-linux-gcc
CXX=arm-linux-g++
RANLIB=arm-linux-ranlib
AR=arm-linux-ar
AS=arm-linux-as
STRIP=arm-linux-strip
OC=arm-linux-objcopy
LDFLAGS='-L/opt/dev-ezx/a1200/lib/ezx/lib/inputmethods -L/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/arm-linux/lib -L/opt/dev-ezx/a1200/lib -L/opt/dev-ezx/a1200/lib/ezx/lib -L/usr/local/lib'
CPPFLAGS='-I/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/arm-linux/include -I/opt/dev-ezx/a1200/include -I/opt/dev-ezx/a1200/include/ezx -I/usr/local/include'
LIBS='-ldl -lutil -lqte-mt -lpthread -lezxappbase -lezxappsdk -lezxopenwindow -lipp-miscGen -lipp-jp -lezxjpeg -lezxpm -lpthread'

Самые необходимые я уже добавил в стартовый скрипт setenv, тоесть их можно и не указывать а сразу перейти к конфигурации

параметры при конфигурации которые можно использовать
./configure
--build=x86_64-unknown-linux-gnu
--host=arm-linux
--backend=sdl
--with-includes=/usr/local/include
--with-libraries=/usr/local/lib
--with-sdl
--with-sdl-gfx
--with-sdl-sound
--with-mikmod
--enable-shared
--disable-debug
--disable-mmx
--disable-ati
--disable-gtk-player
--disable-opengl-player
--without-gtk
--enable-threads

для примера для портации большинства игр я использовал
./configure --build=x86_64-unknown-linux-gnu --host=arm-linux

а по умолчанию рекомендую использовать как минимум
./configure --host=arm-linux

8) если конфигурация успешно проходит выполняем команду
make

9) если make успешно проходит остается только протестировать не телефоне, ну еще поковырятся в исходниках и поправить клавиатуру под наши телефоны

Вариант 2 (Linux+a1200blackhawk sdk)

для пользователей винды устанавливаеи andlinux http://www.andlinux.org/downloads.php

1) устанавливаем такие пакеты под Линуксом
make
automake
autoconf
patch

2) копируем свои либы с телефона
для этого используем консоль или телнет

# cd /mmc/mmca1
# tar -C /usr -czvf a1200-lib.tar.gz lib

после этой опрации на карте памяти должен появится файл a1200-lib.tar.gz копируем его на комп

3) качаем a1200crosstool http://rapidshare.com/files/124067106/a120...ool.tar.gz.html

4) качаем sdk http://keaglez.e2mod.com/upload/sdk/a1200-...680i-SDK.tar.gz

5) качаем окружение для портирования (games-env-linux.tar.gz)
Зеркало 1 http://fileshare.in.ua/1852796
Зеркало 2 http://www.megaupload.com/?d=HNX25H19
Зеркало 3 http://www.humyo.com/F/784305-347095687

6) запускаем под линуксом Терминал

$ su // после ввода этой команды набираем root password (

# mkdir /opt/a1200
# mkdir /opt/sdk
# cd /
# tar -C /opt -xzvf /a1200-crosstool.tar.gz
# tar -C /usr/local -xzvf /games-env-linux.tar.gz
# tar -C /opt/a1200 -xzvf /a1200-lib.tar.gz
# tar -C /opt/sdk -xzvf /a1200-e2-e680i-SDK.tar.gz
# cp -a /opt/sdk/a1200/* /opt/a1200

Я не уверен правильно ли я описал все операции но если у вас в результате будут на месте такие папки значит все получилось правильно

/opt/a1200/ezx
/opt/a1200/lib
/opt/a1200/qt
/opt/crosstool/arm-linux-gnu
/opt/crosstool/bin
/opt/crosstool/include
/opt/crosstool/lib
/opt/crosstool/ и др.
/usr/local/setenv-a1200.sh
/usr/local/bin
/usr/local/include
/usr/local/lib

Все теперь все окружение для портирования готово

теперь после запуска термила будем набирать

source /usr/local/setenv-a1200.sh

7) качаем исходники игры которую хотим портировать и распаковываем в нужную папку (для примера /home/lubomyr)
рекомендуется чтоб в исходниках присутствовал файл configure или (autogen.sh, configure.am, makefile.am)
в зависимости насколько мы правильно зададим параметры конфигурации зависит и наш успех портации игры
пареметры которые могут использоватся при конфигурации можно увидить используя

./configure --help

в конце списка флажки которые нужно указать перед конфигурацией

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'

параметры при конфигурации которые можно использовать те же что и для Cygwin
./configure --build=x86_64-unknown-linux-gnu --host=arm-linux
и т.д.

8) если конфигурация успешно проходит выполняем команду
make

9) если make успешно проходит остается только протестировать не телефоне, ну еще поковырятся в исходниках и поправить клавиатуру под наши телефоны

при создании даного решения
использовались материалы
http://www.motorolafans.com/forums/showthread.php?t=17584
http://keaglez.blogspot.com/2008/01/a1200e...-blackhawk.html
SDL-либы и SDL-окружение от Евгения (eug)

Сообщение отредактировал Lubomyr - 16.3.2009, 19:43
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Borman92
сообщение 19.5.2008, 19:14


Мастер
****

Группа: Пользователи
Сообщений: 252
Регистрация: 14.1.2008
Из: Москва
Пользователь №: 160 063
Модель телефона: A1200e
Прошивка: R541_G_11.52.14R_U3

Рейтинг: 55



Цитата(Lubomyr @ 19.5.2008, 20:49) *

<...>
параметры при конфигурации которые можно использовать
./configure
--build=x86_64-unknown-linux-gnu
--host=arm-linux
--without-x
--target=sdl
--backend=sdl
--enable-zlib
--enable-vorbis
--enable-mad
--enable-flac
<...>


--build=x86_64-unknown-linux-gnu
А ведь после такого народ ломанется ставить этот параметр... И обязательно кто-то им что-то сломает... Короче - если не понимаете его смысл, лучше не ставить
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Yoda_49
сообщение 19.5.2008, 21:26


Мастер
****

Группа: Пользователи
Сообщений: 191
Регистрация: 5.3.2008
Из: РБ Минск
Пользователь №: 165 650
Модель телефона: Razr XT912 / XT1080M
Прошивка: xxx

Рейтинг: 3



Lubomyr, а не мог бы ты объяснить людям далёким от линукса, все эти термины smile.gif Всё расписано нормально, но только хотелось бы знать:
1) что такое cygwin и с чем его едят? Это обычный компилятор для линукса?
2) Другие пакеты, на которых галочка стоит, нужны?

4) Зачем нужен телнет при копировании библиотек?
5) Что значит 'свои' либы?
6) Что такое игровое окружение?

Не серчай smile.gif Тут людей разбирающихся в этом единицы и им это уже не нужно. А вот остальным пояснение поможет. И вообще, на первый взгляд, всё так просто..... чёж никто этим раньше не занимался? sad.gif

Сообщение отредактировал Yoda_49 - 19.5.2008, 21:37
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Borman92
сообщение 20.5.2008, 5:28


Мастер
****

Группа: Пользователи
Сообщений: 252
Регистрация: 14.1.2008
Из: Москва
Пользователь №: 160 063
Модель телефона: A1200e
Прошивка: R541_G_11.52.14R_U3

Рейтинг: 55



Yoda_49,
1) Cygwin - имитация линукса под винду, с тем же успехом можншь работать просто в линуксовой консоли
2) галочки лучше не убирай
3) странная у тебя нумерация...
4) телнет чтобы зайти в консоль на теле и сделать архив с либами, потом любым способом копируешь его на комп
5) родные либы телефона - те, которые внедрены в прошивку (моторолой)
6) окружение - набор прог, скриптов, заголовков для компиляции... как-то строго определить это трудно
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
kyst123
сообщение 20.5.2008, 9:33


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

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

Рейтинг: 0



пробовал под федорой 8 жалуестья на точто у него нет arm-linux-strip
не подскажете где это взять и что это есть?

Сообщение отредактировал kyst123 - 20.5.2008, 9:34
Пользователю запрещено создавать сообщения
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 20.5.2008, 11:26


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

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

Рейтинг: 285.5



Цитата(kyst123 @ 20.5.2008, 12:33) *

пробовал под федорой 8 жалуестья на точто у него нет arm-linux-strip
не подскажете где это взять и что это есть?


Возможно под федорой 8 нужно будет использовать другой сдк
http://keaglez.blogspot.com/2008/01/a1200e...-blackhawk.html

там вместо arm-linux добавляется префикс gnu (arm-linux-gnu)

и используется окружение с блекхаковского сдк
a1200-e2-e680i-SDK.tar/pictureflow/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


Сообщение отредактировал Lubomyr - 20.5.2008, 11:38
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Borman92
сообщение 20.5.2008, 11:46


Мастер
****

Группа: Пользователи
Сообщений: 252
Регистрация: 14.1.2008
Из: Москва
Пользователь №: 160 063
Модель телефона: A1200e
Прошивка: R541_G_11.52.14R_U3

Рейтинг: 55



Вообще-то, под линуксом совершенно нормально собирается сдк из dev-ezx, который выложен здесь в первом посте скомпилированный, и инструкция по компиляции которого (с минимальными изменениями применимая и под линуксом) выложена в теме (если не вру) "Компиляция нативных приложений". Короче, поиск рулит wink.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 23.5.2008, 11:26


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

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

Рейтинг: 285.5



Все таки я сделал большую ошибку добавив в стартовый скрипт /usr/local/setenv.sh строчки

export CFLAGS='-O2 -pipe -mcpu=iwmmxt -mtune=iwmmxt'
export CXXFLAGS='-O2 -pipe -mcpu=iwmmxt -mtune=iwmmxt'

у меня с этими параметрами перестал компилится ScummVM

вместо этого ставим в стартовый скрипт
export LDFLAGS='-L/opt/dev-ezx/a1200/lib/ezx/lib/inputmethods -L/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/arm-linux/lib -L/opt/dev-ezx/a1200/lib -L/opt/dev-ezx/a1200/lib/ezx/lib -L/usr/local/lib'
export CPPFLAGS='-I/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-linux/arm-linux/include -I/opt/dev-ezx/a1200/include -I/opt/dev-ezx/a1200/include/ezx -I/usr/local/include'

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

или просто меняем файл /usr/local/setenv.sh

Сообщение отредактировал Lubomyr - 23.5.2008, 11:56
Прикрепленный файл setenv.zip   ( 1.43 килобайт ) Кол-во скачиваний: 468
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
perk11
сообщение 23.5.2008, 18:01


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

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

Рейтинг: 16



А что нужно ставить под линуксом для кросскомпиляции? а то Cygwin тянуть не хочется..
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
John Johonson
сообщение 24.5.2008, 0:36


Новичок
*

Группа: Пользователи
Сообщений: 11
Регистрация: 30.5.2007
Из: Новосибирск >> Академгородок
Пользователь №: 136 554
Модель телефона: SLVR L7
Прошивка: HotMix E0R_RB

Рейтинг: 2



Цитата(perk11 @ 24.5.2008, 1:01) *

А что нужно ставить под линуксом для кросскомпиляции? а то Cygwin тянуть не хочется..

mkezx.org там mkezx, но при сборке он пытается все зависимости вытянуть из инета =/
openezx.org там ezx crosstools для linux, доступный пакет там кажется для федоры
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
John Johonson
сообщение 24.5.2008, 1:23


Новичок
*

Группа: Пользователи
Сообщений: 11
Регистрация: 30.5.2007
Из: Новосибирск >> Академгородок
Пользователь №: 136 554
Модель телефона: SLVR L7
Прошивка: HotMix E0R_RB

Рейтинг: 2



еще можно посмотреть здесь (http://libxze2.wiki.sourceforge.net/) там судя по описанию crosstools и некий велосипед для портирования и написания софта для EZX
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
CEZARE
сообщение 10.6.2008, 12:16


Опытный
***

Группа: Пользователи
Сообщений: 132
Регистрация: 1.9.2006
Из: Киев City
Пользователь №: 97 350
Модель телефона: А1200e

Рейтинг: 11



Цитата(Lubomyr @ 19.5.2008, 16:49) *

2) копируем свои либы с телефона через телнет

cd /usr/lib
tar zcvf /mmc/mmca1/ezx-lib.tar.gz *

Я непонял по этому пункуту, откуда взять эти либы, я через самбу ищу, но нашёл несколько папок и откуда взять ezx-lib.tar.gz ?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
kycb-kycb
сообщение 10.6.2008, 13:15


Мастер
****

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

Рейтинг: 189



Реально тормоз

Цитата
2) копируем свои либы с телефона через телнет

cd /usr/lib
tar zcvf /mmc/mmca1/ezx-lib.tar.gz *


где ты увидел упоминание самбы?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 10.6.2008, 13:15


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

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

Рейтинг: 285.5



обновил 1-е сообщение

по 1-му пункту добавил еще два пакеты которые могут пригодится в портировании приложений

devel->autoconf
devel->automake

по 2-му (тоже более подробно расписал)
2) копируем свои либы с телефона
для этого используем консоль или телнет

cd /usr/lib
tar zcvf /mmc/mmca1/ezx-lib.tar.gz *

после этой опрации на карте памяти должен появится файл ezx-lib.tar.gz копируем его на комп

в п.4
обновил игровое окружение
много новых либов которые могут пригодится в портации приложений


и п.7

Сообщение отредактировал Lubomyr - 25.6.2008, 18:00
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Z6Vetal
сообщение 10.6.2008, 23:11


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

Группа: Пользователи
Сообщений: 74
Регистрация: 8.5.2007
Пользователь №: 134 112
Модель телефона: Milestone 2
Прошивка: 2.4.24

Рейтинг: 6.5



А можно при помощи всего этого портировать 2gis, который для винды мобайл 5.0?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
MONSTER92
сообщение 11.6.2008, 10:39


Мастер
****

Группа: Пользователи
Сообщений: 224
Регистрация: 19.11.2006
Пользователь №: 107 368
Модель телефона: ROKR e6
Прошивка: Неважно

Рейтинг: 9.5



а если под линуксом работать то можно без cygwin ? и какие пакеты тогда ставить?


"А можно при помощи всего этого портировать 2gis, который для винды мобайл 5.0?" если найдеш исходники, еще лучшеб исходники под линукс, но ведь их нету ни исходников ни версии под линукс с исходжниками

Сообщение отредактировал MONSTER92 - 11.6.2008, 10:41
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
CEZARE
сообщение 12.6.2008, 14:30


Опытный
***

Группа: Пользователи
Сообщений: 132
Регистрация: 1.9.2006
Из: Киев City
Пользователь №: 97 350
Модель телефона: А1200e

Рейтинг: 11



потому что кроме самбы у мееня нием не открывается труба
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Z6Vetal
сообщение 14.6.2008, 6:00


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

Группа: Пользователи
Сообщений: 74
Регистрация: 8.5.2007
Пользователь №: 134 112
Модель телефона: Milestone 2
Прошивка: 2.4.24

Рейтинг: 6.5



Очень много приложений с opie http://killefiz.de/zaurus/ портируйте что хотите. Там даже исходники есть.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 14.6.2008, 12:23


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

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

Рейтинг: 285.5



У кого нибудь есть успехи в портировании OpenTTD

у меня вот такое получается

[SRC] Linking openttd
/usr/local//lib/libSDLmain.a(SDL_motoezx_main.o)(.text+0x30): In function `main'
:
: undefined reference to `SDL_main'
collect2: ld returned 1 exit status
make[1]: *** [openttd] Error 1


Сообщение отредактировал Lubomyr - 22.6.2008, 19:17
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
tmp_do
сообщение 22.6.2008, 14:20


Гуру
******

Группа: Разработчики
Сообщений: 911
Регистрация: 29.8.2007
Пользователь №: 146 016
Модель телефона: HAINAN
Прошивка: hand made & custom

Рейтинг: 188



замучился я с фрейбуфером на езх. гружу ядро, вместо графики до загрузки ам куча пикселей скачет,после загрузки графика сдвигается по экрану. выкл-вкл подсветку,экран становится норм. может у ког есть готовый конфиг 2.4 ядра?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
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 килобайт ) Кол-во скачиваний: 321
Прикрепленный файл test_SDL.h.txt   ( 318 байт ) Кол-во скачиваний: 183
Прикрепленный файл test_SDL.cpp.txt   ( 1.75 килобайт ) Кол-во скачиваний: 304
Прикрепленный файл test_SDLmixer.h.txt   ( 356 байт ) Кол-во скачиваний: 217
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
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
это побеждается изменением в исходник рарешения экрана.
Пользователю запрещено создавать сообщения
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
perk11
сообщение 12.7.2008, 21:06


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

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

Рейтинг: 16



Спасибо, помогло. Теперь появляется табличка "Loading" и потом Segmentation Fault. Буду мучать.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Winand
сообщение 14.7.2008, 19:20


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

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

Рейтинг: 44.5



О! наконец-то я осознал всем мозгом, почему всё что я портирую сегфолтится при выходе
в main, перед return надо было вызывать SDL_Quit(). Спасибо игре vectoroids - научила)

Сообщение отредактировал Winand - 14.7.2008, 19:21
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
lavelas
сообщение 16.7.2008, 8:02


Опытный
***

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

Рейтинг: 47.5



Цитата(Winand @ 8.7.2008, 22:57) *

да, но arg[0] - это не совсем то. Там будет относительный путь, например "./app"


basename на него.. или как его там..
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Winand
сообщение 16.7.2008, 11:00


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

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

Рейтинг: 44.5



видел бейснейм в скриптах запуска. Но мне помогла точка в начале относительного пути))
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 16.7.2008, 11:43


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

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

Рейтинг: 285.5



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

прога всё время лезет в /usr/local/ - то есть, по мануалу, в директорию куда она установлена.
Как можно получить путь к запускаемому файлу, чтобы тупо подставить в коде?)
Вообще программа обращается к пути, хранимом в SRC_DIR, но я так и не понял, где оно объявляется..


У меня была аналогичная история, но лень было разбиратся, поэтому в полученом файле через HEX-редактор я просто изменил все строчки /usr/local/ на /mmc/mmca1/
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 17.7.2008, 18:25


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

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

Рейтинг: 285.5



Notepad++

неплохой текстовой редактор для винды и линукса

http://notepad-plus.sourceforge.net/ru/site.htm
http://sourceforge.net/project/showfiles.p...ckage_id=102072

Сообщение отредактировал Lubomyr - 17.7.2008, 18:27
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Winand
сообщение 17.7.2008, 18:28


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

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

Рейтинг: 44.5



Lubomyr, ты же не предлагаешь портировать NPP? =)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 17.7.2008, 18:29


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

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

Рейтинг: 285.5



Winand,
нет, просто удобно пользоватся под виндой

Добавлено позже (17.7.2008, 21:36):
VSO Image Resizer 2.0.1.7

http://www.izone.ru/graphics/utilities/vso-image-resizer.htm

удобная прога
разрешает уменьшать сразу все рисунки в нужном соотношении

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


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

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

Рейтинг: 44.5



да, нотепад в качестве редактора сорцов сначала игнорировал и юзал wxDev-CPP =) зачем не знаю.
плюс-плюс значительно шустрее.
А вот рисунки предпочитаю редактировать каждый индивидуально)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Lubomyr
сообщение 17.7.2008, 18:56


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

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

Рейтинг: 285.5



На всякий случай продублирую в этой теме, если кому-нибудь пригодится

если при выполнении make появляется такая ошибка

/../../arm-linux/bin/ld: cannot find -lpthread
collect2: ld returned 1 exit status

Попробуем открыть Makefile через редактор Notepad++
и ищем строчку
LIBS =

для примера очень часто разбивается на 2-е строчки
LIBS = .............................
.......

копируем все в одну строчку
LIBS = ...........................................

если Makefile встречается в других папках, делаем так же

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

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

 



Текстовая версия Сейчас: 10.7.2025, 8:27

Форум живёт: