Страница 1 из 2

Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 25.06.2013 17:29:03
ssl
TRxDBGrid.GetBufferCount -- There is no method in an ancestor class to be overridden

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 25.06.2013 23:07:34
alexs
Текущая версия библиотеки работает только с Lazarus 1.1.
Всё дело в том, что для реализации некоторых возможностей были внесены изменения в LCL. И эти изменения пока не попали в стабильные ветки Lazarus (1.0.10...)

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 26.06.2013 04:32:21
ssadragon
Будет работать если стереть слово Override; кажется после TRxDBGrid.GetBufferCount

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 26.06.2013 07:47:44
alexs
После этого появятся глюки с последней стокой в гриде, если будетвключен многострочный заголовок и/или итоговая строка

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 26.06.2013 08:15:45
ssadragon
alexs писал(а):После этого появятся глюки с последней стокой в гриде, если будетвключен многострочный заголовок и/или итоговая строка

Ну да может быть, не отрицаю. Зато компилируется.

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 26.06.2013 10:57:46
ssl
Ясно, 10х

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 11.07.2013 20:31:52
alexs
Закомител изменения. Теперь должно собираться и на стабильных версиях.
TRxDBGrid.GetBufferCount обернул в директивы компиляции - теперь всё это работает только в версии 1.1.
Соответсвенно в 1.0 функционал не будет доступен.
Визуально будет проявляться в виде артефактов последней строки - она может быть на половину скрыта.

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 12.07.2013 06:07:56
ssadragon
alexs писал(а):Закомител изменения.

Вот -
/rxdbgrid.pas(43,5) Fatal: Internal error 200501152
на строке {$if ((lcl_major = 1) and (lcl_minor = 1))}
после последнего коммита :(

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 12.07.2013 22:12:23
alexs
Странно.
А ещё кто может проверить? В define вроде давно уже можно использовать обычные константы паскаля...

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 12.07.2013 22:49:49
ssadragon
alexs писал(а):Странно.

Я тоже удивлен.
В винде такая же бяка.

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 09.08.2013 12:34:41
hovadur
lazarus 1.0.10, fpc 2.6.2
Вместо:
Код: Выделить всё
{$if ((lcl_major = 1) and (lcl_minor = 1))}
  {$DEFINE RX_USE_LCL_DEVEL}
{$ENDIF}

Нужно поставить:
Код: Выделить всё
{$IFDEF LCL_MAJOR = 1}
  {$IFDEF LCL_MINOR = 1}
    {$DEFINE RX_USE_LCL_DEVEL}
  {$ENDIF}
{$ENDIF}

И тогда скомпилируется.
Патч посылать? :)

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 09.08.2013 13:19:04
ssadragon
hovadur писал(а):И тогда скомпилируется

Да скомпилируется, но работает не так как надо
У меня Lazarus 1.1
Между строками {$IFDEF LCL_MAJOR = 1} .. {$ENDIF} строки
Код: Выделить всё
{$IFDEF LCL_MINOR = 1}
   {$DEFINE RX_USE_LCL_DEVEL}
{$ENDIF}

неактивны, хотя должны быть активными, т.к. в юните LCLVersion черным по белому
Код: Выделить всё
const
  lcl_major = 1;
  lcl_minor = 1;
  lcl_release = 0;
  lcl_patch = 0;
  lcl_fullversion = ((lcl_major *  100 + lcl_minor) * 100 + lcl_release) * 100 + lcl_patch;
  lcl_version = '1.1';     

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 09.03.2016 09:28:30
ssadragon
Здравствуйте!
Команда Lazarus закомментила функции из FileUtil, соответственно пакет теперь не собирается и ругается на все эти функции.
Сделано это было в ревизии 51834 "LazUtils: disable the wrapper functions in FileUtil by default. The wrapper functions will be removed later on."

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 09.03.2016 10:20:04
Лекс Айрин
ssadragon, обсуждалось. Подключите модуль LazFileUtils

Re: Не собирается пакет на последних Lazarus & FPC

СообщениеДобавлено: 09.03.2016 10:34:11
ssadragon
Лекс Айрин И где же это обсуждалось?
Вот что пришлось поменять чтобы пакет собрался. Вытащил это все через функцию фиксировать в TortoiseSVN
Код: Выделить всё
--- Temp/rxapputils.pas-revBASE.svn001.tmp.pas   ѕн мар  2 15:49:50 2015
+++ E:/lazarus/components/@component/alex_components/rx_n/rxapputils.pas   —р мар  9 11:52:26 2016
@@ -83 +83 @@ uses
-  Registry, Forms, FileUtil, LazUTF8;
+  Registry, Forms, LazFileUtils, LazUTF8;

--- Temp/rxfileutils.pas-revBASE.svn001.tmp.pas   ѕт июл 25 19:20:01 2014
+++ E:/lazarus/components/@component/alex_components/rx_n/rxfileutils.pas   —р мар  9 11:58:27 2016
@@ -52 +52 @@ uses
-   FileUtil;
+   LazUTF8;

--- Temp/rxinipropstorage.pas-revBASE.svn001.tmp.pas
+++ E:/lazarus/components/@component/alex_components/rx_n/rxinipropstorage.pas   
@@ -57 +57 @@ implementation
-uses rxapputils, LazUTF8, FileUtil;
+uses rxapputils, LazUTF8, LazFileUtils;

--- Temp/rxversinfo.pas-revBASE.svn001.tmp.pas
+++ E:/lazarus/components/@component/alex_components/rx_n/rxversinfo.pas   
@@ -112 +112 @@ implementation
-uses FileUtil, resource, resreader, InterfaceBase, rxconst
+uses FileUtil, LazUTF8, resource, resreader, InterfaceBase, rxconst

--- Temp/folderlister.pas-revBASE.svn001.tmp.pas   ѕт июл 25 19:20:01 2014
+++ E:/lazarus/components/@component/alex_components/rx_n/folderlister.pas   —р мар  9 11:54:07 2016
@@ -82 +82 @@ implementation
-uses FileUtil, strutils, RxAppUtils, LazUTF8;
+uses LazFileUtils, strutils, RxAppUtils, LazUTF8;

--- Temp/rxaboutformunit.pas-revBASE.svn001.tmp.pas   ѕт июл 25 19:20:01 2014
+++ E:/lazarus/components/@component/alex_components/rx_n/rxaboutformunit.pas   —р мар  9 11:56:48 2016
@@ -39 +39 @@ uses
-  Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
+  Classes, SysUtils, LazUTF8, LResources, Forms, Controls, Graphics, Dialogs,
@@ -102 +102 @@ begin
-  if FileExistsUTF8(AFileName) then
+  if FileExists(AFileName) then


И кстати! Функции из модуля FileUtil уже даааавно Deprecated. Я думаю надо было раньше позаботится об этом. И не было бы такой ситуации как сейчас, когда эти функции просто отрубили.