HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2018
0309
エイカhsp3dishのビルドがエラー1で止まる15解決


エイカ

リンク

2018/3/9(Fri) 12:54:25|NO.82687

どうも、お世話になっております

hsp3dishのビルドがエラー1で止まります

Androidのコンソールはこんな感じです。

C:\(個人のパス)\AppData\Local\Temp\(個人のパス?).s:38357: Error: offset out of range make: *** [obj/local/armeabi-v7a/objs/(個人のパス)/hsp3embed/hspsource.o] Error 1

windowsでは正常に動作しております
iosでも、こちらのエラー出ます

libc++abi.dylib: terminating with uncaught exception of type HSPERROR

アドバイス等、よろしくお願いします



この記事に返信する


ぜーっと!

リンク

2018/3/9(Fri) 21:06:25|NO.82690

アバウトすぎてよくわかりませんが、未対応の命令や関数を使用しているとかではないでしょうか?

iosの場合、ビルドはできても、内部エラーが起こるとすべてそのエラー表示になってしまいます。
XCODEのデバッガを利用して、原因を自身でみつけないと、特定はかなり難しいと思います。

デバッガは、うちも最近まで使ったことが無かったのですが、適当にいじっていたら、
何とかなったので、適当にでもいじってみたらよいと思います。



エイカ

リンク

2018/3/9(Fri) 23:27:17|NO.82691

アドバイス、ありがとうございます。

xcodeのデバッガですね
何とかやってみます

あと、ソースをマメにバックアップしており
四日前辺りのソースがあるので
そちらから、今のソースを移植する形でも
可能そうならやってみます。

ファイルを幾つか追加したり
mp3のレートを変えたり
セーブフォルダの名前を変えたりしてるので
そこら辺かもしれません



エイカ

リンク

2018/3/11(Sun) 05:34:26|NO.82700

あれからの報告です
(解決済みにしたのですが、事柄自体は解決しておらず
新しくスレを立てるのも微妙なので、こちらで継続します)

セーブフォルダ名変更と、mp3音楽ファイル追加
そしてゲーム中演奏音楽変更機能をつけたソースは
iosでは、psdファイルの一個追加忘れだけだったようで
iosでは、結局動作可能となりました。

ですが、同じソースでwindowsもiosも動作するのに
相変わらず、Android版だけがエラー1出ます
古い昔のソースをビルドしてみた所
そちらは無事にビルド通るので、
パソコンのHSP3Dishビルド機能自体は正常みたいです。

追加したmp3、png画像
ゲーム音楽変更機能のソース追加
セーブフォルダ名変更のソース書き換え
そこら辺のどれかが悪さしてるみたいですが
どれが原因なのかわからないため
古いソースから、ひとつずつ機能を追加して
どこでエラー吐くのかをやってみようかと思います

とりあえずはmp3ファイルの追加と
ゲーム音楽変更機能のソース追加を
古いソースに新しいソースから移植してみて
その動作だけはうまくいくのか確かめたいと思います。

何か現時点でアドバイス等あれば、よろしくおねがいします。



エイカ

リンク

2018/3/11(Sun) 09:36:50|NO.82701

mp3音楽演奏変更機能を前ソースから移植したら
ビルドがうまく行かなくなりました…。(T_T)。
おそらく、この過程でビルド失敗してる様子です。

アドバイス等、ありましたらお願いします。
(ios版は先程も言ったとおり
現在は無事に動いております)



あまら

リンク

2018/3/11(Sun) 12:00:26|NO.82702

>mp3音楽演奏変更機能
これは、どういった形のソースでしょう?

名前から推測すると、
すでに何らかのmp3を再生中→それを止める→別のmp3を再生
という感じだと思うのですが

例えばこんな感じのソースでしょうか

mmplay 1
mmstop
mmplay 2



エイカ

リンク

2018/3/11(Sun) 12:20:06|NO.82703

アドバイス、ありがとうございます。

