Lazarus

Installation => Linux => Topic started by: Michael Collier on September 02, 2019, 12:20:10 pm

Title: cant find fpdebug - new install debian10
Post by: Michael Collier on September 02, 2019, 12:20:10 pm
I'm testing installation of lazarus on debian10 and when I rebuild IDE I get "cant find fpdebug"

Steps:

1. Install debian10
2. apt-get update
3. apt-get upgrade
4. synaptic package manager install gdb
5. synaptic package manager install lazarus
6. Open lazarus, do anything to rebuild IDE, (I tried adding indy10 and rebuilding).

Any ideas? maybe use a different install method for lazarus? can this error be fixed with current installation? I'm happy to keep re-installing, the machine is dedicated to installing debian/lazarus.

Thanks
Title: Re: cant find fpdebug - new install debian10
Post by: rvk on September 02, 2019, 12:27:15 pm
What debugger is selected under Toos > Options > Debugger.
It should be the GDB debugger.
If it is fpdebug, try changing it to GDB.
Title: Re: cant find fpdebug - new install debian10
Post by: Michael Collier on September 02, 2019, 12:41:11 pm
Thanks, checked, was/is gdb, still error
Title: Re: cant find fpdebug - new install debian10
Post by: Michael Collier on September 02, 2019, 12:44:24 pm
I opened fpdebug package and compiled it.

When I try to rebuild IDE it says it cant find virtual_treeview , so again opened virtual_tree_view package and compiled it.

When I try to rebuild IDE I get can't find OLE (something)..

Error messages are from memory so may contain typos..

Does this help?
Title: Re: cant find fpdebug - new install debian10
Post by: Martin_fr on September 02, 2019, 12:45:36 pm
I do not know which exact version "apt" does get you. Nor if it is complete.

FpDebug has been around for a long time.
Since Lazarus 1.2 it is in components/fpdebug and there should be an fdpdebug.lpk and pas, and many other files.

So check the source folder. If it is not there, then the install is incomplete.


If it is there, from the "package" menu, do "open package" and select the lpk.

Lazarus has a memory where a package was last seen. If that is pointing to the wrong place you get an error. Opening a package will update this info.

Title: Re: cant find fpdebug - new install debian10
Post by: Martin_fr on September 02, 2019, 12:48:54 pm
last reply overlapped.

Looks like your installation directory changed.

In tools options, make sure your lazarus directory is correct


I am not sure where the old locations are saved.

Probably in ~/.lazarus

