Palm Programmer's Laboratory
【C/C++】POL で DA が作成できない問題について
[開発情報]
概要
このページでは、CodeWarrior で POL を使用した プロジェクトで DA を作成できない問題点について説明します。
問題点
「 【C/C++】CodeWarrior で DA プロジェクトを作成する方法 」と同じ方法で POL ベースの DA を作成しようとすると、ビルド時に以下のようなリンカエラーが発生します。
__codereftype__ が見つかりません。
これは、DA を作成する「 68K コードリソース 」プロジェクトが大域変数を持てないために発生するものと思われます。POL はライブラリ内で大域変数を使用している部分があるため(らしい)です。
それ以前に、POL の4つのリンクライブラリは別セグメントに置かれる必要がある(らしい)ため、プロジェクト設定画面の「 Palm OS 68K ターゲット」パネルにおいて、「 マルチセグメントコードリソース 」 オプションをチェックしておく必要があります。これをチェックしていないと、「コードリソースはマルチセグメントをサポートしていません」という別のエラーが発生します。
対処法
この問題に対する対処法は現在調査中です。方針としては、POL のリンクライブラリを使用せず、目的の DA を作成するために最低限必要な POL のソースファイルやヘッダファイルを手作業でプロジェクトに追加する方法が考えられます。
参考情報
以下の記事では、CodeWarrior で DA のプロジェクトを作成する方法を説明しています。
コメント
このページの情報に関する誤りや追加情報がありましたら、コメントをお願いします。