[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 04/16 07:50 / Filesize : 203 KB / Number-of Response : 857
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

BREW(Binary Runtime Environment for Wireless) 9



1 名前:デフォルトの名無しさん mailto:sage [2006/12/21(木) 13:37:32 ]
BREW(Binary Runtime Environment for Wireless)についてのスレ

■テンプレ
brew.s214.xrea.com/pukiwiki/
kintubo.kakiko.com/brew/

■前スレ
08 pc8.2ch.net/test/read.cgi/tech/1147832791/

■過去スレ
07 pc8.2ch.net/test/read.cgi/tech/1137502541/
06 pc8.2ch.net/test/read.cgi/tech/1126846736/
05 pc8.2ch.net/test/read.cgi/tech/1119056460/
04 pc8.2ch.net/test/read.cgi/tech/1111028365/
03 pc5.2ch.net/test/read.cgi/tech/1096006023/
02 pc5.2ch.net/test/read.cgi/tech/1076511398/
01 pc2.2ch.net/test/read.cgi/tech/1011078904/

関連情報 >>2-10


92 名前:68 mailto:sage [2007/01/17(水) 17:56:24 ]
うーん、XPでも何かおかしいと思ったら
MAKE_RGBを使用せずに直接16進数で
RGBを指定していたのがマズいようで・・・

リファレンスに

(RGBVAL) ( ((uint32)(r) << 8) + ((uint32)(g) << 16) + ((uint32)(b) << 24) )

って書いてあるじゃんヽ(`Д´)ノ
失礼しますた。


93 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 18:11:43 ]
ウイルスセキュリティZEROをPCにインストールしたらBREWエミュでの通信が
うまくいかなくなったのですが
他にこういうこと起こった人いますか?

94 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 19:49:15 ]
通信許可してもダメなら
アンインストールすればいーんでないだろうか・・・


95 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 21:39:37 ]
>>92 俺もそれではまった事あるぞ。
色のならびにあわせた名前の付け方して欲しいよ。
普通なら RGBVAL じゃなくて BGRVAL(またはBGRAVAL) とでもしておく方が直感的じゃね?


96 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 21:48:17 ]
それだと、何の値かわからないって判断したんじゃない?


97 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 22:30:36 ]
じゃあCOLVALとかにでもしとけや!ケッ

98 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 22:31:30 ]
メモリ上の並びはRGBじゃん。

99 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 22:35:58 ]
そうとも限らんのでは・・確認したことは無いが

100 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 22:47:40 ]
いや、VRAM上とかDIBの構成じゃなくて、>92の値をメモリに書いたら。



101 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 23:11:21 ]
どうだろね。"メモリに書く"という動作の定義によるけど
通常のイメージでいうとダブルワードの値をメモリに書く、ということになるだろうけど
そうなるとエンディアンで違いがでるんじゃないかな?と

102 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 08:28:38 ]
ヒント:くあるこむ

103 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 14:47:38 ]
>>92だとWin32の32ビットDIBのピクセル値と同じ並びになりそう。

それにしても、なんでBREWってWin32APIの痛すぎる命名や流儀をやたらパクってるのかね……。


104 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 18:45:58 ]
ちょっと、お知恵を借りたいんですが……。

ゲームを移植してまして、一応最初はきちんと動作しているのですが、
シミュレーター上で2〜3時間くらい動作させるとその内、IIMAGE_Drawや
IDISPLAY_DrawTextやIDISPLAY_FillRectを始めとする一切の描画機能が
働かなくなります(単にIDISPLAY_Updateが働かなくなっているだけかも
しれませんが……)。

その状態になった時にトレースしてみると描画がされないだけで、内部的には
正常にメインループが動作しており、MALLOC等もきちんと動作しています。
もちろん描画をフラグで飛ばしている感じでもありません。IDISPLAY_Update
も毎回通っています。

画像に関して、今まで正常に表示されていた物が何かを境にまったく表示
されなくなり、かつIDISPLAY_FillRectまで動作しない所を見ると、
CreateInstance等の処理に何か問題が発生したとも思えません。
IDisplayの値も調べましたが、特に破壊された感じではありません。

ちなみに実機上でやると、似たようなタイミングで端末リセットが発生します。

自分のソースがおかしい事は分かるのですが、どこで異常を起こしているのかが
つかめずにいます。

せめて何をきっかけに上記のような現象が発生するのかが分かれば手がかりに
なりそうなのですが、心当たりのある方いらっしゃいますでしょうか?

105 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 19:13:57 ]
>>104
エミュに関してはエミュそのものがリークしているって
フォーラムにあったような気がした。
ただ前作ったアプリでは1日ランニングかけっぱなしでも平気だったけど…
兎も角ソフトそのものがリークしてないか虱潰しに見てくしかないんでないかね。

参考にならずスマソ


106 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 19:20:47 ]
まぁ作ったもの解放してないとか、2回解放したとかじゃね。
フラグメントが進んでそういう症状出るとかだと南無い。

107 名前:名無しBREWたん mailto:sage [2007/01/22(月) 19:20:53 ]
ヒープオーバーランとか。

108 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 20:36:45 ]
>>104
始めはまともに動作していて、一定時間経過後に動作不安定や不正終了ってのは
メモリ食い尽くしてエラーかな、とまず思った。
それならアプリを終了したときメモリリークを知らせるメッセージが出るけど、どう?

MALLOC、CreateInstanceの他、メモリを確保するタイプの
IXXX_GetXxxx()のような関数で取得したオブジェクトの解放処理もチェックだね。

109 名前:104 mailto:sage [2007/01/22(月) 23:33:20 ]
みなさん。ありがとうございます!

やっぱりどうも基本的な部分に見落としがあるって事ですよね……。
とりあえず、根強く虱潰しに見ていこうと思います。

>>108
大体一時間ほどプレイした場合のメッセージ中、メモリーに関係有りそうなのが
以下で、それ以外エラーっぽい文章は出ていないのですが……。

前から気になっていたのがこの"28 Wasted"なのですが、これはどういう
数値なのでしょうか?

*AEEHeap.c:1186 - 0 Alloc - Total
*AEEHeap.c:1187 - 0 OEM
*AEEHeap.c:1188 - 0 BREW
*AEEHeap.c:1189 - 0 Apps
*AEEHeap.c:1190 - 28 Wasted
*AEEHeap.c:1191 - 10436560 Free - Total
*AEEHeap.c:1192 - 10436560 Largest
*AEEHeap.c:1193 - 0 Largest Non Seq.
*AEEHeap.c:1194 - 0 Total Non Seq.


110 名前:108 mailto:sage [2007/01/23(火) 00:36:47 ]
>大体一時間ほどプレイした場合のメッセージ中、メモリーに関係有りそうなのが以下で
実行中のメモリリークは残メモリ量を常時監視してるとかじゃないと掴みにくいよ。

もしメモリ解放し忘れとかあれば、アプリ終了時にシミュレータの画面にエラーメッセージが出る。
画面にMEMORY ERRORとかなんとかそんなメッセージが出てないかって聞きたかった。
(NULLポインタへのアクセスでも出たと思うがはっきり覚えてない)

いや、もちろん、メモリリークが原因だと決まったわけではないけれど。

>この"28 Wasted"なのですが
それは>>105が言ってるようなやつ。気にしなくていいと思う。



111 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 01:56:51 ]
>109
そのメッセージってリークさせた時だけ終了時に出る奴だと思ったが…
AEEHeap.cのはそれだけ?その直前にもなんか出てない?

112 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 02:05:53 ]
エミュレータがリークしてるなんて書き込みはない
エミュレータがひたすらログをヒープ上に溜め込んでメモリを食いつぶすらしいが

Wastedはよく見るので多分あまり気にする必要はない
メモリリークしたときはBPOINTなんちゃらと出る希ガス

スタック上に確保したインスタンスの開放漏れとかそういうのが疑わしい

113 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 02:08:49 ]
IBitmapからDIB取得したときとかの開放漏れとかもね

114 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 10:25:14 ]
BREW3.1のシミュはアプリ終了時に
ホンの一瞬だけリークの表示画面出して
ランチャー画面に移っちゃって気づきづらい。

その代わり>109のログが出る。
リークしなければAEEHeep.cのログは出ない。

ということで>109はメモリリークでFA。


115 名前:デフォルトの名無しさん [2007/01/23(火) 11:25:47 ]
>*AEEHeap.c:1190 - 28 Wasted

コレってシミュレータを立ち上げて
消すだけでも出ない?
(何のアプリを起動しなくても)
今まで気にしてなかったんだけど…

116 名前:104 mailto:sage [2007/01/23(火) 11:38:12 ]
すいません。勘違いしていました。

109のはシミュレーター自体を終了した時に出たメッセージで、
アプリ終了直後は特に109のようなログもBPOINTなんちゃらも
出ていないっぽいです(全文張ろうかと思いましたが長すぎる
みたいですので……)。

開発当初に>>114にあります一瞬出るメッセージが出たこともありましたが、
それはあからさまな開放漏れを修正する事によって解決しました。

とりあえず、皆さんの指摘の中にあります開放漏れを重点的にチェックして
みようと思います。

どうもありがとうございました!

117 名前:114 mailto:sage [2007/01/23(火) 11:48:29 ]
スマン、シミュの終了時は見逃してた。
ただアプリ終了時にAEEHeap.cのログが出た場合は
リークしてることに間違いは無いよ。


118 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 11:50:23 ]
ちなみにリークさせたときのログ

*AEEShell.c:8565 - App_Cleanup(1009ff0)
*OEMOS.c:548 - BPOINT Type 1, Node 0x048618E0 helloworld
*AEEHeap.c:1171 - ------ App Heap Info ------
*AEEHeap.c:1073 - 128 - helloworld #1624 c:\brew_sdk\3.1.2\sdk\examples\helloworld\helloworld.c:134 (L)
*AEEHeap.c:1185 - -------------------------
*AEEHeap.c:1186 - 161928 Alloc - Total
*AEEHeap.c:1187 - 0 OEM
*AEEHeap.c:1188 - 75409 BREW
*AEEHeap.c:1189 - 86519 Apps
*AEEHeap.c:1190 - 6104 Wasted
*AEEHeap.c:1191 - 2977756 Free - Total
*AEEHeap.c:1192 - 2940688 Largest
*AEEHeap.c:1193 - 2940688 Largest Non Seq.
*AEEHeap.c:1194 - 2977756 Total Non Seq.
*AEEHeap.c:1195 - -------------------------
*AEEShell.c:8087 - App_New (CREATED 1008000)

119 名前:104 mailto:sage [2007/01/23(火) 11:52:23 ]
連投すいません。

ビットマップの開放なのですが、開放順序は関係有りますでしょうか?

手順はこんな感じなのですが……。

デバイスのビットマップ取得
 ↓
互換性のある作業用ビットマップ作成
 ↓
作業用ビットマップにパターン転送
 ↓
ITransformインターフェイス作成
 ↓
トランスフォーム転送
 ↓
ITransformインターフェイス開放
 ↓
IDISPLAY_Update
 ↓
作業用ビットマップ開放
 ↓
取得したデバイスのビットマップ開放


120 名前:104 mailto:sage [2007/01/23(火) 11:56:52 ]
>>117
ありがとうございます。

確認したのですが、アプリ終了直後は特にAEEHeap.cからのログは出力されて
いないでみたいです。




121 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 12:01:22 ]
開放する順番は多分関係ない

アプリ内でヒープの残量監視して、1時間アプリ走らせたあとに
ヒープ残量が想定以上に減ってないか確認してみれば

###BREWDEBUG#でみてもよし

122 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 13:41:55 ]
最初にそこそこメモリMALLOCしておいて、不具合が出るまでの時間が減るか、とかアナクロな手法も。

123 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 11:22:32 ]
まずは問題の切り分けだな。
ヒープの線が濃厚なら>>121のやり方でヒープ残量を監視。
一定タイミングごとに残量チェックして、前回から変わったらDBGPRINTで。
で、実際にヒープ量が減っていって、足りなくなって落ちるんならそっから絞込み。

■俺が良くやるリークチェック手順

まず、マクロで俺様MALLOC&FREE(new/deleteも)作って、確保・開放したファイル名、行番号とポインタを表示しとく。

アプリを実行し、てきとーにプレイして終了

出力ウィンドウを全部コピペし、エディタでメモリリーク用表示のみを抽出

CSV形式に加工

エクセルに持っていって、ポインタ順にソート

正常なら同じポインタでMALLOCとFREE一回づつやってるはず。
数が合わなければそこの周辺がリークの発生場所。
※エクセルなので関数使って自動チェックするのも簡単

124 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 17:21:49 ]
メモリ問題に割り込むかたちで済まないが質問。
半角全角絵文字混在の文字列から、使用不可文字を取り除く処理ってどうすんべか。

1文字ずつ切り出す
半角か全角か判別
使用不可文字かどうか判別
使用不可文字なら取り除いて文字列を詰める

…とかいちいちやるのひょっとして?

125 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 17:34:11 ]
それ以外にどんな方法があるって言うんだー


126 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 18:09:00 ]
STREXPANDした後のほうが全半判別いらないから楽かもとか思ってしまう俺手抜き

127 名前:124 mailto:sage [2007/01/24(水) 19:09:48 ]
そうか、やっぱそうなのか。
そういうAPIは日本拡張パッケージで用意しといて欲しいや。

ITextCtlで入力された文字列から取り除くんだが
それならAECHARだから2byteずつの切り出しでOKってわけか。
とりあえずこれでやってみる。

128 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 18:12:51 ]
qcpで再生、停止はできるけれど、
IMEDIA_Rewind(), IMEDIA_Fastforward(), IMEDIA_Seekが
シミュレータでことごとく動かない・・・
書籍とか読んで、ただコールするだけで良さそうなのにダメダメです

あと実機でwebからダウンロードを安定して出来ますか?
ISOURCE_Read()で250k位のファイルをDLしようとすると不安定になって
8割くらいで端末リセット食らいます、たまに成功するんだけどね・・・

129 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 20:10:21 ]
>>126 なるほど、おまい頭いいなw
半角かな混在環境だと、漢字とカナのチェックで苦労するんだよな。
AECHAR用正規表現ルーチンとかあると楽なのに。


130 名前:デフォルトの名無しさん [2007/01/26(金) 15:15:29 ]
>>88でITextCtlについて質問したものです。
その後フォーラムやBREWのドキュメントを参考に文字入力を実装できたのですが
ITEXTCTL_SetRect()で表示した四角形の色を変える方法が分かりません。

デフォルトだと白なのですが、アプリの画面にあわせて色を変えたいと思ってます。
どうすればテキストコントロールの色を変更できるのでしょうか?




131 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 15:35:55 ]
>>130
俺はITextCtlは普段一切表示しないで、
使うときだけ作成、
直後にKEY_PRESSEDイベントを擬似的にITextCtlへ投げて
FEPを起動してる。
なので描画は自由にやってる。


132 名前:名無しBREWたん mailto:sage [2007/01/26(金) 15:46:14 ]
>>130-131
うちも描画は自前。
ITectCtl_ReDraw() とかは、機種によって動作が替わるんで、あまりオヌヌメできない。

133 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 13:04:35 ]

それでも色代えたいならIDISPLAY_Setcolor()当たりでできたはず(今検証デケンスマヌ)

だがやはりオヌヌメできない

134 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 01:14:16 ]
ありがとうございます。
結局、全画面モードでネイティブエディタを即起動するようにしました。
知人に聞いてもITextCtl関連は機種依存が多いようなので
あまり変なことしない方が無難そうですね。

135 名前:128 mailto:sage [2007/01/28(日) 20:42:35 ]
いくつかの機種でSDKについてくるメディアプレイヤーを使ったのですが
古い端末じゃないとmp3のインスタンスが作れないし
qcpだとどれもシークできないしで困っています。
音声ファイルのシークがしたいのですが、どうすれば実現できますでしょうか?

136 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 21:07:55 ]
3g2とか使えないかな?

137 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 03:19:00 ]
音データでqcp使ったこと無いや・・・
spfなら助言はできるんだが動作に違いあるんかな?


138 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 18:36:15 ]
すみません、ちょっと曖昧な内容の質問になるんですが
クリアキーを押しただけでアプリが終了してしまうのは何が原因なのでしょうか?
こちらのプログラムではクリアキーに関する処理は何も実装していませんが
エミュで確認するとクリアーキーを押すと EVT_APP_STOP が送られてアプリが終了してしまいます。

こういう場合原因があるとすれば何が考えられるのでしょうか?
アバウトすぎて答えにくいかもしれませんが、少しでもヒントがあればと、質問してみました。
宜しくお願いいたします。

139 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 18:50:04 ]
>>138
EVT_KEYイベントに対してfalseを返す

140 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 18:53:04 ]
EVT_KEY/AVK_CLRにFALSEを返すと問答無用にアプリは終了させられる
BREWの仕様、イヤならとりあえずTRUE返しときゃおk



141 名前:デフォルトの名無しさん mailto:sage [2007/01/29(月) 19:15:55 ]
ありがとうございます!!解決しました!
EVT_KEYPRESS/RELEASEは処理してたんですがEVT_KEYはやってませんでした。
こんな単純な話だったとは・・・お手数をおかけしましたm(_ _)m

142 名前:128 mailto:sage [2007/01/30(火) 02:14:39 ]
>>136
テストコード作って3g2を読み込みましたがIMEDIAUTIL_CreateMedia()でSUCCESSしませんでした。
やはりMPEG4エクステンションが必要でしょうか。
MSPレベルじゃ手に入ぽいんですよね。ぶっつけで実機確認してみようと思います。
>>137
声を扱いたいのでspfは使わないのです、申し訳ない。

で、現状の解決方法としてSDK3.1.5、シミュレータW41CAにてmmfのシークを確認しました。
音質悪いし圧縮率も悪いですけどね・・・gzipかけたときに小さくなるのが救いだけど。
3.1.2jaではIMEDIAUTIL_CreateMedia()の時点でダメでした。
次は実機確認してみます。駄報告でスマン

143 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 02:44:32 ]
VisualStudioから実機でステップ実行できるようにするか、
メディアとかカメラとかもシミュレータで再現できるようにしろよなぁ…

144 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 04:14:04 ]
>>142
SDK3.1.2のYAMAHA系DLLってなんか問題があって、差分がKDDIのほうで出てなかったっけ?
最近のは修正されてる?

145 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 07:06:12 ]
PCの画面に携帯の端末が表示されるようなシミュレータないすか?

146 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 10:32:11 ]
つ SDK

147 名前:128 mailto:sage [2007/01/31(水) 04:15:30 ]
追記:
20K程度のmmfファイルのシークは出来ませんでした。3.1.4以降で確認。
3.X以降でまともにシークできるフォーマットとシミュレータは無いのでしょうか?

>>144
\bin\Modulesに入れるma3smwemu.dllでしょうか?
3.1.4以降もこのdll外すとmmfは再生できませんでした。

148 名前:デフォルトの名無しさん [2007/01/31(水) 17:14:41 ]
通信中やロード中などに、キーを連打しておくと、
画面が遷移した時に、専攻入力状態になってしまうのですが、
これを回避する方法はありますか?
遷移直後に、キーを初期化しても発生します。

149 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 17:37:23 ]
遷移して数フレームは入力無視したら?

150 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 19:48:55 ]
画面毎にイベントをヌルーするつくりにすればいいヂャマイカ?



151 名前:148 mailto:sage [2007/01/31(水) 20:12:57 ]
レスありがとうございます。
とりあえずは画面が切り替わった際に数フレームかませることで回避できました。
>>150
その方向で手直ししてみます。


152 名前:デフォルトの名無しさん [2007/02/01(木) 17:19:31 ]
端末設定のEz番号通知・非通知を取得する方法はありますか?

153 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 20:31:16 ]
>>152
サブスクライバIDが取得できなければ非通知、でなんかマズい?


154 名前:152 mailto:sage [2007/02/01(木) 20:37:37 ]
>>153
非通知設定にしていても、普通に取得できてしまうのです。
非通知設定の場合は、通知を促す文言を表示したほうが良いと思いまして。


155 名前:デフォルトの名無しさん [2007/02/02(金) 00:49:12 ]
>>154
BREWアプリでのEZ番号取得は通知/非通知とは無関係に成功する。
サービスガイドとかちゃんと読んだほうがいいよ?

156 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 10:13:46 ]
取得して何をするつもりですか?

157 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 12:17:45 ]
サーバでユーザ判定するんだろ?

158 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 15:06:21 ]
GCC環境についての質問です。
>>4で上がっている情報やフォーラムの情報を参考に環境構築中なのですが
VisualStudioのAddInにあるGCC用make作成ボタンを押しても
ARM用の中途半端なmakefileが作成されてしまいます。
どこかで読んだんですがC++だとmakeを作ってくれないらしいのですが
これを回避(自動でGCC用makefileを作成)する方法はありませんか?

それとも、C++の場合はmakeファイルは自作するしかないのでしょうか? orz

ご存知の方、宜しくお願いします・・・

159 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 15:17:01 ]
>>152
聞くならQualcommのフォーラムじゃなくてKDDIに聞くべきじゃないかと

160 名前:名無しBREWたん mailto:sage [2007/02/02(金) 16:49:07 ]
>>158
テンプレートを書き換えればうまくいきそうな気がするけど、昔のこと何でもう忘れてしもーた。



161 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 20:57:18 ]
そんなぁ・・・( @д@)/ 思い出せ〜〜思い出せ〜〜(※電波送信中)

つーか、今のところBREW3.1.2/gnude/Visualstudio2003/C++ という環境でやってるんですが、
GCCで開発する時ってmakefileはどうやってます?
やっぱり↓をベースにして自分で書くしかないのかなぁ・・・
(BREW AddIns)\common\templates\GCCAppTemplate.mak 


162 名前:161 mailto:sage [2007/02/03(土) 13:36:10 ]
結局、>>4 の情報やBREW Forum(日本語・英語)、ググって見つけたサイトの情報を元に
gnude/C++ でmodファイルを作るところまでは行ったんですが、実機で起動しないです・・・orz
コンパイルとリンクのオプション晒すので、間違いがあればどなたか指摘してくださいです。m(_ _)m
アプリのモジュールに加えて、AEEAPPGEN.c AEEMODGEN.c GCCRESOLVER.c もビルドに組み込んでます。

・コンパイルオプション
c:\gnude\bin\arm-elf-g++ -c -DDYNAMIC_APP -mcpu=arm7tdmi -mapcs-frame -mthumb-interwork -mlittle-endian -fshort-enums -fno-builtin -g
-fno-exceptions -fno-unwind-tables -ffunction-sections -fno-rtti -IC:\BREWSDK3.1.2\sdk\inc -IC:\gnude\lib\gcc-lib\arm-elf\3.3.1\include
-Ic:\gnude\arm-elf\include -O2 -o main.o c:\test\main.cpp

・リンカオプション
c:\gnude\bin\arm-elf-ld --cref -Ttext 0 --emit-relocs -entry AEEMod_Load --gc-sections -o test.elf -LC:\gnude\lib\gcc-lib\arm-elf\3.3.1
-Lc:\gnude\arm-elf\lib AEEAPPGEN.o AEEMODGEN.o GCCRESOLVER.o CAPTUR~1.o main.o (必要な .oファイルは全部書いてます)-lm -lc -lgcc


163 名前:161 [2007/02/03(土) 13:36:42 ]

あと、リンク時に以下のワーニングが出るんですが
 /cygdrive/c/gnude/bin/arm-elf-ld: Warning: C:\gnude\lib\gcc-lib\arm-elf\3.3.1/libgcc.a(_divsi3.o) does not support interworking, whereas test.elf does
 /cygdrive/c/gnude/bin/arm-elf-ld: Warning: C:\gnude\lib\gcc-lib\arm-elf\3.3.1/libgcc.a(_modsi3.o) does not support interworking, whereas test.elf does
 /cygdrive/c/gnude/bin/arm-elf-ld: Warning: C:\gnude\lib\gcc-lib\arm-elf\3.3.1/libgcc.a(_dvmd_tls.o) does not support interworking, whereas test.elf does

これってGCCAppTemplate.makの最初に↓のようなコメントがあるので、無視してかまわないのでしょうか?
# Notes:
# 1. While building the application using this make file, the following warnings may be
# received. They can be safely ignored:
#"Warning: _divsi3.o does not support interworking, whereas <Your App>.elf does not"
#"Warning: _dvmd_tls.o does not support interworking, whereas <Your App>.elf does not"
#"Warning: cannot find entry symbol _start; defaulting to 00008000"

164 名前:161 [2007/02/03(土) 13:53:31 ]
あ、ちなみに同じコードをRVCTでビルドすると問題なく動きます。

大人の事情でどうしてもGCC環境を構築しないといけないので
「素直にRVCTでビルドしやがれ!」というレスは無しで。(つдT)

165 名前:デフォルトの名無しさん mailto:sage [2007/02/03(土) 23:00:51 ]
素直にRVCTでビルドしやがれ!

166 名前:デフォルトの名無しさん mailto:sage [2007/02/03(土) 23:24:29 ]
ロガーを使って、実機でどのようなエラーが出ているか確認できないのか

167 名前:161 mailto:sage [2007/02/04(日) 10:50:06 ]
起動した瞬間、実機ごと落ちるとです・・・

168 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 11:10:42 ]
>>161
俺も同じ症状で結局gcc使うのあきらめた
ADS使うので、今は環境も消しちまって確認してないんだが、その後
AEEmodGenを壱番最初にリンクする必要がある、とかなんとか見たことがあった
-entry AEEMod_Loadの指定が正しい動作しないとかなんとか、という理由で

169 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 13:12:15 ]
大人の事情とは、金の問題か

170 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 13:56:04 ]
おっかねー話だな



171 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 15:43:46 ]
ずばりQのフォーラムで聞いてみたらどうだろうか?

GCCを使う場合、AddInではC++が通るmakefileが作られない。
自前で用意したmakefileでビルドはできたが、実機では起動時点で動かない。
GCC(GNUDE)を利用したC++向けのmakefile記述の注意点と、
GCC(GNUDE)を利用した開発環境構築の助言が欲しい。

とかメッチャ都合のいい質問。
英語の方のフォーラムに誘導されておしまいだったりして。

172 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 19:48:05 ]
mapファイル出力してAEEMod_Loadが先頭にあるかチェック
gccは昔自分でgcc自身からビルドして使ってたけど(ちなみに3.3。makeもgnuの奴で)
どうしてもmodのサイズがでかくなるんで使うのやめた。


173 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 11:52:21 ]
>>171 英語でも
 you build on RVCT stupid! Hahahaha!
とかいわれたりしてなw

174 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 13:02:18 ]
use RVCT, you stinkin' loser!! Ha ha!

175 名前:名無しBREWたん mailto:sage [2007/02/05(月) 14:21:33 ]
>>161
ld に渡すモジュールの順番が間違ってる。
AEEModGen.o が一番最初。
これは、>>168 の言うとおり、-entry フラグが有効に機能しないため。

さらに、アプリサイズがでっかくなりすぎてどうこうというのは、
gnude じゃなくて GNUARM を使うことをおすすめする。
平均で半分ぐらいのモジュールサイズになる。

brew.s214.xrea.com/pukiwiki/?GNUARM

176 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 16:05:07 ]
GCC くらい自分でビルドすればいいのに

177 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 19:56:46 ]
>>175
GNUARM を GUNDAM と読んでしまった件

178 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 20:42:38 ]
安物NICのMACアドレスでライセンスとって
SoftEtherやVMwareで使いまわしときゃいいんだから
RVCT一個くらい買っとけ。

179 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 20:48:30 ]
またがんおたか!

180 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 01:12:15 ]
ここのメンツは数年前からほとんど変化が無い



181 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 08:18:13 ]
だがちょっと舞ってほしい


おまいらお疲れSummer

182 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 11:01:19 ]
半年くらいBREWの開発はしてないが見てる俺。

183 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 11:03:56 ]
ちとスレ違いかもしれないとですが。
モバイルソリューションパートナーの登録が済んだのですが、
サイト内の仕様書を見ると各種端末仕様書と、
各種デバイス構成ファイル、
法人向け〜仕様書が見えます。

で、一般向け?の仕様書が見当たらないのですが、
これらはどうすれば入手できるのでしょうか?


184 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 12:10:29 ]
>>183
一般向けってなに?公式コンテンツ作りたいなら
CPになんなきゃ。まずは企画審査がんばってください。

185 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 15:38:16 ]
なぜか知らんがE03CAは、ICAMERAで
DeferEncode(FALSE) にすると RecordSnapshot() で落ちる。。。
DeferEncode(TRUE) にすると、うまくいく。。。

そしてアプリ終了時に BAD POINTER Type 3 が出てるんで、
どうもどこかを解放しすぎたっぽいんだが、追い切れない。。。

そんなことをし始めてそろそろ24時間経ちました。。。orz

186 名前:183 mailto:sage [2007/02/06(火) 16:16:52 ]
>>184
ありがとうございます。
ウチは下請け専門でして、仕様書等はCPから入手してました。
その手間を察してか、
事務の方がモバイルソリューションパートナーの登録を行ってくれました。

で、サイトの方を見てみたら183の通りでして…

一般向けと言うのが適切かわからないのですが、
例えばサービスガイドだとタイトルが
「法人向けEZアプリ(BREW(R))サービスガイド(BREW(R)3.1版)」
となっていまして、以前CPから頂いたものに「法人向け」と
文言が加わっており、内容も若干法人向けになっています。

「法人向け」でないサービスガイドが入手できれば十分なんですが、
私のサイト内検索の方法が悪いのか、登録方法に問題があったのか、
その程度の情報でよいので何かアドバイスお願いできませんか?


187 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 16:31:03 ]
>>185
ぐおお、DeferEncode(TRUE) にしたら、VGA での撮影はできないんだとよ。
※ICAMERA_GetSizeList() による調査結果。


・・・なんぢゃそら。ヽ(`Д´)ノ

188 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 16:54:24 ]
>>186
あぁそういうことですか。
当然ながらCP用のコンテンツはありません。
サービスガイドや検証関連は
正規のものをクライアントさんにもらってください。
MSPだとBREWテスト端末を勝手に確保したり
testsigの取得やなんかもできちゃうんで、
そーゆー意図で便宜を図ってくれたんじゃないかと。