Also in your source dir, under the directory packager, there is (in a further subdir) a bunch of *.lpl files. Open one of them for a package that fail, *before* you open the package by hand. It should have the correct path to the package. If not its broken
Title: Re: cant find fpdebug - new install debian10
Post by: munair on September 02, 2019, 01:32:21 pm
I get better results when installing the latest Lazarus (three packages) (https://www.lazarus-ide.org/index.php?page=downloads)
Title: Re: cant find fpdebug - new install debian10
Post by: rvk on September 02, 2019, 01:34:59 pm
I can confirm. Newly installed Debian 10 (default install, nothing else selected so no synaptic)

Quote
su root
apt-get install update
apt-get install upgrade
apt-get install gdb
apt-get install lazarus
exit
startlazarus

Choosing Tools > Build Lazarus with Profile: Normal IDE
results in
Quote
Build IDE: Exit code 2, Errors: 1, Warnings: 18, Hints: 24
fppkghelper.pas(28,31) Hint: Parameter "PackageName" not used
fppkghelper.pas(29,28) Hint: Parameter "AList" not used
fppkghelper.pas(13,3) Hint: Unit "fprepos" not used in FppkgHelper
packagesystem.pas(4295,3) Note: Local variable "FPCParser" is assigned but never used
packagesystem.pas(4298,3) Note: Local variable "ExtToolData" not used
packagesystem.pas(408,40) Hint: Parameter "ShowAbort" not used
sourcesyneditor.pas(1574,35) Warning: Symbol "FScreenCaretPainterClass" is deprecated: "need refactor"
sourcesyneditor.pas(1581,35) Warning: Symbol "FScreenCaretPainterClass" is deprecated: "need refactor"
mainintf.pas(73,42) Hint: Unit "PublishModule" not used in MainIntf
addtopackagedlg.pas(85,5) Warning: Constructor should be public
addtopackagedlg.pas(33,3) Hint: Unit "math" not used in AddToPackageDlg
addtopackagedlg.pas(43,38) Hint: Unit "IDEDefs" not used in AddToPackageDlg
addtopackagedlg.pas(44,31) Hint: Unit "ProjPackChecks" not used in AddToPackageDlg
addfpmakedependencydlg.pas(37,37) Hint: Parameter "AProjPack" not used
addfpmakedependencydlg.pas(9,19) Hint: Unit "fgl" not used in AddFPMakeDependencyDlg
watchesdlg.pp(125,58) Hint: Parameter "X" not used
watchesdlg.pp(125,61) Hint: Parameter "Y" not used
watchesdlg.pp(126,58) Hint: Parameter "X" not used
watchesdlg.pp(126,61) Hint: Parameter "Y" not used
watchesdlg.pp(127,7) Hint: Parameter "State" not used
pseudoterminaldlg.pp(132,16) Warning: Symbol "PseudoTerminal" is experimental
pseudoterminaldlg.pp(179,16) Warning: Symbol "PseudoTerminal" is experimental
pseudoterminaldlg.pp(274,18) Warning: Symbol "PseudoTerminal" is experimental
pseudoterminaldlg.pp(282,30) Warning: Symbol "PseudoTerminal" is experimental
pseudoterminaldlg.pp(500,5) Hint: Local const "bsW" is not used
pseudoterminaldlg.pp(508,5) Hint: Local const "crB" is not used
pseudoterminaldlg.pp(526,5) Hint: Local const "gsB" is not used
pseudoterminaldlg.pp(529,5) Hint: Local const "rsB" is not used
pseudoterminaldlg.pp(532,5) Hint: Local const "usB" is not used
pseudoterminaldlg.pp(664,19) Warning: Implicit string type conversion from "AnsiString" to "WideString"
pseudoterminaldlg.pp(667,72) Warning: Implicit string type conversion from "ShortString" to "UnicodeString"
pseudoterminaldlg.pp(675,13) Warning: Implicit string type conversion from "Char" to "UnicodeString"
pseudoterminaldlg.pp(684,7) Warning: Implicit string type conversion with potential data loss from "WideString" to "AnsiString"
pseudoterminaldlg.pp(685,93) Warning: Implicit string type conversion with potential data loss from "WideString" to "AnsiString"
pseudoterminaldlg.pp(760,41) Warning: Implicit string type conversion with potential data loss from "WideString" to "AnsiString"
pseudoterminaldlg.pp(762,83) Warning: Implicit string type conversion with potential data loss from "WideString" to "AnsiString"
pseudoterminaldlg.pp(765,5) Warning: Implicit string type conversion with potential data loss from "WideString" to "AnsiString"
debugmanager.pas(2488,15) Warning: Symbol "OnDbgEvent" is deprecated: "swich to EventLogHandler"
debugmanager.pas(3105,25) Warning: Symbol "PseudoTerminal" is experimental
debugmanager.pas(3178,15) Warning: Symbol "OnDbgEvent" is deprecated: "swich to EventLogHandler"
editor_keymapping_options.pas(96,13) Hint: Parameter "aShortCut" not used
project_application_options.pas(13,22) Hint: Unit "LCLStrConsts" not used in project_application_options
lazarus.pp(1,1) Fatal: Cannot find fpdebug used by Lazarus.
Title: Re: cant find fpdebug - new install debian10
Post by: munair on September 02, 2019, 02:03:27 pm
I can confirm. Newly installed Debian 10 (default install, nothing else selected so no synaptic)

Quote
su root
apt-get install update
apt-get install upgrade
apt-get install gdb
apt-get install lazarus
exit
startlazarus

I wouldn't install as root. Better give your user account super user status and install with sudo.

Debian 10 has Lazarus 2.0.0 in its repository with fpc 3.0.4. I did not install any of them. I downloaded Lazarus 2.0.2 (on Debian 9) and Lazarus 2.0.4 on Debian 10 with fpc-laz 3.0.4 and fpc-source 3.0.4. The forum may give better support if you use these latest versions.
Title: Re: cant find fpdebug - new install debian10
Post by: rvk on September 02, 2019, 02:14:16 pm
I wouldn't install as root. Better give your user account super user status and install with sudo.
I actually did. I did this under sudo -i
But in that case it is still installed as root (seeing the directories created).

Quote
Debian 10 has Lazarus 2.0.0 in its repository with fpc 3.0.4. I did not install any of them. I downloaded Lazarus 2.0.2 (on Debian 9) and Lazarus 2.0.4 on Debian 10 with fpc-laz 3.0.4 and fpc-source 3.0.4. The forum may give better support if you use these latest versions.
Yeah, that's why I still hate those packages.

My preferred method is installing trunk with my own script into my own userspace ~/dev. (/home/pi/dev on the rpi and /home/rik/dev on pc)
Recompiling Lazarus will install lot's of stuff in ~ anyway because it can't recompile itself in the correct position without root.
Quote
int: (lazarus) [CalcTargets] Lazarus directory is readonly, using fallback target directory: /home/rik/.lazarus/bin

But it seems that the standard Debian package is broken (when it comes to rebuilding Lazarus itself).
Title: Re: cant find fpdebug - new install debian10
Post by: Michael Collier on September 02, 2019, 02:40:44 pm
Thanks for help,

for anyone reading this in future..

installed debian10
I added my_username  to sudo (note the hyphen after sudo or adduser will not be found)
su -
adduser my_username sudo
(I logged out and logged in again as my_username  just in case)

installed gtk2.0.
sudo apt-get install gtk2.0.

downloaded 3 files from https://www.lazarus-ide.org/index.php?page=downloads
installed each file using:
sudo dpkg -i <path to deb file downloaded>

..edit: forgot to mention gdb
sudo apt-get install gdb

So far seems ok.. can install packages / rebuild IDE

Thanks again,
Mike
Title: Re: cant find fpdebug - new install debian10
Post by: munair on September 02, 2019, 05:02:23 pm
Hmm, was installation of gtk2.0 required for Lazarus to be able to recompile?
Title: Re: cant find fpdebug - new install debian10
Post by: rvk on September 02, 2019, 05:08:41 pm
Hmm, was installation of gtk2.0 required for Lazarus to be able to recompile?
I don't think so.
But Michael also reinstalled Lazarus from the .deb files from lazarus-ide.org itself.
That's probably the reason why it now works.

Title: Re: cant find fpdebug - new install debian10
Post by: Michael Collier on September 02, 2019, 05:22:30 pm
Hi, from memory ( I've restarted the debian machine so don't have old outputs), I needed gtk2.0. in order to install the .deb files. I believe it gave a dependency error. I only mentioned it in this thread so users are able to do a successful Lazarus install on debian10. I'm pretty sure gtk2.0. is not part of the original problem of recompiling Lazarus.

Title: Re: cant find fpdebug - new install debian10
Post by: munair on September 02, 2019, 06:13:52 pm
Just to let you know, I recently installed Debian 10, downloaded the latest Lazarus installation files from lazarus-ide.org (deb packages) and found no unusual dependency problems. However, there can be a conflict if you installed the fpc version from the repo. I found that Lazarus requires fpc-laz that comes with the latest version (as separate packages), which means that any fpc package from the repo should not be installed. Other than that I found no issues with gtk. I expect the latest Lazarus to also install without issues on Debian 9 either with Gtk or Qt based desktop.

What you may be referring to as gtk 2.0 though are the dev (development) files, but there's a whole bunch of dev files (not just gtk) that will be installed as dependencies of the Lazarus package (not fpc).
Title: Re: cant find fpdebug - new install debian10
Post by: Michael Collier on September 02, 2019, 06:31:04 pm
Just to let you know, I recently installed Debian 10, downloaded the latest Lazarus installation files from lazarus-ide.org (deb packages) and found no unusual dependency problems.

I installed the deb files in this order using dpkg -i
1) fpc-src_3.0.4-2_amd64.deb
2) fpc-laz_3.0.4-1_amd64.deb
3) lazarus-project_2.0.4-0_amd64.deb

Step 3 gave what I (thought) was dependency errors, do you not get any messages about gtk, or packages being held back?
sorry I don't have a copy of the original output (I should have saved it)..


Title: Re: cant find fpdebug - new install debian10
Post by: munair on September 02, 2019, 07:54:10 pm
I did get a list of additional packages that need to be installed to satisfy the dependencies of lazarus-project_2.0.4-0_amd64.deb. But as I said, these are mostly development (dev) packages. I did not get any message about packages being held back.
Title: Re: cant find fpdebug - new install debian10
Post by: pik33 on May 27, 2020, 12:05:53 pm
Up!

The same problem in Raspbian

So I can't get a .deb files.

The only workaround in Raspbian is: recompile Lazarus from the source

The Lazarus, when installed using apt-get works OK until you need a new package. Then when rebuid I have this "cannot find fpdebug" and so on.
Title: Re: cant find fpdebug - new install debian10
Post by: lazac on June 18, 2020, 10:15:40 pm
I had same the same problem in more Debian installations.

I tryed some reinstallations, but all failed. Finally I could fix it by executing "make" (as root), in "/usr/lib/lazarus/2.0.0/components" directory.  This command recompiled all factory packages, including "fpdebug". Rebuilding only "fpdebug" was not enough.
After it, I was able to rebuild the IDE from both root and user accounts. I used command line rebuilding method ("lazbuild --build-ide="), but probably the IDE-started rebuild could also works after this fix.
Title: Re: cant find fpdebug - new install debian10
Post by: Martin_fr on July 16, 2020, 04:21:19 pm
The error happens when compiling the final Lazarus executable.

I can think of 2 issues.

