There are cases when dual compilation of a package does not help. And I do not understand how to solve this.
If I installed a package in Lazarus IDE and then create a project that uses this package.
In the Run menu, select Clean up and Build (For the Project).
Lazarus starts recompiling all used packages of the Project in Clean mode, including the EhLib package.
As a result, all binaries for the EhLib package are recreated.
Some files again receive an incorrect checksum and compilation leads to the same error:
DBGridEhFindDlgs.pas(30,77) Error: Can't find unit DBGridEhFindDlgs used by DBGridEh
At the same time, Lazarus IDE somehow finds these files and highlights the line in it immediately after the uses section.
As a result, any compilation of the Run-Compile, Run-Build, Run-Clean up and Build project stops working with the same error.
You have to reopen the ehlib.lpk package and do double compilation in it again.