Android版のhsp3dishは
mmloadのID登録が、30個までしか出来ない皆を過去ログで見かけたので
このような方法でやっております
(かなり略しております)


*音楽呼び出し if 音楽番号=1:mmload "chachi03.mp3",1,1;街 if 音楽番号=2:mmload "otaku01.mp3",1,1;戦闘 if 音楽番号=3:mmload "omoide_loft.mp3",1,1;lvup 演奏番号=1 return ******************************** gosub *音楽呼び出し mmstop:if (musicon=1):mmplay 演奏番号

あと、どちらにしてもmmloadで全部読み込むと
物理メモリ的にiosでは不可能なようです。



エイカ

リンク

2018/3/11(Sun) 12:31:52|NO.82704

追記です。
かなり相当端折る形になりますが
こんな感じです


*設定画面 gosub *コンフィグセーブ if musicon=1:mmstop 音楽番号=設定音楽臨時 gosub *音楽呼び出し if 街音楽番号=(街音楽管理番号.1):街音臨時=1 if 戦闘音楽番号=(戦闘音楽管理番号.1):戦闘音臨時=1 if (musicon=1)and(設定音楽臨時!0):mmplay 演奏番号 *********************************** objimage 40,0,0,0,0,0,0 objsize 40,40 pos 戦闘曲前ボタンX,戦闘曲前ボタンY button goto "",*戦闘曲前へ *********************************** *戦闘曲前へ 戦闘音臨時=戦闘音臨時-1 if 戦闘音臨時<1:戦闘音臨時=戦闘音楽数 戦闘音楽番号=戦闘音楽管理番号.(戦闘音臨時) 設定音楽臨時=戦闘音楽管理番号.(戦闘音臨時) await 1 goto *設定画面



エイカ

リンク

2018/3/11(Sun) 12:45:59|NO.82705

何度もすみません。追記です

ここでは説明しきれないので
アップローダーに一通り上げました
過去のAndroidエラー1のはずのデータを
そのまま上げましたが
これはwindowsでは動作するはずです

https://ux.getuploader.com/gametai77/

みて下されば幸いです。



エイカ

リンク

2018/3/11(Sun) 12:48:19|NO.82706

当方、HSP3.5リリース版と
事情により、APIレベル19にて
制作しております

少し前のソースはこの環境下で
Androidのビルド、通ってました。



エイカ

リンク

2018/3/11(Sun) 13:22:31|NO.82707

…あくまで低レベル者の余談として。(^_^;)。

xcodeのデバッガについて記載するのを忘れてましたが
あれ、相当使えますね。

普通にxcodeで実行してると、何かのエラーを吐くだけだったので
おにたまさんが制作された箇所でエラーが起こると
どうしようもないように見えるのですが
デバッガだと、ブレークポイントで動作を止めることが出来るので
ひたすら「ブレークポイント指定>そこまで動いたら次のブレークポイントに変えて実行」
を繰り返すだけで、ほぼエラー原因の行を特定できるので
スマホ開発においては必須レベルに便利ですね

hsp3dishでAndroid変換したソースを走らせることが出来て
デバッガがそれ上で動作させれる、hsp3dishのAndroid制作環境は
自前で用意できないのだろうか…?
Androidへの変換方式を詳しく知らないのだけど
変換したソースは何らかのデバッガ環境ありで走らせることは出来ないのだろうか?

それが出来るなら、今回のようなケースでも何とかなりそうなのだけど。



あまら

リンク

2018/3/11(Sun) 14:19:01|NO.82709

変数やラベル名が日本語だったので少々戸惑いましたが、エラーになる理由がわかりませんね。


API 19は入れていなかったので(21しか入れてませんでした)追加でインストールし、
プロジェクトのIDを"android-19"として
ビルドしてみましたが、多少の警告は出たもののビルドは出来ました。

どこか間違えたかな……(成功で間違いというのも変ですが)