うちはモバソリで自社提供と、CPな子会社の下請けやってますが、
機種情報やプログラミングガイドなんかは法人向けので
充分というか、こっちの方が新しい情報がのってたりするので
重にこちらを参照するようにしてます。
あ、CP向けのほうが機種毎の障害情報とか充実してるけど。

189 名前:183 mailto:sage [2007/02/06(火) 17:26:02 ]
>>188
CP向けのコンテンツと分かれていたんですか。
機種情報等は十分な情報量なので、こちらで満足します。
どうもありがとうございました。


190 名前:デフォルトの名無しさん mailto:sage [2007/02/06(火) 18:29:01 ]
>>187
ヒント1:端末仕様書
ヒント2:ハード系(カメラ・ストレージ・音源・エンコなど)は実装依存が激しい
ヒント3:そもそもカメラを使わない企画がオヌヌメ



191 名前:デフォルトの名無しさん mailto:sage [2007/02/07(水) 00:37:25 ]
E03て何だっけ?法人端末?
扱ってる人も少ないだろうし乙としかいいようが無いな

192 名前:デフォルトの名無しさん mailto:sage [2007/02/07(水) 01:36:23 ]
>185
解放しすぎじゃなくて解放し忘れじゃね?
ところで、カメラで写真何枚も撮ってない?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<203KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef