LINUX.ORG.RU
решено ФорумGames

ребята, помогите портировать tbftss 1.3

 


1

1

Пытаясь разобраться со старым мейкфайлом от 0.4, в итоге получил примерно такой файл (все патчи от 0.4, понятно, я удалил):

# $OpenBSD: Makefile,v 1.1.1.1 2015/12/10 06:44:52 bentley Exp $

COMMENT =               2D mission-based space shooter

# http://www.battleforthesolarsystem.com/downloads/tbftss-1.3-1555.src.tar.gz

V =                     1.3
DISTNAME =              tbftss-$V-1555.src
PKGNAME =               tbftss-$V

CATEGORIES =            games

HOMEPAGE =              http://www.battleforthesolarsystem.com/games/pw/

# code GPLv2+, data CC BY-NC-SA 3.0 or freer
PERMIT_PACKAGE_CDROM =  Non-commercial
PERMIT_PACKAGE_FTP =    Yes

WANTLIB += SDL2 SDL2_image SDL2_mixer SDL2_ttf c m pthread

MASTER_SITES =          http://www.battleforthesolarsystem.com/downloads/

LIB_DEPENDS =           devel/sdl2-image \
                        devel/sdl2-mixer \
                        devel/sdl2-ttf

MAKE_FLAGS =            CC="${CC}" \
                        CXXFLAGS="${CFLAGS} `sdl2-config --cflags` \
                        -DDATA_DIR=\\\"${PREFIX}/share/tbftss\\\" \
                        -DLOCALE_DIR=\\\"${PREFIX}/share/locale\\\" \
                        -DVERSION=$V" \
                        BIN_DIR=${PREFIX}/bin \
                        DATA_DIR=${PREFIX}/share/tbftss

USE_GMAKE =             Yes

NO_TEST =               Yes

MAKE_FILE =             makefile
WRKDIST =               ${WRKDIR}/tbftss-$V

.include <bsd.port.mk>

PLIST получил по make plist

первая проблема - иконки и десктоп-файл помещает куда-то не туда, но это мелочи

вторая проблема, она же и есть проблема - при запуске ругается на data/missions/sol/07 - wingmates.json и 08 - final.json, после чего падает в core-dump. чем мотивирует, неизвестно

linux-версия запускается и работает нормально.

помогите довести порт до ума

★★★★★

вывод такой:

INFO: Loading data/challenges/18.json
INFO: Loading data/challenges/19.json
INFO: Loading data/challenges/20.json
INFO: Loading data/challenges/21.json
INFO: Loading data/challenges/22.json
INFO: Loading data/challenges/23.json
INFO: Loading data/challenges/24.json
INFO: Loading data/challenges/25.json
INFO: Loading data/challenges/26.json
INFO: Loading data/challenges/27.json
INFO: Loading data/challenges/28.json
INFO: Loading data/challenges/29.json
INFO: Loading data/challenges/30.json
INFO: Loading data/challenges/31.json
INFO: Loading data/trophies/trophies.json
INFO: Trophies (44) [Bronze=28, Silver=10, Gold=5, Platinum=1]
INFO: Loading gfx/trophies/bronze.png
INFO: Loading gfx/trophies/silver.png
INFO: Loading gfx/trophies/gold.png
INFO: Loading gfx/trophies/platinum.png
INFO: Loading gfx/trophies/unearned.png
INFO: Loading gfx/trophies/sparkle.png
INFO: Loading gfx/trophies/alertSphere.png
WARN: No such mission 'data/missions/sol/06 - wingmates.json'
WARN: No such mission 'data/missions/sol/07 - final.json'
ERROR: No such lookup value 'SIDE_INF'
INFO: Cleaning up ...

