Page 1 of 1

Zeos 7 Branch and Trunk Problem

Posted: 22.02.2009, 17:16
by objech
Hello everyone

I'm having trouble compiling the version 7 of Zeos
Both Branch and Trunk.

The error is:

/usr/lib/lazarus/components/zeos7/src/plain/ZPlainFirebird10.pas (424.35) Error: Identifier not found "TStringDynArray"

I remember that somewhere in this forum, mentioned about this variable "TStringDynArray" to be defined in Free Pascal, but im't remenber where is now.

I attach file with all errors messages from Lazarus when compiling Zeos 7.

Someone could give me a hint to solve this problem.

I'm use
Platform: i386
Zeos 7 Trunk of svn://zeos.firmos.at/zeos/trunk
and Zeos 7 Trunk of svn://zeos.firmos.at/zeos/branck/testing
On
Lazarus Version# 0.9.27 SVN 18762 (Beta) on
i386-Linux gtk2
Free Pascal: 2.2.3
All 2009-02-21


Best Regars

Elmo

Posted: 25.02.2009, 11:04
by mdaems
TStringDynArray is declared in Types.pp (in fpc 2.2.2 on windows)
I'm working with zeoslib (= building + developing) using Lazarus SVN version, fpc2.2.2, windows vista without any problems.

The attached file shows only linker messages. So that doesn't help much.

Mark

Posted: 26.02.2009, 08:47
by objech
Excellent
Thanks, very much.

I searched in /usr/share/fpcsrc. and found Types.pp in objpas folder.

Code: Select all

  TStringDynArray = array of AnsiString;
My problem is solved, the sources of Zeos7 compiling very well now.

I'm use Lazarus 0.9.27 with Free Pascall 2.2.3 on S.O. Linux Debian Lenny i686.

Thanks again
Sincerely

Elmo

Posted: 26.02.2009, 09:33
by mdaems
Why is it important to know the location of the type declaration? Did you have to change the zeoslib coding to get it compiled? Or were you simply using the TStringDynArray somewhere in your program?
If changes to zeoslib code are needed we want to know that.

Mark

Solved - I modify four Zeosdbo's Units

Posted: 27.02.2009, 06:12
by objech
Hello Mark

Exactly, it was necesary to modify Zeoslib's Code, for compile well

I modify the following units:

/src/plain/ZPlainFirebird10.pas
/src/plain/ZPlainFirebird15.pas
/src/plain/ZPlainFirebird20.pas
/src/plain/ZPlainFirebird21.pas

The change was the same in all these units
In the Uses definition of Interface. At the following Declaration:

{ $IFNDEF FPC}
Types,

I only modify (eliminate) a N like that:

{ $IFDEF FPC}
Types,

I think the better option is cut {$IFNDEF FPC}
But I did not modify to this point of quite the conditional {$IFDEF FPC},
You will can evaluate this possibility.
Your opinion was of great help because confrim my that TStringDynArray is declared in Types.pp of Free Pascal.
Was hint to realizing the modification with a good result.

Thanks again

Elmo
Attach file with modify Units

Posted: 27.02.2009, 09:46
by mdaems
Strange... Why does it compile at my place then... I'll have to look into that...

Mark

Posted: 27.02.2009, 15:58
by objech
Really, I think the problem lies in the environment variable FPC, in some systems, like mine, is present and in others not.

Best Regards.

Elmo