Probleme beim Kompilieren(too many open files)

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Leath
Beiträge: 3
Registriert: 24.10.2008 18:54:21

Probleme beim Kompilieren(too many open files)

Beitrag von Leath » 24.10.2008 19:01:21

Hallo,

ich versuche schon seit einer Weile das Source SDK(Linux Server für die Source-Engine) zu kompilieren. Nachdem mehrere Probleme aus dem Weg geräumt wurden, steh ich nun (natürlich) vor einem Neuen ;)

Der Makeprozess liefert mir den Fehler: too many open files. Deswegen hab ich den Wert für ulimit -n hochgesetzt. Komischerweise bringt selbst ein extrem hoher Wert(>50000) nichts. Vom Ablauf her wirkt es fasst so, als wenn schleifenweise Dateien geöffnet werden, da hohe Werte die Fehlermeldung später erzeugen.

Ich weiß nicht in wie weit das jetzt ein Problem von Debian ist, aber vielleicht kann mir ja jemand helfen oder nen Ratschlag geben.

Grüße Leath

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: Probleme beim Kompilieren(too many open files)

Beitrag von gms » 24.10.2008 19:43:44

Willkommen im Forum!

Welche Version von gnu make verwendest du ( "make -v" ) ? Eine ältere Version vom "make" hatte mal einen solchen Bug, die derzeitig in Debian verfügbare Version 3.81 sollte aber funktionieren.
Ansonsten kannst du auch einmal "make -j 1" versuchen

Gruß
gms

Leath
Beiträge: 3
Registriert: 24.10.2008 18:54:21

Re: Probleme beim Kompilieren(too many open files)

Beitrag von Leath » 24.10.2008 20:11:10

Hi,

ich benutze Gnu Make in Version 3.81

Leider verursacht ein make -j 1 den gleichen Fehler.

Ich denke mal der Haken liegt in einer der Makefiles.

Das hier ist die Makefile.server

Code: Alles auswählen

#
# wrapper Makefile for auto-generated make files
#
#

#############################################################################
# PROJECT MAKEFILES
#############################################################################
MAKE_FILE=Makefile.$(MOD_CONFIG)
include $(MAKE_FILE)
...
würde doch beim Aufruf mit MOD_CONFIG=server immer wieder rekursiv $(MAKE_FILE) includen oder liege ich grad völlig daneben?

greetz Leath

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: Probleme beim Kompilieren(too many open files)

Beitrag von gms » 24.10.2008 20:21:57

Leath hat geschrieben: würde doch beim Aufruf mit MOD_CONFIG=server immer wieder rekursiv $(MAKE_FILE) includen oder liege ich grad völlig daneben?
durch rekursiv aufgerufene Makefiles, kann auch dieser Fehler hervorgerufen werden, aber wenn im Makefile.server nicht auch ein "include $(MAKE_FILE)" aufgerufen wird, dann sollte es keine Rekursion geben:

Code: Alles auswählen

gms@gms1 ~ $ cat Makefile
MAKE_FILE=Makefile.$(MOD_CONFIG)
include $(MAKE_FILE)
gms@gms1 ~ $
gms@gms1 ~ $ cat Makefile.server

all:
        @echo in Makefile.server
gms@gms1 ~ $
gms@gms1 ~ $ make MOD_CONFIG=server
in Makefile.server
Gibts dieses Paket im Netz zum Downloaden, sodaß ich mir das einmal genauer anschauen kann ?

Gruß
gms

Leath
Beiträge: 3
Registriert: 24.10.2008 18:54:21

Re: Probleme beim Kompilieren(too many open files)

Beitrag von Leath » 24.10.2008 21:04:46

Ok, ich hab den Fehler gefunden. Lag wirklich an der Variablen MOD_CONFIG.

Aber vielen Dank für die Mühen, super Forum :)

greetz Leath

Antworten