1) The ppu files for fpdebug are not in there place (that would be fixed by compiling the package)
2) The path to the ppu files is not known/included at the time the lazarus exe is build.

About 2:
The path to any package sources, is only known when the package is build.
After that, any package (or the project) that is build, will only get the path to the ppu files. The collective pathes to all the ppu files are derived from the list of installed packages.
So if the error is due to 2, maybe install the package vie the package menu.

More details may depend on how you build
a) via the menu Tools > Build Lazarus
b) makefiles

In case (a) any action you do (like installing a package) should have immediate effect. The IDE will update all its build info right away.
In case (b) the makefiles need to be rebuild, so they contain additional search paths.
Title: Re: cant find fpdebug - new install debian10
Post by: Martin_fr on July 16, 2020, 04:21:39 pm
See also:
Re: Build IDE : Exit code 2, Errors :1
https://forum.lazarus.freepascal.org/index.php/topic,50611.msg369845.html#msg369845 (https://forum.lazarus.freepascal.org/index.php/topic,50611.msg369845.html#msg369845)
1) Is there a folder components/fpdepug in your Lazarus install dir?

2) Have you opened the FpDebug package from inside the IDE (package menu) ?

3) Try to install the FpDebug package. (package menu > Install package)

You may then get the same error for LazDebuggerFp.

-------
Note, that since you are not on Intel FpDebug will not help you much.
If you get compilation errors in FpDebug (please report them), you can try to uninstall all of the following packages:
FpDebug
LazDebuggerFp
LazDebuggerFpLLDB (might not be installed)
LazDebuggerFpGdbmi (might not be installed)
LeakView
maybe others....


Uninstalling LeakView means you loose some functionality, if you want to work with the traces printed by heaptrc (mem leak finder).
Title: Re: cant find fpdebug - new install debian10
Post by: MaartenJB on March 31, 2021, 10:08:33 am
I had same the same problem in more Debian installations.

I tryed some reinstallations, but all failed. Finally I could fix it by executing "make" (as root), in "/usr/lib/lazarus/2.0.0/components" directory.  This command recompiled all factory packages, including "fpdebug". Rebuilding only "fpdebug" was not enough.
After it, I was able to rebuild the IDE from both root and user accounts. I used command line rebuilding method ("lazbuild --build-ide="), but probably the IDE-started rebuild could also works after this fix.

Thank you.

This is still necessary when installing lazarus on the latest version debian, and just use "apt install lazarus". So out of the box it doesn't work...

Title: Re: cant find fpdebug - new install debian10
Post by: Martin_fr on March 31, 2021, 02:43:27 pm
Afaik "apt install lazarus" installs from the linux distro repository.

That repository is maintained by the makers of the distro (Debian in your case). We (the Lazarus team) have no influence on that.
Our installers can be found on the Sourceforce page, linked on the left menu of this forum.

If you update, Lazarus keeps your config. But your Lazarus executable is replaced by the latest version.
Since installed packages are compiled into that executable, and since we cant know who has which package installed, the new executable does not contain any packages, and therefore must be rebuild once. I am not in charge of the Linux installer, but afaik this rebuild is left to the user.

I have no idea why you need the rebuild in "components". This should be included in the Makefile in the main directory.
You should also be able to go to menu "Tools > Build Lazarus" instead.


Again I am not the expert on Linux. But given that there appear to be wrong ppu files.....

On linux, rebuilding the IDE (as NONE root user) creates a shadow copy in your home folder ~/.lazarus
This is where the ppu should go.
This is where the ppu of your previous builds are.
And this is where your config is.
If you rebuild as root, I do not know if all that is found (since root has its own home dir).
Title: Re: cant find fpdebug - new install debian10
Post by: donagin on May 26, 2021, 02:39:31 am
I had same the same problem in more Debian installations.

I tryed some reinstallations, but all failed. Finally I could fix it by executing "make" (as root), in "/usr/lib/lazarus/2.0.0/components" directory.  This command recompiled all factory packages, including "fpdebug". Rebuilding only "fpdebug" was not enough.
After it, I was able to rebuild the IDE from both root and user accounts. I used command line rebuilding method ("lazbuild --build-ide="), but probably the IDE-started rebuild could also works after this fix.

I had the same issue on a fresh apt-get install on a Raspberry Pi 4, and the above cleared it up nicely.

-Don
Title: Re: cant find fpdebug - new install debian10
Post by: Martin_fr on May 26, 2021, 03:27:16 am
Please report on mantis.

I only have an svn version (build from sources) on Linux. And that compile fine, with fpdebug, when build from the IDE.

--
All I could see from the makefiles is, that fpdebug is only included in BIGIDE, but not in just IDE.

But Makefile or not. when building from inside the IDE, the packagesystem should take care.
TinyPortal © 2005-2018