[erledigt] unklare Fehlermeldung beim Linken mit Lazarus 3.2

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

[erledigt] unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

Hallo, ich habe mir in einem Linux LMDE6/32 die Lazarus 3.2 Quellen vom SourceForge installiert,
eines meiner Projekte geöffnet und erhalte beim Umwandeln folgende Fehlermeldungen

Code: Alles auswählen

Projekt kompilieren, Ziel: /home/bernd/lazarus/Zitate2DB_v207/Zitate2DB: Exit code 1, Fehler: 2, Warnungen: 2
Warning: linker: /usr/bin/ld: /usr/lib/fpc/3.2.2/units/i386-linux/rtl/si_c21.o: in function `SI_C21_$$__FPC_LIBC21_START':
Error: si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x27): undefined reference to `__libc_csu_fini'
Warning: linker: /usr/bin/ld: si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x2c): undefined reference to `__libc_csu_init'
Error: Error while linking
Kann mir jemand bitte sagen, wie ich das beseitigen kann? Einfaches Neu-Compilieren der IDE hat leider nicht geholfen,
Zuletzt geändert von alfware17 am Mo 4. Mär 2024, 10:01, insgesamt 1-mal geändert.


alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

Danke für den Link, nur leider bin ich etwas ratlos... Was mache ich denn mit dem Patch? Wenn ich drauf klicke, öffnet sich ein Textfile. Aus der Windows-Welt kenne ich Patches als ausführbar, meine Linux-Kenntnisse sind überschaubar.

ChatGPT sagt mir es gäbe ein patch Kommando dem ich dieses Textfile anbiete per <
Soweit so gut. Aber dann soll ich FPC selbst recompilieren. Gibt es da eine Anleitung dazu? Ich habe aus den SourceForge Quellen nur das fpc_src... File installiert (also die 3 Installationen bei Lazarus). Was braucht man noch?

Benutzeravatar
theo
Beiträge: 10499
Registriert: Mo 11. Sep 2006, 19:01

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von theo »

Welcher Patch?
Installiere halt mit fpcupdeluxe FPC 3.3.1 oder trunk.
Das geht wohl am einfachsten.

alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

Vielleicht für dich am einfachsten...
Ich kenne das fpcdeluxe leider nicht und weiß auch nach Ansicht von
https://wiki.freepascal.org/fpcupdeluxe/de nicht so recht, was ich davon halten soll bzw was ich machen muß,
um es zu installieren, geschweige denn wie ich es nachher bediene und meinem Lazarus 3.2 beibringe was es zu nehmen hat.

Da installiere ich doch einen Haufen Software neu und es kann für mich als Anfänger jede Menge schief gehen und ich mache mir
noch mehr Probleme als ich schon hatte?

Also Ausgangslage war; LMDE6/32 funktioniert genau so lange, bis man Lazarus 3.0 installiert, Ursache für mich unbekannt, Cinnamon geht kaputt.
Egal ob jetzt sudo apt install lazarus oder Installation aus den SourceForge Quellen.

Lazarus 3.2 ging gestern gut Cinnamon lebt noch, nur daß der Link-Fehler beim Compile kommt.

Wenn ich jetzt wieder neue Software hinzufüge, ist die Chance groß, daß wieder was nicht paßt.
Nichts gegen Debian oder LMDE, aber als Anfänger stehe ich da hilflos wenn irgendeine Paketabstimmung nicht hinhaut.

Daher fand ich deinen Link zum englischen Forum ganz gut und verstanden habe ich es auch, nur daß ich nicht weiß wie man den FPC patcht.
Die geben da folgenden Link an;
http://launchpadlibrarian.net/554509278 ... u2.diff.gz

Benutzeravatar
six1
Beiträge: 788
Registriert: Do 1. Jul 2010, 19:01

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von six1 »

also in kurzen Worten:
fpcupdeluxe für dein Betriebssystem in 32Bit runterladen.
https://github.com/LongDirtyAnimAlf/fpc ... ag/v2.4.0c
Die Datei in ein eigenes Verzeichnis kopieren, ausführbar machen und starten.
Oben im Fenster ein Zielverzeichnis für deine Lazarus Installation angeben (Installationsverzeichnis angeben)
unten drunter links Seite im Fenster FPC Version und LAZ Version auswählen und
"FPC & Lazarus installieren" anklicken
warten...
fertig...
Dateianhänge
Image1.jpg
Image1.jpg (40.01 KiB) 5100 mal betrachtet
Gruß, Michael

Benutzeravatar
theo
Beiträge: 10499
Registriert: Mo 11. Sep 2006, 19:01

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von theo »

@six1: Fast! :wink:
Er soll dann eben nicht das von dir markierte FPC 3.2.2 installieren, denn das hat er ja schon und deshalb machen wir den Zirkus ja.
Er soll 3.3.1 oder trunk nehmen.
six1 hat geschrieben:
Do 29. Feb 2024, 12:15
fpcupdeluxe für dein Betriebssystem in 32Bit runterladen.
Das wäre dann in seinem Fall fpcupdeluxe-i386-linux

Sonst bin ich einverstanden! :lol:

alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

Habe jetzt meinen FPC 3.3.1 - aber wie rufe ich den auf?
FPC deluxe schlug vor, den im home-Verzeichnis anzusiedeln was ich auch gemacht habe.
Aber weder auf der Kommandozeile noch im Lazarus bekomme ich den "eingebaut".
Wo muß ich die Konfiguration ändern?

Nebenbemerkungen: fpcdeluxe lief bei mir im Windows (versuchsweise) 2 Stunden im Kreis mit 80% Prozessor und Speicher Nutzung, dann hatte ich keine Lust mehr.
Ich glaube er hat irgendwas mit SSL nicht geschafft.
Im Linux fehlte bei mir noch GIT - hat auch eine Weile gedauert bis ich das interpretieren konnte

In einer meiner LMDE (Mate) in der Virtualbox habe ich gesehen, daß FPC 3.2.2 in einer neueren Version vom 4.1.24 läuft und sogar Lazarus. Wenn ich es recht erinnere,
hatte ich das über sudo apt install lazarus geschafft. Leider kriege ich den Lazarus 3.0 weder deinstalliert noch upgedatet mit 3.2 - schade.
Warum stellen sie bei SourceFourge nicht mal eine deb ein ohne diesen Link-Fehler, das würde einiges vereinfachen.

Benutzeravatar
theo
Beiträge: 10499
Registriert: Mo 11. Sep 2006, 19:01

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von theo »

alfware17 hat geschrieben:
Do 29. Feb 2024, 21:55
Habe jetzt meinen FPC 3.3.1 - aber wie rufe ich den auf?
FPC deluxe schlug vor, den im home-Verzeichnis anzusiedeln was ich auch gemacht habe.
Aber weder auf der Kommandozeile noch im Lazarus bekomme ich den "eingebaut".
Wo muß ich die Konfiguration ändern?
Idealerweise installierst du Lazarus auch mit fpcupdeluxe im gleichen Verzeichnis, es wird dann ein Start Script im Home erzeugt und dann passt alles zusammen.
Du kannst auch andere Kombinationen von FPC und Laz in anderen Ordnern damit installieren und die treten sich gegenseitig nicht auf die Füsse.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6216
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von af0815 »

alfware17 hat geschrieben:
Do 29. Feb 2024, 21:55
hatte ich das über sudo apt install lazarus geschafft. Leider kriege ich den Lazarus 3.0 weder deinstalliert noch upgedatet mit 3.2 - schade.
Warum stellen sie bei SourceFourge nicht mal eine deb ein ohne diesen Link-Fehler, das würde einiges vereinfachen.
Weil das ganz einfach ein komplexes Problem ist und deswegen erst in der Entwicklerversion gefixt ist. Nur Entwicklerversionen werden von der Paketverwaltung nicht unbedingt als Basis genommen.

Zu deinem aktuellen Problem - normalerweise erzeugt fpcupdeluxe einen Link zu Lazarus, den man verwenden MUSS. Der Link ist keine Hexerei, es wird zum normalen Start einfach die option -pcp=PfadZurNeuenConfig angefügt. Auf manchen System funktioniert halt die automatische Erstellung des Links nicht. (Hier zum Beispiel aufgrund der Richtlinien im Unternehmen) Dann muss man den händisch erzeugen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

af0815 hat geschrieben:
Fr 1. Mär 2024, 07:21
alfware17 hat geschrieben:
Do 29. Feb 2024, 21:55
hatte ich das über sudo apt install lazarus geschafft. Leider kriege ich den Lazarus 3.0 weder deinstalliert noch upgedatet mit 3.2 - schade.
Warum stellen sie bei SourceFourge nicht mal eine deb ein ohne diesen Link-Fehler, das würde einiges vereinfachen.
Weil das ganz einfach ein komplexes Problem ist und deswegen erst in der Entwicklerversion gefixt ist. Nur Entwicklerversionen werden von der Paketverwaltung nicht unbedingt als Basis genommen.

Zu deinem aktuellen Problem - normalerweise erzeugt fpcupdeluxe einen Link zu Lazarus, den man verwenden MUSS. Der Link ist keine Hexerei, es wird zum normalen Start einfach die option -pcp=PfadZurNeuenConfig angefügt. Auf manchen System funktioniert halt die automatische Erstellung des Links nicht. (Hier zum Beispiel aufgrund der Richtlinien im Unternehmen) Dann muss man den händisch erzeugen.
Vielleicht haben wir uns falsch verstanden, ich meinte warum man auch bei SourceForge als Basis für Lazarus 3.0 und 3.2 nur den FPC Stand 9.7.21 anbietet, wo doch bereits ein Fix des kleinen Problemchens mit dem Link (Verzeichnis? Modul?) existiert zB von 25.01.24. Wenn ich es recht sehe, verhindert das sogar bei FPC Deluxe daß man FPC 3.2 "bauen" kann, weil der Fehler mit dem Link da auch kommt. Das könnte man doch verhindern.
Aber ich bin nur ein Hobby-Programmierer und lerne immer neu dazu, Das Spannende für mich war hier die ganze Aufteilung mit dem trunk, stable, fixed und den Releases usw, also den ganzen Zweigen der Entwicklung. Ich hoffe das ich es nun verstanden habe und umso mehr Hochachtung für die, die das am Laufen halten. Mit der Einschränkung aus meinem ersten Absatz? Wobei ich zugebe, der Fehler tritt nur bei 32bit auf und das machen wohl nicht mehr so viel.

Den FPC 3.3.1 habe ich trotz aller Bemühen nicht in meinen Lazarus in der Unglücks-Installation einbauen können. Egal, ich bin noch einen Schritt zurück gegangen und habe nun mit FPC deluxe Lazarus 3.0 fixes und FPC 3.2 fixes genommen - da zeigt er mir zwar Lazarus 3.3 an aber so wichtig ist das für mich nun auch wieder nicht. Was ich sehen wollte, habe ich gesehen - ich kann bei meiner "stabilen" LTS 2.2.6 bleiben, die habe ich für Linux 32 und 64bit und gut ist. Ich nutze eh fast nur Windows.

alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

Ich weiß das gehört nicht hier her, aber da es "mein" Thread ist... FPC deluxe habe ich jetzt auch "entdeckt" - vielen Dank. Meinen Fehler im Windows habe ich zwar nicht gefunden (warum der 2 Stunden mit 80% Ressourcen im Kreis lief), ich nehme aber an es hatte was mit SSL und meinem Win 7 zu tun. Unter Win 10 konnte ich mir die für mich interessanten Kombinationen (Laz 3.2 mit FPC 3.22 und Laz 3.99 mit FPC 3.3.1 jeweils 32/64bit) bauen und dann habe ich mir die FPC adoptiert und Lazraus mit den Virtualboxes weggeworfen.
Ein kurzer Test ergab, meine Batch-Programme werden nicht schneller nur die EXEn leicht größer und alles läuft noch in der Zukunft :-)

Die zwei anderen Threads hier zum "Lazarus to go" haben mich inspiriert, das auch mal zu versuchen - mein Ansatz wäre hier Installieren auf einen symbolischen Ordner (mir schwebt da sowas wie H:\alfware\lazarus oder gar B:\ vor) und dann mal mit MKLINK was versuchen, also diesen Ordner symbolisch überall ermöglichen, zu Hause, in der Firma usw es sollte natürlich ein Ordner sein der so in der Firma auch existiert)

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6216
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von af0815 »

alfware17 hat geschrieben:
Mo 4. Mär 2024, 09:51
Den FPC 3.3.1 habe ich trotz aller Bemühen nicht in meinen Lazarus in der Unglücks-Installation einbauen können. Egal, ich bin noch einen Schritt zurück gegangen und habe nun mit FPC deluxe Lazarus 3.0 fixes und FPC 3.2 fixes genommen - da zeigt er mir zwar Lazarus 3.3 an aber so wichtig ist das für mich nun auch wieder nicht. Was ich sehen wollte, habe ich gesehen - ich kann bei meiner "stabilen" LTS 2.2.6 bleiben, die habe ich für Linux 32 und 64bit und gut ist. Ich nutze eh fast nur Windows.
Wenn ich so etwas lese, dann ist mit den Installtionversuchen etwas vergurkt.

Grundlegend kann man eine Installation die mit FPCUpDeluxe gemacht wurde, recht einfach entfernen - Link am Desktop löschen und dann das komplette Installationsverzeichnis einfach löschen. Damit ist die Installation weg. Wenn nicht, so sind noch Reste von anderen Versuchen über, die muss man dann mit derselben Methode deinstallieren wie man installiert hat (zB. über aptitude oder apt oder ....).

Hängende installationen rächen sich früher oder später - meist wenn man es überhaupt nicht brauchen kann :-)
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

alfware17
Beiträge: 134
Registriert: Di 14. Dez 2010, 23:27

Re: unklare Fehlermeldung beim Linken mit Lazarus 3.2

Beitrag von alfware17 »

af0815 hat geschrieben:
Mo 4. Mär 2024, 11:34
alfware17 hat geschrieben:
Mo 4. Mär 2024, 09:51
Den FPC 3.3.1 habe ich trotz aller Bemühen nicht in meinen Lazarus in der Unglücks-Installation einbauen können. Egal, ich bin noch einen Schritt zurück gegangen und habe nun mit FPC deluxe Lazarus 3.0 fixes und FPC 3.2 fixes genommen - da zeigt er mir zwar Lazarus 3.3 an aber so wichtig ist das für mich nun auch wieder nicht. Was ich sehen wollte, habe ich gesehen - ich kann bei meiner "stabilen" LTS 2.2.6 bleiben, die habe ich für Linux 32 und 64bit und gut ist. Ich nutze eh fast nur Windows.
Wenn ich so etwas lese, dann ist mit den Installtionversuchen etwas vergurkt.

Grundlegend kann man eine Installation die mit FPCUpDeluxe gemacht wurde, recht einfach entfernen - Link am Desktop löschen und dann das komplette Installationsverzeichnis einfach löschen. Damit ist die Installation weg. Wenn nicht, so sind noch Reste von anderen Versuchen über, die muss man dann mit derselben Methode deinstallieren wie man installiert hat (zB. über aptitude oder apt oder ....).

Hängende installationen rächen sich früher oder später - meist wenn man es überhaupt nicht brauchen kann :-)
Mein urspüngliche(n) Installation(en) waren Lazarus 3.2 mit FPC3.22 - entweder aus den SourceForge Quellen oder auch aus der Anwendungeverwaltung. Der FPC compiliert nicht unter 32bit. Ich habe versucht dann den durch FPCdeluxe erstellten FPC3.31 dafür einzustellen - ok vielleicht stelle ich mich in Linux zu glatt dazu an. Ich konnte ihn weder auf dem Terminal aufrufen, lokalisieren noch hat Lazarus ihn benutzt wenn ich ihn über Einstellungen angeboten habe.
Daß die Kombination Laz/FPC erstellt durch FPC deluxe zusammen geht und daß man den komplettem Ordner einfach löschen kann, hatte ich mir gedacht bzw gehofft. Nur war meine Ausgangslage ja anders...

Mit dem spröden LMDE will ich dich nicht mehr langweilen. Ich fand es jedoch unmöglich, daß so ziemlich jede Installation oder Deinstallation von Komponenten von Lazarus anscheinend Cinnamon oder wahlweise gleich das ganze Linux runter riss. Es ist schön wenn FPCdeluxe so ziemlich sandbox-mäßig macht, aber wenn man es nicht hat oder weiß und einfach arglos auf Lazarus in der Anwendungsverwaltung klickt....
Danke für die Einsichten

Antworten