OSDN Ticket Archive


Ticket #37371

macOS版 64bit対応

登録: 2017-07-17 22:49 最終更新: 2017-07-17 23:00

報告者:
yknk
担当者:
yknk
チケットの種類:
サポートリクエスト
状況:
完了
コンポーネント:
MIDITrail Ver.1.2.x for Mac OS X
マイルストーン:
Version 1.2.3 for macOS (完了済み)
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし

詳細

macOS版を64bit対応させる。iOS版は #36981 で対応済み。

チケットの履歴

2017-07-17 22:49 更新者: yknk
  • 新しいチケット "macOS版 64bit対応" が作成されました
2017-07-17 22:59 更新者: yknk
コメント

開発環境

開発環境のOSをmacOS Sierra(10.12)に更新したため、Xcode7からXcode8に変更する。 チケットは「#37372 macOS版 開発環境をXcode8に移行」で対応する。

2017-07-17 22:59 更新者: yknk
コメント

ビルド設定変更

Architectures

Targets:MIDITrail / Architectures / Architectures
  "Standard Architectures (64-bit Intel) (x86_64) - $(ARCHES_STANDARD)"に変更
2017-07-17 23:00 更新者: yknk
コメント

型の変更

unsigned long型

unsigned longは32bit環境で4byte、64bit環境で8byteになる。 MIDITrailのソースコードはunsigned longを大量に利用しており、影響が大きい。

このためunsigned longを基本的にすべてunsigned intに変更する。 unsigned intは32bit,64bit環境のいずれでも4byteである。

OpenGL APIインターフェースでGLsizei型が指定されているパラメータについて、 unsigned longを利用していた場合は、unsigned intではなくGLsizeiに変更する。

エンコーディングIDをunsigned longで処理していた箇所は、NSStringEncodingに 変更する。

フォーマット文字列の変更

型の変更に伴い、フォーマット文字列も合わせて変更する。 snprintfまたはNSString::stringWithFormatのフォーマット文字列について、以下の修正を適用。

%lu -> %u
%ld -> %d
対象メソッドは次の通り。
SMFileReader::_WriteLogEventMeta
MTDashboard::_GetCounterStr
MTNoteDesign::_LoadConfFile
MTWindowSizeCfgDlg::createWindowSizeArray
MTWindowSizeCfgDlg::tableView

2017-07-17 23:00 更新者: yknk
  • 解決法なし から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2017-07-17 23:00 に更新されました

添付ファイルリスト

添付ファイルはありません