ogorodov писал(а):Привет *Rik*
Я на днях Lazarus обновил до версии 1.4 и попробовал IBX в своих консольных утилитах ... так вот опять выдает ошибку и не собирается без модуля Intefase.
В версии 1.2.6 все работало на ура ... что поменяли непонятно пока ... У тебя так-же попробуй.
Тут Lazarus скорее не виноват. Я как-то заменил функции типа UppdrCase на UTF8UpperCase и т.д. объявленные в LazUTF8 (Это была попытка по чьей-то просьбе подключить русские алиасы), в модуле IBIntf.pas где загружается клиентская либа от FireBird прописан UTF8ToSys из модуля FileUtil, они тянут за собой LCL, я как-то упустил этот момент из виду.. Надо подумать, как чего придумаю, напишу, можете сами поэкспериментировать. Для этого в пакете IBExpress из зависимостей удалить LCL, в модуле IBDef.inc {$DEFINE LCLSUPPORT} тоже закомментировать. Как удастся IBExpress собрать без LCL так всё заработает..
Добавлено спустя 2 часа 28 минут 40 секунд:ogorodovПопробуйте вот это:
http://visual-t.ru/files/ibx_nolcl.7zПри установке пакета dclibx будет ругаться, что пути дублируются к одинаковым модулям, сделайте игнорировать, там сейчас разделены папки вывода модулей для пакета ibexpress и для dclibx. Для ibexpress отключен LCL и соответственно функции LalUTF8, поэтому в SQL запросах не используйте кириллицу даже в комментариях, для запросов EXECUTE BLOCK, а так-же в TIBDataSet.SelectSQL если используете свойство TIBDataSet.OrderFields.
Если все пройдет успешно, включу изменения для IBX, но видимо придется делать манипуляции и каждый раз пересобирать IBX, если требуется консольный вариант без LCL и для приложений с LCL.