Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Nach dem Taggen der Lazarus-Version 5.0 wurde eine Vielzahl von Codestellen entfernt, die als "deprecated" markiert waren. (*) Seitdem können theo's UTF8Tools aus OPM nicht mehr mit der Trunk-IDE (v5.99 jetzt) kompiliert werden. Schuld ist die verwendete Anweisung UTF8CharacterToUnicode, die in UTF8CodepointToUnicode umbenannt werden muss - dann geht's wieder.
theo, wenn du das in der Version auf deiner Seite korrigierst, könnte ich den OPM entsprechend aktualisieren.
----------
(*)
Falls bei jemandem Code plötzlich nicht mehr funktioniert, kann das die Ursache sein. Das häufigste Problem ist wahrscheinlich, dass der Befehl DebugLn nicht mehr gefunden wird. Der war früher in Unit LCLProcs und ist nun schon seit längerem in LazLoggerBase.
theo, wenn du das in der Version auf deiner Seite korrigierst, könnte ich den OPM entsprechend aktualisieren.
----------
(*)
Falls bei jemandem Code plötzlich nicht mehr funktioniert, kann das die Ursache sein. Das häufigste Problem ist wahrscheinlich, dass der Befehl DebugLn nicht mehr gefunden wird. Der war früher in Unit LCLProcs und ist nun schon seit längerem in LazLoggerBase.
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Danke für den Hinweis und für das Aktualisieren des OPM.wp_xyz hat geschrieben: Do 1. Okt 2026, 01:15 theo, wenn du das in der Version auf deiner Seite korrigierst, könnte ich den OPM entsprechend aktualisieren.
Die aktualisierte Version befindet sich am gleichen Ort.
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Danke, im OPM aktualisiert.
Ich habe dann allerdings versucht, die beiden im Package enthaltenen Demo-Programme zu kompilieren, und erhalte den seltsamen Fehler "win32int.pp(11,65) Error: Can't find unit Win32Int used by Interfaces" (bin auf Windows). Bin ratlos, kann keinen Fehler weder in deinem Package noch in den Demo-Programmen finden.
Ich habe dann allerdings versucht, die beiden im Package enthaltenen Demo-Programme zu kompilieren, und erhalte den seltsamen Fehler "win32int.pp(11,65) Error: Can't find unit Win32Int used by Interfaces" (bin auf Windows). Bin ratlos, kann keinen Fehler weder in deinem Package noch in den Demo-Programmen finden.
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Danke!
Ich bin selber nicht mehr auf Windows.
Das Ganze ist natürlich schon etwas alt, aber auf Linux funktionieren die Beispiele.
Kannst du mal in die ".lpr schauen, ob da vielleicht etwas weg muss für Windows?
z.B.
Ich hatte mir das gar nicht mehr angesehen, da es auf Linux keine Probleme gab.
Ich bin selber nicht mehr auf Windows.
Das Ganze ist natürlich schon etwas alt, aber auf Linux funktionieren die Beispiele.
Kannst du mal in die ".lpr schauen, ob da vielleicht etwas weg muss für Windows?
z.B.
Code: Alles auswählen
{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF} Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Ja, da war ich schon:
Kein Erfolg...
Noch mysteriöser: Ich habe eine neues leeres Projekt erstellt, und nur utf8tools zu den Requirements hinzugefügt --> derselbe Fehler.
Linux getestet - du hast recht, da geht alles. Habe die Widgetset-Kompatibilitätsliste in der Packagebeschreibung um gtk3, qt5 und qt6 ergänzt.
Code: Alles auswählen
program project1;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Interfaces, // this includes the LCL widgetset
Forms
{ you can add units after this }, Unit1; //, LResources, utf8tools;
//{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}
{$R *.res}
begin
// {$I project1.lrs}
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end. Noch mysteriöser: Ich habe eine neues leeres Projekt erstellt, und nur utf8tools zu den Requirements hinzugefügt --> derselbe Fehler.
Linux getestet - du hast recht, da geht alles. Habe die Widgetset-Kompatibilitätsliste in der Packagebeschreibung um gtk3, qt5 und qt6 ergänzt.
Zuletzt geändert von wp_xyz am Fr 2. Okt 2026, 12:22, insgesamt 1-mal geändert.
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1844
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Das liegt an der unit character.pas. Die gibt es auch nochmal im rtl Source.
Wenn man die Unit im Package umbenennt, compiliert es.
Wenn man die Unit im Package umbenennt, compiliert es.
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Ah, gut beobachtet! theo, kannst du das umbenennen? Trotzdem hat man jetzt die umgekehrte Frage: Warum ging es unter Linux, wo es doch auch die RTL-Unit character gibt?
-
sstvmaster
- Beiträge: 595
- Registriert: Sa 22. Okt 2016, 23:12
- OS, Lazarus, FPC: W10, L 4.6
- CPU-Target: 32+64bit
- Wohnort: Dresden
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Eventuell noch Suchreihenfolge der Units und/oder gross/klein Schreibweise?
LG Maik
Windows, Linux
- Lazarus 4.8 (stable) + fpc 3.2.2 (stable)
- Lazarus 4.99 (trunk) + fpc 3.3.1 (main/trunk)
Windows, Linux
- Lazarus 4.8 (stable) + fpc 3.2.2 (stable)
- Lazarus 4.99 (trunk) + fpc 3.3.1 (main/trunk)
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Der Unterschied ist wohl, dass die RTL Unit ein grosses "C" verwendet und meine ein Kleines (Character - character).wp_xyz hat geschrieben: Fr 2. Okt 2026, 12:25 Trotzdem hat man jetzt die umgekehrte Frage: Warum ging es unter Linux, wo es doch auch die RTL-Unit character gibt?
Windows macht da wohl im Ggs. zu Linux keinen Unterschied.
Aber wieso ging es dann bisher auf Windows? Oder ist das schon länger so?
Ich habe jetzt ja nur UTF8CharacterToUnicode geändert und gar nichts an den Dateinamen oder Unit-Abhängigkeiten?
Meine "character.pas" war vor der RTL Version da und ich habe nie von einem solchen Problem gehört.
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
So, hab's noch einmal geändert und hochgeladen
Geht es jetzt auf Win?
Geht es jetzt auf Win?
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Ja, danke. Aber: es fehlen die rc-Dateien im Archiv. Daher habe ich zum Test in beiden Programmen das {$IFDEF WINDOWS}{$R project1.rc}{$ENDIF} auskommentiert und durch ein {$R *.res} ersetzt (geht schon seit vielen Jahren, und braucht kein {$IFDEF Windows}.
Re: Theo's UTF8Tools können in Laz 5.99 nicht mehr kompiliert werden
Ja, das ist halt schon ziemlich alt.
Ich hätte wohl besser neue Projektdateien erstellt, statt das alte Zeug anzupassen, ohne es auf Win zu testen.
Passt es jetzt für dich, um es in den OPM zu stellen?
Ich hätte wohl besser neue Projektdateien erstellt, statt das alte Zeug anzupassen, ohne es auf Win zu testen.
Passt es jetzt für dich, um es in den OPM zu stellen?