Recent

Author Topic: Cannot install TAChart* packages on Laz 1.8.4 and FPC 3.2.0+fixes  (Read 1616 times)

att2

  • New Member
  • *
  • Posts: 49
Hello,
My system so far: Linux Mint 19/64 bit, Lazarus 1.8.4 "stable" plus FPC 3.2.0 "fixes" installed with FPCUPDeluxe 1.6.1n.
Cross-compile for ARM (RasPI3) is enabled thanks to FpcUpDeluxe.
I want to install the standard TaChart* packages, but I get an error:

Quote
Hint: (lazarus) TMainIDE.DoRestart
WARNING: TMenuItem.Destroy with LCLRefCount>0. Hint: Maybe the component is processing an event?
WARNING: TToolBar.Destroy with LCLRefCount>0. Hint: Maybe the component is processing an event?
Adding "--primary-config-path=/home/arm1/fpc2/config_lazarus" as a parameter
Adding "--pcp=/home/arm1/fpc2/config_lazarus" as a parameter
 is a file
Hint: (lazarus) CmdLine=[/home/arm1/fpc2/lazarus/startlazarus --lazarus-pid=12412 --primary-config-path=/home/arm1/fpc2/config_lazarus --pcp=/home/arm1/fpc2/config_lazarus]
TApplication.HandleException Access violation
  Stack trace:
  $0000000000000000
  $0000000000601E26  SETTHOUSANDS,  line 576 of include/customupdown.inc
  $0000000000601DA6  SETALIGNBUTTON,  line 563 of include/customupdown.inc
  $00000000005935C8  GETANCHORSIDE,  line 2075 of include/control.inc
  $0000000000593A59  WNDPROC,  line 2233 of include/control.inc
using config file /home/arm1/fpc2/lazarus/lazarus.cfg
Adding "--primary-config-path=/home/arm1/fpc2/config_lazarus" as a parameter
Adding "--primary-config-path=/home/arm1/fpc2/config_lazarus" as a parameter
Adding "--pcp=/home/arm1/fpc2/config_lazarus" as a parameter
 is a file
SetPrimaryConfigPath NewValue="/home/arm1/fpc2/config_lazarus" -> "/home/arm1/fpc2/config_lazarus"
  $00000000004324FA
  $0000000000591BF6  DOCONSTRAINEDRESIZE,  line 1412 of include/control.inc
  $000000000058504A  FINDNEXTCONTROL,  line 4537 of include/wincontrol.inc
  $00000000005865B9  GETCONTROLATPOS,  line 5133 of include/wincontrol.inc
  $000000000073C072  EXECUTE,  line 808 of extdlgs.pas
  $0000000000649650 line 3597 of gtk2/gtk2proc.inc
  $0000000000657870 line 2038 of gtk2/gtk2callback.inc
  $0000000000656FA8  GTKMOTIONNOTIFY,  line 1641 of gtk2/gtk2callback.inc
  $00007F8C3C6F638B
Exception at 0000000000000000: EAccessViolation:
Access violation.
TApplication.HandleException Access violation
  Stack trace:
  $0000000000432408
  $00007F8C3C6F638B
Exception at 0000000000432408: EAccessViolation:
Access violation.
LAZARUS END - cleaning up ...
[FORMS.PP] ExceptionOccurred
  Sender=EAccessViolation
  Exception=Access violation
  Stack trace:
  $00007F8C3C392110
TApplication.HandleException Access violation
  Stack trace:
  $00007F8C3C392110
Exception at 00007F8C3C392110: EAccessViolation:
Access violation.

How do I get the TaChart* packages to work? Plz heeeelp.....    %)

att2

  • New Member
  • *
  • Posts: 49
Re: Cannot install TAChart* packages on Laz 1.8.4 and FPC 3.2.0+fixes
« Reply #1 on: October 08, 2018, 11:42:21 am »
Well, I managed to install the TaChart* components. It seems it is required to install them in a specific order:

1.) TaChartBGRA
2.) TaChartPrint
3.) TaChartLazarusPkg
4.) TaChartFPVectoral

... then it works (mysteriously). Addendum: TaChartWMF 0.0 doesn't want to install on Linux, but I suppose that's correct behaviour.

wp

  • Hero Member
  • *****
  • Posts: 7529
Re: Cannot install TAChart* packages on Laz 1.8.4 and FPC 3.2.0+fixes
« Reply #2 on: October 08, 2018, 11:57:27 am »
Looks strange...

TAChartLazarusPkg is the basic package, it must be compiled and installed first. The others are addons because they depend on  other packages which must be known to the IDE. Except for that, they can be installed in any order.

My recommendation
  • Compile and install TAChartLazarusPkg
  • Compile and install Printer4Lazarus, then TAChartPrint. If you don't use the printer dialogs at designtime it is not necessary to install Printer4Lazarus, then you only have to compile it. TAChartPrint is needed for good printer output.
  • Compile FPVectorial (no need to install), then compile and install TAChartFPVectorial. Only needed if you want to write to svg or cross-platform wmf files. Did not test the .odt and .docx writers, so far.
  • Compile BGRABitmapPack (no need to install), then compile and install TAChartBGRA. Only needed if you want antialiased lines and better rendering quality. But: chart tools are not working like with the native canvas drawer
It is not required to rebuild the IDE after every "install", doing it once at the end is enough.

It is written somewhere that TAChartWMF is a Windows-only package because it relies on Windows routines; therefore, it does not work on Linux. If you want to create a WMF file of your chart in Linux you could also use the FPVectorial package which has a platform-independent WMF writer as well (it does not support all WMF features, though, but IIRC all that is needed by TAChart).

Do you really use all these packages? I'd recommend to install only those packages which you really use.
« Last Edit: October 08, 2018, 12:16:37 pm by wp »
Mainly Lazarus trunk / fpc 3.2.0 / all 32-bit on Win-10, but many more...

 

TinyPortal © 2005-2018