CC コンパイラ (CC: Sun C++ 5.9 SunOS_sparc Patch 124863-01 2007/07/2) を使用して、SUN Solaris で C++ アプリケーションをコンパイルしました。アプリケーションは、グローバリゼーションのために ICU サポートを使用しています。ただし、アプリケーションを実行すると、メソッドucnv_open("ibm-9448_X100-2005", &status) でエラーが発生しました。
19-Jun 12:12:27 [0]:error opening ICU converter: U_FILE_ACCESS_ERROR
XalanCtrl::XalanCtrl()
:dLanguage ( "" ),
dLegendPage( "" ),
dLayoutDir ( "" ),
dBillDocuRoot(""),
dBillImageRoot("")
{
dpTransformer = new XalanTransformer();
myCallback = new CallbackHandler();
// Create ICU converter
UErrorCode status=U_ZERO_ERROR;
const char *erMes;
ICUcnv = ucnv_open("ibm-9448_X100-2005", &status);
if(U_FAILURE(status))
{
erMes=u_errorName(status );
tout0 << "error opening ICU converter: " << erMes << endl;
terr << "FATAL error opening ICU converter: " << erMes << endl;
throw std::runtime_error( "error opening ICU converter" );
}
// Create the ICU buffer used for transcoding
ICUSize=1024;
ICUBuffer=new char[ICUSize];
}
同じアプリケーションは完全に動作していますが、別の環境でコンパイルされています。これは、アプリケーションのビルドに関連していますか?それともコンパイラに関連していますか? IUC 変数または構成が設定されていないことが予想されますが、わかりません。この種の問題を解決する方法について何か考えはありますか?
どんな助けでも大歓迎です:)
前もって感謝します
よろしく、