Forum > Packages and Libraries

[SOLVED] RX (aka RXDBGRID) compilation in Lazarus 2.2.0

(1/2) > >>

DragoRosso:
Lazarus 2.2.0, FPC 3.2.2 - Stable Release, Windows x64 SO.

With Online Package Manager, installing the RX package (aka RXDBGRID) give an error in compilation.

The compilation does not happen because the RXNEW module, I don't know why, expects a "longer" definition of TField than it actually is. Just comment the part indicated in the "ex_rx_xml_datapacket.pas" file:


--- Code: ---    const
      XMLFieldtypenames : Array [TFieldType] of String[15] =
        (
          'Unknown',
          'string',
          'i2',
          'i4',
          'i4',
          'boolean',
          'r8',
          'r8',
          'fixed',
          'date',
          'time',
          'datetime',
          'bin.hex',
          'bin.hex',
          'i4',
          'bin.hex',
          'bin.hex',
          'bin.hex',
          'bin.hex',
          'bin.hex',
          'bin.hex',
          'bin.hex',
          '',
          'string',
          'string',
          'i8',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          ''
    (*        <- Coment adds.
    {$IF FPC_FULLVERSION > 30200}
          , ''
          , ''
          , ''
          , ''
          , ''
          , ''
    {$ENDIF}
    *)        <- Coment ends.
        );

--- End code ---

Now recompile all and install, reconstruct Lazarus IDE .... That's all

Bye

calm_sea:
Thanks, this also fixes on linux. But on linux there is another problem with rx_lazreport Compiling is  error free, but after install Lazarus crashes on startup

JuhaManninen:
Maybe the condition should be

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---{$IF FPC_FULLVERSION > 30300}instead of

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---{$IF FPC_FULLVERSION > 30200}

DragoRosso:
@JuhaManninen
Yes, you are right: it is with the last FPC 3.3.1 that the definition of TFieldType changes.

Bye

Thaddy:

--- Quote from: JuhaManninen on January 11, 2022, 12:32:28 am ---Maybe the condition should be

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---{$IF FPC_FULLVERSION > 30300}
--- End quote ---
Well, I thought that 30300 will never be a release - it is a development version - , so only of interest to trunk users.
I don't think you should use that in regular code.
But indeed, in this case at least it would work.

Navigation

[0] Message Index

[#] Next page

Go to full version