Forums.Avtograd.Ru: FreeUDFLib, Firebird, Linux, Delphi - Forums.Avtograd.Ru

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

FreeUDFLib, Firebird, Linux, Delphi

#1 Пользователь офлайн   minstrel

  • Активный пользователь
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 623
  • Регистрация: 16 Апрель 08

Отправлено 04 Август 2009 - 10:15

Есть некое приложение написанное в другом городе и другом времени на Delphi использующее базу данных Firebird(Interbase).
База данных лежит на компьютере с Windows XP, в папке базы данных лежит папка UDF в которой лежит и явно используется FreeUDFLib.dll.
Встала задача перенести базу данных на Linux. Перенес.
При работе программы возникают ошибки вида:
"Invalid argument brl in offset ,,, function F_DAYOFMONTH is not defined"
явно связанные с отсутствием юзердефинедфункций в линуксе.

Объясняйте как дураку,

Подключить либу можно положив ее в папку /usr/lib/firebird/udf? В директиве firebird.conf UdfAccess ничего писать не надо? Даже если там Restrict стоит?
Где взять полный аналог FreeUDFLib под линукс? Повторяю - ПОЛНЫЙ аналог. FreeUDFLibC - это не полный аналог. Там blob нет. FreeAdHoc тоже не то.
Как скомпилировать исходники FreeUDFLib под линукс?
Что делать?

Олег А.:

Нарушение п. 3.5
0


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Другие ответы в этой теме

#2 Пользователь офлайн   minstrel

  • Активный пользователь
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 623
  • Регистрация: 16 Апрель 08

Отправлено 18 Август 2009 - 16:36

Набрел на исходники FreeUDFLib. Как их теперь под Linux откомпилировать? И gpc и fpc ругаются на ошибки. В частности, fpc ругается на uses Windows. Не удалять же.

Олег А.:

Нарушение п. 3.5
0

#3 Пользователь офлайн   dezdrodomus

  • Пользователь
  • PipPip
  • Группа: Пользователи
  • Сообщений: 177
  • Регистрация: 13 Ноябрь 07

Отправлено 28 Август 2009 - 23:19

А написать в FreeUDFLibC blob из freeudflib или blobufdlib не пробовал ?
P.S. кстати delphi freeudflib по зубам ? если так то вроде есть delphi под линукс ... хотя х3
0

#4 Пользователь офлайн   Alex&(R)

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 29
  • Регистрация: 05 Август 09

Отправлено 29 Август 2009 - 15:27

Delphi для Linux - вроде Kylix от того же Borland :)
0

#5 Пользователь офлайн   Barrabas

  • Пользователь
  • PipPip
  • Группа: Пользователи
  • Сообщений: 431
  • Регистрация: 01 Ноябрь 07

Отправлено 31 Август 2009 - 09:45

Просмотр сообщенияAlex&(R) (29.8.2009, 15:27):

Delphi для Linux - вроде Kylix от того же Borland :)

он вроде как тупо использует вайн
0

#6 Пользователь офлайн   nickla

  • Старожил
  • PipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 253
  • Регистрация: 16 Ноябрь 07

Отправлено 08 Сентябрь 2009 - 08:40

Если библиотеку не найдешь пусти все из под вайна
Тут могла бы быть ваша реклама
0

#7 Пользователь офлайн   DJ-Andrey-sXe

  • Пользователь
  • PipPip
  • Группа: Пользователи
  • Сообщений: 218
  • Регистрация: 01 Ноябрь 07

Отправлено 03 Октябрь 2009 - 05:53

Просмотр сообщенияBarrabas (31 Август 2009 - 10:45):

он вроде как тупо использует вайн

Нет. Оно родное, без эмуляции. Но его забросили несколько лет назад и оно возжелает поставится далеко не на все современные дистрибутивы из-за доисторических на сегодня депенденсис.

nickla: очень, очень плохо пускать сервер через эмулятор, когда он же есть родной для платформы.

Если сейчас чем и собирать паскальную UDF под Linux, то FreePascal-ем. А если там на VCL-компонентах было завязано, есть Lazarus. Аналог Delphi, в котором кроме очевидного дельфи-подобного IDE есть замечательная вещь — LCL, которая делается для того, чтобы стать кроссплатформенной заменой VCL.

А про кайликс наверное можно уже и забыть. Зачем он нужен заброшеный и платный при живом и развивающемся свободном Лазарусе?

Топикстартеру: коллега, наверное как всегда автор базы не заюзал всех возможностей udf. Есть предложение: пускай isql, скажи show functions; и смотри, что реально нужно в базе. Затем выкидывай из кода UDF всё, кроме того, что действительно нужно. Таким образом можно упростить себе сборку того, что останется. Как знать, может быть, там и зависимость от модуля Windows на деле не нужна.

Да, чтобы дать фаербёрду возможность заюзать udf, обычно надо сложить скомпиленый файл в папку где_он_стоит/udf. UdfAccess в конфиге ограничивает папки, где ему можно искать либы. Клади как сконфигурено. Ну и права дать такие надо, чтобы fb сумел её почитать.

И то, что либа даже под линуксом будет называться что-то.dll — на это плюй, ибо Фаербёрду тоже плевать, как файл зовётся. Можно базу под расширение .so не переделывать, всё и так будет работать.
0

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей