Sehr merkwürdiges Fehlverhalten!

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 587
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 4.1 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
Kontaktdaten:

Sehr merkwürdiges Fehlverhalten!

Beitrag von Niesi »

Da habe ich mal was ganz und gar interessantes: Groß- und Kleinschreibung der Unitnames unter "uses".

Mein derzeitiges Projekt, erstmals Vorgestern mit Lazarus 4.1 / Fpc 3.2.2 compiled. Klappte anstandslos.

Heute Morgen jedoch:
Auswahl_001.png
Auswahl_001.png (114.3 KiB) 2075 mal betrachtet
Auswahl_002.png
Auswahl_002.png (119.83 KiB) 2075 mal betrachtet
Auswahl_003.png
Auswahl_003.png (72.34 KiB) 2075 mal betrachtet


Tja, und nun weiß ich auch nicht so Recht weiter. Ich werde heute mal eine Fehlermeldung absetzen, oder was meint Ihr?
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6786
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: Sehr merkwürdiges Fehlverhalten!

Beitrag von af0815 »

Mach Mal ein Clean Compile zwischen den Versuchen. Ob es dann weg ist.

Komisch ist für mich, das eine Datei aus der LCL versucht wird, nochmals zu kompilieren, weil sich eine Checksum geändert hat. Das hätte ich hier nicht erwartet.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
Zvoni
Beiträge: 376
Registriert: Fr 5. Jul 2024, 08:26
OS, Lazarus, FPC: Windoof 10 Pro (Laz 2.2.2 FPC 3.2.2)
CPU-Target: 32Bit
Wohnort: BW

Re: Sehr merkwürdiges Fehlverhalten!

Beitrag von Zvoni »

Dir ist bewusst, dass auf Linux/Unix (was ich von deinen Pfadnamen ableite)
"mystrings.pas" <> "MyStrings.pas" ist?
Da die Dateinamen im FS auf Linux/Unix CaseSensitive sind.
Ist so ziemlich das einzige was ich sehe.

Sieht nach ner Einstellung in der IDE aus, ob Unitnamen im Uses "as is" interpretiert (und dann auch auf HD gesucht) werden sollen.
Wobei ich eher darauf tippe, dass du die Unit tatsächlich mal wirklich mit Gross-/Kleinschreibung gespeichert hast
Ein System sie alle zu knechten, ein Code sie alle zu finden,
Eine IDE sie ins Dunkel zu treiben, und an das Framework ewig zu binden,
Im Lande Redmond, wo die Windows drohn.

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 587
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 4.1 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
Kontaktdaten:

Re: Sehr merkwürdiges Fehlverhalten!

Beitrag von Niesi »

af0815 hat geschrieben: Do 8. Mai 2025, 09:08 Mach Mal ein Clean Compile zwischen den Versuchen. Ob es dann weg ist.

Komisch ist für mich, das eine Datei aus der LCL versucht wird, nochmals zu kompilieren, weil sich eine Checksum geändert hat. Das hätte ich hier nicht erwartet.
Das hat erst einmal geholfen, Dankeschön.

Allerdings habe ich jetzt eine weitere Merkwürdigkeit: Wenn die Unit "MyStrings.pas" im Project Inspector aufgelistet ist, dann stört die Groß-Kleinschreibung. Habe ich die Unit nicht in der Liste, dann ist es egal.

Unverständlich ist mir auch, warum dieselbe Unit mit derselben Schreibweise in einer anderen Unit klaglos aufgerufen werden kann, nur in der Main-Unit tritt die FEhlermeldung auf. Andere Units (z. B. MyMath.pas) machen keinerlei Probleme ...

Ich will mal sehen, ob ich am Abend Zeit finde, ein Beispiel zu erstellen.
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 587
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 4.1 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
Kontaktdaten:

Re: Sehr merkwürdiges Fehlverhalten!

Beitrag von Niesi »

