I am trying to run Lazarus under Ubuntu 18.04 on a laptop with 8gb and a 200Mb partition on a 500Mb hard drive shared with Win7.
I am writing a database application using MySQL. The database has 11 tables, 4 of which have some data present already. I am trying to view and edit this data using a TDBEdit component with a TDBNavigator, with a TDBMySQL57Connection, a TSQLQuery, a TDataset and a TTransaction, all properly connected. The SQL statement in the TSQLQuery is "select * from Garments".
When I show the form with this stuff on it, the 23 records in Garments appear in the TDBGrid. Excellent!
If I click on the grid, or use the arrows to move the cursor on the TDBNavigator, the program gives me this error: Project chios raised exception class 'External: SIGSEGV'.
The Assembler window opens up with this in it:
0000000000790BFE 0000 add %al,(%rax)
DB$_$TDATASET_$__$$_CHECKACTIVE
0000000000790C00 488d6424f8 lea -0x8(%rsp),%rsp
0000000000790C05 4889f8 mov %rdi,%rax
0000000000790C08 4889c7 mov %rax,%rdi
0000000000790C0B e8101b0000 callq 0x792720 <DB$_$TDATASET_$__$$_GETACTIVE$$BOOLEAN>
0000000000790C10 84c0 test %al,%al
The bold text is the line at which the error occurs.
I run the program without debugging: same thing.
I run the program outside the IDE, and instead of the error message, the forms just silently disappear leaving no trace.
I have looked up this error in this forum, and so far the most useful suggestion from 2009 is - go for .net or java. I don't like either, but I do know they work.
So, what to do?