Recent

Author Topic: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation  (Read 4902 times)

Cesare

  • New member
  • *
  • Posts: 7
Hello,

on windows 10 64 bit with lazarus 1.6.4 64 bit, after installing the sqlitelaz 0.4 or sqilte3laz packages, the IDE does not resume after re-compilation, and it is necessary to start from the old exe and unistall the packages to rebuild the IDE correctly.

Any ideas on how to solve it?

TX

HeavyUser

  • Sr. Member
  • ****
  • Posts: 397
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #1 on: May 22, 2017, 02:05:34 am »
Hello,

on windows 10 64 bit with lazarus 1.6.4 64 bit, after installing the sqlitelaz 0.4 or sqilte3laz packages, the IDE does not resume after re-compilation, and it is necessary to start from the old exe and unistall the packages to rebuild the IDE correctly.

Any ideas on how to solve it?

TX
Post the error message you get. I assume that the error has something to do with the sqlite dll the IDE can not load it or something. make sure to add a copy of the dll in the same directory as the IDE executable.

Cesare

  • New member
  • *
  • Posts: 7
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #2 on: May 22, 2017, 02:33:37 am »
The program can't start because sqlite.dll is missing from you computer. Try reinstalling the program to fix this problem.

But i have sqlite3.dll taken from the last distro (sqlite-dll-win64-x64-3180000.zip)
I think there is no 64-bit sqlite.dll library, just sqlite3.dll


Cesare

  • New member
  • *
  • Posts: 7
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #3 on: May 22, 2017, 02:45:51 am »
Ok ... i uninstalled the package sqlitelaz letting just the sqlite3laz and the IDE restarts correctly.
I'll test if it works with a sqlite3 db but I guess the issue is solved.

TX!

Thaddy

  • Hero Member
  • *****
  • Posts: 14363
  • Sensorship about opinions does not belong here.
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #4 on: May 22, 2017, 07:07:47 am »
@Cesare
I experienced the exact same issue with Laz trunk (1.9).
Imho this is a bug and should be addressed.
Even if the sqlite dll is missing there is no reason to crash the Lazarus IDE if the package itself is installed.
It does not happen with missing other database dll's.

So feel free to file a bug. I filed a bug.

Note sqlite3 can be compiled for 64 bit and there are pre-compiled versions available for Windows too.
E.g. in cygwin64 or at the website of our friends from mOrMot: http://blog.synopse.info/post/2013/03/23/Latest-version-of-sqlite3.dll-for-Windows-64-bit
In most if not all 64 bit nixes it can be installed through the package managers.
I am not sure if sqlite 2 (sqlite) is compilable for 64 bit but I suppose it can be.
« Last Edit: May 22, 2017, 07:45:18 am by Thaddy »
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

Cesare

  • New member
  • *
  • Posts: 7
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #5 on: May 22, 2017, 01:31:15 pm »
@Thaddy
At least, the result executable using these libraries should give an error message if it does not find the library in a given path, or if not present in the execution folder.

IMHO is good practice not to put or use dynamic libraries in system paths and so on to avoid the well known conflicts...

Thaddy

  • Hero Member
  • *****
  • Posts: 14363
  • Sensorship about opinions does not belong here.
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #6 on: May 22, 2017, 01:36:48 pm »
@Cesare
It is a bit different:
The absense of a dll for interface code to that dll should never affect the IDE.
I Filed the bug report along those lines. Because it is also normal practise for Laz and FPC developers to prevent such things happening.

To me it is all a bit basic, although the culprit is in this case hard to spot.... Maybe I wasn't awake yet, but it took me two hours.
Indeed, the components reference code inside the dll at design time and statically. Even if the dll is supposed to be dynamically loaded.

And that's a bug. A big one.
« Last Edit: May 22, 2017, 01:42:56 pm by Thaddy »
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

Cesare

  • New member
  • *
  • Posts: 7
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #7 on: May 22, 2017, 03:49:14 pm »
@Thaddy

Exactly the same behavior occurs when you try to enable the Connected property on any TMySQLConnection without having the libmysqld.dll or libmysqld.dll library on a system path. Provides the following error message:

Can not default MySQL library ("libmysqld.dll" or "libmysqld.dll"). Check your installation.

But this does not happen when I start IDE, but only when you set true the Connected property on the component at design time.

Both libraries (sqlite and mysql) are dynamic, but the behavior is quite different: lack of the first prevents IDE from working properly, lack of the second generates an error message but is not blocking.

Obviously, by locating the libmysql.dll library in the system folder, everything works fine, indeed .... performance on the MySQl is really great even on remote connections.

Cesare

  • New member
  • *
  • Posts: 7
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #8 on: May 22, 2017, 03:58:13 pm »
@Taddy

I mean: In the case of MySQL, the library seems to be loaded dynamically.

Thaddy

  • Hero Member
  • *****
  • Posts: 14363
  • Sensorship about opinions does not belong here.
Re: Problems with sqlitelaz 0.4 /sqlite3laz 0.4 package installation
« Reply #9 on: May 22, 2017, 07:15:26 pm »
Correct. MySQL component behaves OK. Sqlite components do not behave OK.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

 

TinyPortal © 2005-2018