Page 1 of 1

Error on Lazarus 0.9.30.4

Posted: 20.01.2013, 03:00
by hawkeye
When tried to installing Zeos 7.0.3 stable on lazarus 0.9.30.4 it show warning :
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(604,37) Error: Identifier not found "CP852ToUTF8"
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(605,39) Error: Identifier not found "UTF8ToCP852"
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(657,33) Hint: Mixing signed expressions and longwords gives a 64bit result
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(899) Fatal: There were 2 errors compiling module, stopping
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/plain/ZPlainDbLibDriver.pas(1,1) Fatal: Can't find unit ZCompatibility used by ZPlainDbLibDriver
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/parsesql/ZSybaseToken.pas(1,1) Fatal: Can't find unit ZTokenizer used by ZSybaseToken
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/dbc/ZDbcConnection.pas(1,1) Fatal: Can't find unit ZClasses used by ZDbcConnection
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/component/ZPropertyEditor.pas(1,1) Fatal: Can't find unit ZClasses used by ZPropertyEditor
/usr/lib/lazarus/0.9.30.4/ide/lazarus.pp(1,1) Fatal: Can't find unit zcore used by Lazarus
Its error on zeos or lazarus?

Posted: 20.01.2013, 08:27
by EgonHugeist

Posted: 20.01.2013, 11:11
by hawkeye
I had tried to compile the first (zcore) from five lpk that must compile manually
- http://zeos.firmos.at/viewtopic.php?t=3662
- http://zeos.firmos.at/viewtopic.php?p=16767#16767
but its not working
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(604,37) Error: Identifier not found "CP852ToUTF8"
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(605,39) Error: Identifier not found "UTF8ToCP852"
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(657,33) Hint: Mixing signed expressions and longwords gives a 64bit result
/usr/lib/lazarus/0.9.30.4/components/ZEOSDBO-7.0.3-stable/src/core/ZEncoding.pas(899) Fatal: There were 2 errors compiling module, stopping
And beside that it marks on
852: //CP852
begin
DbcConvert := @CP852ToUTF8;
PlainConvert := @UTF8ToCP852;
end;
on ZEncoding.pas
Its on ubuntu 12.04

Posted: 20.01.2013, 15:08
by EgonHugeist
hawkeye,

hmpf now i know what's wrong ))): It seems the unit LConvEncoding of LCL misses these two functions in your current LCL version.

Three suggestions:
- Update you Lazarus
- Comment the whole case for Codepage 852
- comment the WITH_LCONVENCODING define in ZeosLazarus.inc

I hope it helps..

Edit: Is theire a way to check the LCL version? So we can handle this case...

Posted: 21.01.2013, 23:25
by hawkeye
Frankly i don't know how to check LCL version but after i tried to comment Codepage 852 i didn't find some error anymore but even after restarting lazarus i still can't find Zeos component in the pallete

Edit :
I saw on the package graph under Loaded Packages-->ZComponent 7.0.3 it used LCL 1.0.

Posted: 22.01.2013, 17:58
by EgonHugeist
hawkeye,

Open all Z* packages and compile them again. Then recompile Lazarus. That should solve the remaining issue.

Concerning the issue, i'll add a define around. It might be better to have a LCL version check to prevent a looping thread.

Posted: 22.01.2013, 23:54
by hawkeye
[SOLVED]
Finally after upgrade to Lazarus 1.0.4 manually (because ubuntu software centre provide only 0.9.30.2) and comment on Codepage 852, it solved

Thanks Egon 8)

Posted: 23.01.2013, 12:44
by EgonHugeist
hawkeye,

Thanks for confirmation. But this issue can become a never ending story, i think. So i'll add a define around to avoid such threats in future..