Forum > Databases
sqlitelaz.lpk linking error
TRon:
--- Quote from: Aruna on July 11, 2024, 04:11:37 pm ---It has been a while since I last visited the forum and apologies about the quoting :-) and yes all your answers so far have been correct :D
I just wanted to give you as much information as I can to help resolve this :P
--- End quote ---
That is why I applauded the information you posted. All is good :)
--- Quote from: Aruna on July 11, 2024, 04:45:55 am ---never used the command line compiler. Guess now is the time to start :D
--- End quote ---
A little tradesecret: If you use Lazarus to build and compile projects then you use the commandline compiler (though indirectly and under the hood, but still ;) ).
--- Quote ---I used Projects-->Project Options and plugged in the path there under compiler options. I have attached a screenshot. Still getting the error :-(
--- End quote ---
That is an interesting approach and one I did not used myself.
Are you sure you do not need a version directory appended to that path as per my setup example (12, most likely 11 for your specific version of debian) ? (not all debian based distros install it in a similar manner so it might indeed be different for you but it has been a long time I saw libs installed in a path without a version number explicitly mentioned)
BTW from what I am able to tell you seem to explicitly use unit sqlite ? If that is the case and you have no apparent reason for doing so then use unit sqlite3 instead.
If all else fails, try to add the option -k--verbose to the compiler options as it shows all the paths that the linker is using to attempt to locate the library. If you look a the the output log with Lazarus then make sure to copy /all/ the messages out of the message window (and paste them in to a text editor or similar) as many messages are filtered by default.
TRon:
--- Quote from: TRon on July 12, 2024, 05:01:10 am ---BTW from what I am able to tell you seem to explicitly use unit sqlite ? If that is the case and you have no apparent reason for doing so then use unit sqlite3 instead.
--- End quote ---
Ok, I now tried to install the same Lazarus package and ran into the exact same issue. Me thinks an oversight.
This requires further investigation e.g. meaning not your fault or related to your setup.
edit: try to install package sqlite3laz instead.
Which version (please be exact) of the Lazarus IDE do you use ?
Thaddy:
It has nothing to do with lazarus itself, it is the package that is broken or easily broken for many years. For sqlite, plz use sqldb and the sqlite3 connector, that is way more stable and totally different code. I know how to fix the problem: it is a design time load and versioning problem. The best way out is to use static linking, but that is uncomfortable for most. The other way out is to try and merge the sqlite3 code for sqldb into the old sqlitedb code.
Again: sqlitedb is broken for years and most would even say deprecated. You really have to know what you are doing to get it working. It is not very comfortable to use, because of various design issues.
But if you want to use sqlite 2 it is still the only option, since there is no sqldb connector for sqlite 2. (sqlite 2 is much lighter at less than 100k)
BTW if you use it from code, so no design time component, the issue magically disappears..in most cases. Be aware of that.
This old package is written with too many assumptions by the author. It is those assumptions that breaks it for many.
TRon:
Ah you revised your answer Thaddy as I was going to mention that the 'old' package still exist only for using the sqlite before v3.
At this pojnt I am inclined to agree with the deprecated remark as Debian itself does not seem to support libsqlite < 3 out of the box.
I simply overlooked so this issue took longer than necessary for which my apologies.
Thaddy:
Yes, I had to add to my answer, because I was testing and remembered all kinds of horror stories.... :o sorry that I was editting and caused a posts crossed..
Navigation
[0] Message Index
[#] Next page
[*] Previous page