Program received signal SIGSEGV, Segmentation fault.
0x00001dc75db9b496 in SDL_DestroyTexture_REAL () from /usr/local/lib/libSDL2.so.0.3
Current language:  auto; currently minimal
(gdb) 
buratino ★★★★★
() автор топика
Ответ на: комментарий от Novel
(gdb) bt
#0  0x00001283cdd52496 in SDL_DestroyTexture_REAL ()
   from /usr/local/lib/libSDL2.so.0.3
#1  0x00001280f2e28433 in destroyTextures () from /usr/local/bin/tbftss
#2  0x00001280f2e19314 in cleanup () from /usr/local/bin/tbftss
#3  0x00001283d74662a0 in _libc___cxa_finalize (dso=0x0)
    at /usr/src/lib/libc/stdlib/atexit.c:159
#4  0x00001283d7472cff in _libc_exit (status=The value of variable 'status' is distributed across several
locations, and GDB cannot access its value.

)
    at /usr/src/lib/libc/stdlib/exit.c:54
#5  0x00001280f2e1e6d3 in lookup () from /usr/local/bin/tbftss
#6  0x00001280f2e1aed3 in loadGame () from /usr/local/bin/tbftss
#7  0x00001280f2e1ea80 in main () from /usr/local/bin/tbftss
(gdb) 

Как мне кажется, она при выходе крашится точно так же, как и предыдущая версия крашилась - дело не в этом. Дело в том, почему оно пытается выходить после запуска и почему не видит чего-то нужного... :)

buratino ★★★★★
() автор топика
Последнее исправление: buratino (всего исправлений: 1)

V = 1.3

этого точно быть не должно. V в make используется для verbose.

V=1 make общеупотребительная штука, наверно даже где-то в документации есть

upd. А, или это ваш опеновский способ опакечивать? тогда звиняйте. Но по мне всё равно странно

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

это использовалось в прошлом порте, я это не трогал

файл-то нормально собирается. запускается, показывает окно с индикатором, а потом всё грохается ;(

buratino ★★★★★
() автор топика

Новые саундтреки радуют. Я и из 0.4 постоянно слушал, а в 1.3 появилось пять новых - сижу, слушаю саундтреки, пока игра не работает :)

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

ясно. По существу не приходит на ум ничего. может strace что скажет еще

Deleted
()
Ответ на: комментарий от Deleted

а, ты про заглавие? V = это версия

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

Как мне кажется, она при выходе крашится точно так же, как и предыдущая версия крашилась - дело не в этом.

по этому трейсу можно предположить, что фейлится оно где-то в районе lookup(), что-то не может найти.

я бы собрал с отладочными символами эту штуку, поставил на lookup брякпоинт и по шагам посмотрел что там происходит.

Novel ★★★★
()
Ответ на: комментарий от Novel

я бы собрал с отладочными символами эту штуку, поставил на lookup брякпоинт и по шагам посмотрел что там происходит.

Я в этом плохо разбираюсь :(

buratino ★★★★★
() автор топика
Ответ на: комментарий от iSage

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

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

просто SIDE_INF есть только в 0.4 (в data/galaxy/starSystems.json)
плюс, по логу он у тебя ищет
WARN: No such mission 'data/missions/sol/06 - wingmates.json'
WARN: No such mission 'data/missions/sol/07 - final.json'

так они называются в 0.4, в 1.3 они 07 и 08. По именам они прописаны в data/galaxy/starSystems.json, но, опять же, только в 0.4, так что как минимум этот файл у тебя от 0.4 почему-то.

iSage ★★★★
()
Ответ на: комментарий от iSage

идею понял. это в сейвах что-то у меня завалялось?

buratino ★★★★★
() автор топика
Ответ на: комментарий от iSage

Спасибо, друг! Прибил сейвы от старой версии и всё сразу заработало :)

Я неверно выразился - не в изолированном окружении, а из отдельного каталога. Но сейвы-то были те же самые :)

Теперь осталось разобраться с иконками.

buratino ★★★★★
() автор топика

Кстати, ещё кто-нибудь играет? Нет ли у кого желания совместно перевести игру?

buratino ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.