Fehler beim kompilieren von Lazarus (64bit) - [gelöst]

Für Installationen unter Windows
Antworten
vx-rexx
Beiträge: 21
Registriert: Do 11. Mär 2010, 10:21

Fehler beim kompilieren von Lazarus (64bit) - [gelöst]

Beitrag von vx-rexx »

Ich erfolgreich die aktuellste SVN-Version von FPC in 64bit erstellt.

Code: Alles auswählen

G:\Entwicklung\lazarus.svn>fpc
Free Pascal Compiler version 2.5.1 [2011/06/10] for x86_64
Copyright (c) 1993-2011 by Florian Klaempfl and others
C:\FPC\bin\x86_64-win64\ppcx64.exe [options] <inputfile> [options]


Wenn ich nun lazarus erstellen will, erhalte ich folgende Ausgabe:

Code: Alles auswählen

G:\Entwicklung\lazarus.svn>make all OPT="-glw2"
make -C packager/registration all
make[1]: Entering directory `G:/Entwicklung/lazarus.svn/packager/registration'
g:/Entwicklung/freepascal/binutils/i386-win64/rm.exe -f ../units/x86_64-win64/fcllaz.ppu
C:/FPC/bin/x86_64-win64/ppcx64.exe -MObjFPC -Scghi -O1 -gl -vewnhi -l -Fu. -FE.
-FU../units/x86_64-win64 -glw2 -dx86_64 fcllaz.pas
Free Pascal Compiler version 2.5.1 [2011/06/10] for x86_64
Copyright (c) 1993-2011 by Florian Klaempfl and others
Target OS: Win64 for x64
Compiling fcllaz.pas
Compiling registerfcl.pas
Fatal: Can't find unit ServiceManager used by RegisterFCL
Fatal: Compilation aborted
make[1]: *** [fcllaz.ppu] Error 1
make[1]: Leaving directory `G:/Entwicklung/lazarus.svn/packager/registration'
make: *** [packager/registration] Error 2

Alles, was ich bisher im Netz dazu fand, bezog sich auf win32.

Ach ja, ich bin nach
http://wiki.lazarus.freepascal.org/Inst ... Lazarus/de
vorgegangen. Ich weiß allerdings nicht, ob OPT="-glw2" für die 64bit-Umgebung korrekt ist.

Hat jemand einen Tipp für mich?
PS. Unter 64bit-Linux habe ich FPC und Lazarus in den aktuellen SVN-Versionen erfolgreich erzeugen können.
Zuletzt geändert von vx-rexx am Mi 15. Jun 2011, 20:05, insgesamt 1-mal geändert.

shokwave
Beiträge: 471
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Fehler beim kompilieren von Lazarus (64bit)

Beitrag von shokwave »

Hi,

von gestern aus der Mailinglist zu dem selben Problem:
Try to change this configurations in your "fpc.cfg" file.

Find that line:

-Fu$LOCAL_APPDATA\FreePascal\fppkg/units/$FPCTARGET/*

and replace to

-Fu C:\lazarus\fpc\2.5.1\units\i386-win32\*

Den Pfad musst du natürlich entsprechend deiner Installation ändern. Bei dem Fragesteller in der Mailinglist hats geholfen.
mfg Ingo

vx-rexx
Beiträge: 21
Registriert: Do 11. Mär 2010, 10:21

Re: Fehler beim kompilieren von Lazarus (64bit)

Beitrag von vx-rexx »

hallo shokwave,

das hatte ich auch gelesen, bin dann sogar dem Link zum bugtracker gefolgt. Es hat mein Problem aber nicht gelöst. Habe es gerade mit nochmals aktualisiertem Repository getestet (auch mit angepassten/statischen Pfadangaben) - das Problem bleibt bestehen.

Code: Alles auswählen

G:\Entwicklung\lazarus.svn>make all OPT="-glw2"
make -C packager/registration all
make[1]: Entering directory `G:/Entwicklung/lazarus.svn/packager/registration'
g:/Entwicklung/freepascal/binutils/i386-win64/rm.exe -f ../units/x86_64-win64/fc
llaz.ppu
C:/FPC/bin/x86_64-win64/ppcx64.exe -MObjFPC -Scghi -O1 -gl -vewnhi -l -Fu. -FE.
-FU../units/x86_64-win64 -glw2 -dx86_64 fcllaz.pas
Hint: Start of reading config file C:\FPC\bin\x86_64-win64\fpc.cfg
Hint: End of reading config file C:\FPC\bin\x86_64-win64\fpc.cfg
Free Pascal Compiler version 2.5.1 [2011/06/13] for x86_64
Copyright (c) 1993-2011 by Florian Klaempfl and others
Target OS: Win64 for x64
Compiling fcllaz.pas
Compiling registerfcl.pas
Compiling lazaruspackageintf.pas
Fatal: Can't find unit ServiceManager used by RegisterFCL
Fatal: Compilation aborted
make[1]: *** [fcllaz.ppu] Error 1
make[1]: Leaving directory `G:/Entwicklung/lazarus.svn/packager/registration'
make: *** [packager/registration] Error 2


Liegt es eventuell an der 64bit-Version?

shokwave
Beiträge: 471
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Fehler beim kompilieren von Lazarus (64bit)

Beitrag von shokwave »

Das es an 64bit liegt glaube ich weniger. Lade doch mal die Datei "C:\FPC\bin\x86_64-win64\fpc.cfg" hoch, dann sehen wir weiter.
mfg Ingo

vx-rexx
Beiträge: 21
Registriert: Do 11. Mär 2010, 10:21

Re: Fehler beim kompilieren von Lazarus (64bit)

Beitrag von vx-rexx »

Ich habe den Fehler gefunden. :D

Beim Befehl (Installation von FPC)

Code: Alles auswählen

G:\Entwicklung\fpc.svn>make install PREFIX=C:\FPC PP=g:\Entwicklung\freepascal\binutils\ppcx64.exe


werden ja auch die examples installiert (bzw. kopiert).
Es gibt in jedem dieser Verzeichnisse ein Unterverzeichnis .svn . Dies wird (natürlich) mit kopiert.
Aber genau das ist das Problem!
Denn beim nächsten Mal make install ... kann keines dieser Verzeichnisse .svn gelöscht werden. Damit werden dann auch die nachfolgenden units nicht mehr installiert.
Ich werde jetzt sicherheitshalber vor jedem neuen make install ... den Inhalt des Verzeichnisses C:\FPC\examples löschen.

(Ach ja, mein Consolen-Fenster läuft unter Admin-Rechten; .svn-Verzeichnisse haben aber das Attribut schreibgeschützt.)

shokwave
Beiträge: 471
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Fehler beim kompilieren von Lazarus (64bit) - [gelöst]

Beitrag von shokwave »

Es gibt in jedem dieser Verzeichnisse ein Unterverzeichnis .svn . Dies wird (natürlich) mit kopiert.
Aber genau das ist das Problem!
Denn beim nächsten Mal make install ... kann keines dieser Verzeichnisse .svn gelöscht werden. Damit werden dann auch die nachfolgenden units nicht mehr installiert.
Ich glaube für dieses Problem gibt es den Parameter COPYTREE=echo welcher verhindert, dass die Examples kopiert werden.

Hoffe das hilft dir.
mfg Ingo

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: Fehler beim kompilieren von Lazarus (64bit) - [gelöst]

Beitrag von af0815 »

Deswegen auch der Tip in der BuildFAQ kein Checkout zumachen, sondern zu exportieren (besonders unter Windows).

Das Problemtritt auch auf, falls wer die Lazarus/FPC Dokumentation kompileren will :-)
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Fehler beim kompilieren von Lazarus (64bit)

Beitrag von mschnell »

vx-rexx hat geschrieben:Ich werde jetzt sicherheitshalber vor jedem neuen make install ... den Inhalt des Verzeichnisses C:\FPC\examples löschen.

1) Gibt es denn keine Option für das make-script, das nur den compiler, aber nicht die Beispiele komiliert ?
2) das ist doch eigentlich ein Bug, oder ? Sollte also sauber gelöst und im svn upgedated werden....

-Michael

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: Fehler beim kompilieren von Lazarus (64bit)

Beitrag von af0815 »

mschnell hat geschrieben:2) das ist doch eigentlich ein Bug, oder ? Sollte also sauber gelöst und im svn upgedated werden....

Kein Bug, wenn man das Buildsystem richtig verwendet. Hinweise siehe der BuildFAQ. Zumindest habe ich diese Erfahrung beim Kompileren und erstellen gemacht und bin auch auf die Problematik immer wieder hingewiesen worden -> "Read the BuildFAQ".
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

gocher
Beiträge: 298
Registriert: Di 23. Nov 2010, 23:41
OS, Lazarus, FPC: Ubuntu/Win, Lazarus trunk, FPC trunk
CPU-Target: 32Bit/64Bit
Wohnort: Geldern
Kontaktdaten:

Re: Fehler beim kompilieren von Lazarus (64bit) - [gelöst]

Beitrag von gocher »

ich habe mir folgendermaßen geholfen nach make install... im Batch-File immer die folgende Zeile

Code: Alles auswählen

FOR /F "tokens=*" %%G IN ('DIR /B /AD /S %fpcVersionPath%\examples\*.svn*') DO RMDIR /S /Q "%%G"

und ich muß mich nicht mehr um solche Probleme kümmern!
MfG Gocher
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me

Antworten