Zvoni hat geschrieben: Do 8. Mai 2025, 09:36 Dir ist bewusst, dass auf Linux/Unix (was ich von deinen Pfadnamen ableite)
"mystrings.pas" <> "MyStrings.pas" ist?
Da die Dateinamen im FS auf Linux/Unix CaseSensitive sind.
Ist so ziemlich das einzige was ich sehe.

Sieht nach ner Einstellung in der IDE aus, ob Unitnamen im Uses "as is" interpretiert (und dann auch auf HD gesucht) werden sollen.
Wobei ich eher darauf tippe, dass du die Unit tatsächlich mal wirklich mit Gross-/Kleinschreibung gespeichert hast
Ja, ist mir bewusst.

Es gab auch Startprobleme für mich, bis ich verstanden hatte, dass Linux erkennt, dass "mystrings.pas" <> "MyStrings.pas" ist, aber das habe ich gelernt.

Danke - auch das mit den Einstellungen in IDE kenne ich inzwischen. Aber vielleicht mache ich ja auch was falsch - ich werde mal schauen ...
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6786
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: Sehr merkwürdiges Fehlverhalten!

Beitrag von af0815 »

soweit ich die Erklärungen von PascalDragon richtig gemerkt habe, wird noch dem Dateinamen in originaler Schreibweise und anschliessend u.a. in Kleinschreibung gesucht. Deshalb war ich der Problembeschreibung etwas verwundert, aber die Suche muss ja nicht auf den Linker so zutreffen. Deshalb auch mal der Versuch mit clean build.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 587
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 4.1 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
Kontaktdaten:

Re: Sehr merkwürdiges Fehlverhalten!

Beitrag von Niesi »

af0815 hat geschrieben: Do 8. Mai 2025, 11:19 soweit ich die Erklärungen von PascalDragon richtig gemerkt habe, wird noch dem Dateinamen in originaler Schreibweise und anschliessend u.a. in Kleinschreibung gesucht. Deshalb war ich der Problembeschreibung etwas verwundert, aber die Suche muss ja nicht auf den Linker so zutreffen. Deshalb auch mal der Versuch mit clean build.
Es ist etwas verwirrend, finde ich - die Originalschreibweise war korrekt. In der Haupt-Unit wurde es nicht akzeptiert, in einer weiteren Unit war es ok. Die Unit "MyMath.pas" wurde stets überall so akzeptiert.

Im Moment habe ich die Unit "MyStrings.pas" nicht mehr im Project-Inspector gelistet. Da sie im Projektverzeichnis liegt, wird sie gefunden. Das klappt ... bisher ...

Ich erkenne keine Systematik, daher kann es durchaus sein, dass ich selbst den Fehler verursache ... :lol:
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

PascalDragon
Beiträge: 955
Registriert: Mi 3. Jun 2020, 07:18
OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
CPU-Target: Aarch64 bis Z80 ;)
Wohnort: München

Re: Sehr merkwürdiges Fehlverhalten!

Beitrag von PascalDragon »

af0815 hat geschrieben: Do 8. Mai 2025, 11:19Deshalb war ich der Problembeschreibung etwas verwundert, aber die Suche muss ja nicht auf den Linker so zutreffen.
Der Linker bekommt die tatsächlichen Dateinamen gesagt.
Niesi hat geschrieben: Do 8. Mai 2025, 11:37 Es ist etwas verwirrend, finde ich - die Originalschreibweise war korrekt. In der Haupt-Unit wurde es nicht akzeptiert, in einer weiteren Unit war es ok. Die Unit "MyMath.pas" wurde stets überall so akzeptiert.

Im Moment habe ich die Unit "MyStrings.pas" nicht mehr im Project-Inspector gelistet. Da sie im Projektverzeichnis liegt, wird sie gefunden. Das klappt ... bisher ...
Kannst du mal in den Fällen, in denen es nicht klappt, mit den Parametern -vut kompilieren und die vollständige Ausgabe dann hier einstellen?
FPC Compiler Entwickler

Antworten