以下警告一覧
全部変数の初期化をしていないということですが、これは問題ないはずですね。

#HSP script preprocessor ver3.5 / onion software 1997-2017(c)
#Use file [hspdef.as]
#HSP code generator ver3.5 / onion software 1997-2017(c)
#未初期化の変数があります(音ボタンx)
#未初期化の変数があります(音ボタンy)
#未初期化の変数があります(テキスト読み取り)
#未初期化の変数があります(s)
#未初期化の変数があります(時)
#未初期化の変数があります(分)
#未初期化の変数があります(演奏番号)
#未初期化の変数があります(枠3y)
#未初期化の変数があります(レベルアップ音声)
#未初期化の変数があります(オート中断処理)
#未初期化の変数があります(攻撃点滅処理)
#未初期化の変数があります(点滅)
#未初期化の変数があります(移動キャラ)
#未初期化の変数があります(秒針)
#未初期化の変数があります(累計ダメージ実際)
#Code size (85660) String data size (7876) param size (112)
#Vars (377) Labels (175) Modules (4) Libs (0) Plugins (1)
#No error detected. (total 94606 bytes)


そして一応HSP3Dishにもデバッカ的な事も出来ると思いますよ。
(重すぎるのでやったことはないですが)

オプションのAVDマネージャーで対象となるandroidバージョンやらを設定・作成し起動
オプションのDeviceモニターで起動したデバイスの監視

といった感じです。



あまら

リンク

2018/3/11(Sun) 14:23:13|NO.82710

追記

エラーとは関係ないかもしれませんが、
dataフォルダに入っていたサウンドファイルは全て
assetsフォルダにコピーしてからビルドしました。



エイカ

リンク

2018/3/11(Sun) 14:43:00|NO.82713

どうも、アドバイスや実行など
本当に色々ありがとうございます。

アップローダーに、今のプロジェクト自体をアップしておきました。
でも、これで何かありそうなら
iosで動作することを考えると、うちのパソコンの開発環境ぐらいしかありませんね。
でも、特定のソースのみでエラー1吐くとなれば
別PCに一から環境整えてやってみるとか
今のPCの環境再インストールぐらいしか手段ありませんね。

きついです。が、この掲示板の皆様のおかげで
ここまで何とかこれたのは感謝しかありません。
本当に助かります。



あまら

リンク

2018/3/11(Sun) 15:44:07|NO.82714

一応成功したSDKなどのバージョン&リンクも書いておきます。
(ほとんど推奨バージョンのままですが、環境の問題で64bit版をインストールしています)
http://www.onionsoft.net/hsp/v35/doclib/hsp3dish_ndk.htm#ABOUT


JAVA: Java SE 8u161
http://www.oracle.com/technetwork/java/javase/downloads/index.html

Android SDK: Android SDK Tools, Revision 25.2.5(直リンク)
https://dl-ssl.google.com/android/repository/tools_r25.2.5-windows.zip

Android NDK: android-ndk-r14b
https://developer.android.com/ndk/downloads/older_releases.html#ndk-14b-downloads

Apache Ant: 1.10.1(バージョンアップでこれはもう無いかもしれません)
https://ant.apache.org/bindownload.cgi



エイカ

リンク

2018/3/11(Sun) 15:58:09|NO.82715

ありがとうございます!
本当に助かりました!
おかげで解決しました!!

「NDKのビルドに失敗しました」と出てるので
アドバイスもあり、NDKをr14bに変えてみると
無事、ビルド通りました!

しかし、本当にダメだ自分。
ビルド時にそのエラーが出てるのに
NDKに全く気づかなかった…
ダメどころじゃない。

本当にどちらかと言えば
ご迷惑をおかけました…
本当に申し訳ありません。
本気で作ってるのだけは本当なので
信じてください。

ありがとうございます。
このお礼は、アプリ完成で返したいものです。
本当にありがとうございました!。
これからもがんばります。



ONION software Copyright 1997-2018(c) All rights reserved.