On 3/4/19 2:57 PM, Vlad Khorsun wrote:
04.03.2019 11:16, Simonov Denis via Firebird-devel wrote:
Faced the following problem when working with Firebird 4.0 via IBExpert.
Trying to execute the following SQL query.
SELECT current_time FROM $RDB$DATABASE
SQLCODE: -902
GDSCODE: 335545167
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
Could not find acceptable ICU library.
Missing entrypoint u_setDataDirectory in ICU library.
Firebird 4.0 Beta 1 x64. For a 32-bit client, a separate folder is
allocated in which everything you need is included.
msvcp140.dll
vcruntime140.dll
icudt63.dll
icuin63.dll
icuuc63.dll
icudt63l.dat
firebird.msg
I investigated the problem using Process Explorer. It turned out that
fbclient does not load correct ICUs, instead ICUs are loaded from
fbembedded Firebird 2.5, which IBExpert which IBExpert uses to store
its settings. I tried to disable storing the storage of settings in
the user database and the request was immediately executed successfully.
Is it possible to improve the search for ICU libraries if another
version of ICU is already loaded by the application?
I have additional question: is it true that fbclient now depends on
ICU ?
As fas as I know - not. At least IntlManager.cpp is placed in src/jrd,
which is used only in engine.
Client is using other (OS-specific) tools for charsets conversions.
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel