fehler bei make syslimits.h

Status
Für weitere Antworten geschlossen.

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hallo Gemeinde,

ich bin frischer Besitzer einer DS 412+ und bin mir meine gewohnten programme am installieren.
Das meiste ist schon drauf nun bekomme ich aber nun beim letzten programm folgenden Fehler beim compilen:
Rich (BBCode):
gcc -g -O2 -W -Wall -Wundef -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline  -D_WITH_NOFORMAT -DUSING_GLFTPD=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DHAVE_CONFIG_H -I../include/ -I../../ -I../../lib/   -c -o multimedia.o multimedia.c
In file included from ../include/objects.h:22,
                 from ../include/mp3info.h:36,
                 from multimedia.c:5:
/opt/lib/gcc/i686-linux-gnu/4.2.1/include/syslimits.h:7:25: error: no include path in which to search for limits.h
make[1]: *** [multimedia.o] Error 1
make[1]: Leaving directory `/root/project-zs-ng_r2500-v1.2.0/zipscript/src'
make: *** [zs] Error 2

Habe den Fehler zuerst nicht ganz verstanden aber bei 2em hinsehen (bin linux mässig kein newbie, aber auch nicht sattelfest ;)) war's dann klar syslimits.h/limits.h kann er nicht finden.

ipkg für paketdienst, coreutiles diverse libs etc was man so braucht zum compilen ist installiert.
PATH / export PATH zeilen sind in der .profile von root auskommentiert.
Dateien sind beide auch beide vorhanden.

hat jemand einen heissen tip ?
Danke im voraus :)

jazzmaster
 

enkidu

Benutzer
Mitglied seit
17. Dez 2011
Beiträge
191
Punkte für Reaktionen
0
Punkte
0
touch /root/project-zs-ng_r2500-v1.2.0/zipscript/src/limits.h && make :)

... nicht üppig, aber wird wahrscheinlich reichen.
$LD_INCLUDE_PATH wäre auch ganz gut.
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hi enkidu,

danke für Dein Reply. touch hat leider nicht geholfen. Was muss ich it $LD_INCLUDE_PATH anstellen ?

Grüsse,
jazzmaster
 

enkidu

Benutzer
Mitglied seit
17. Dez 2011
Beiträge
191
Punkte für Reaktionen
0
Punkte
0
Hallo,

wenn er sie immer noch nicht findet, versuche es noch im aktuellen Verzeichnis (touch limits.h), normalerweise kommt man ohne Inhalt durch. Du könntest sie auch neben die syslimits.h legen - wäre aber noch unschöner :)
Die Fehlermeldung müsste sich allerdings ändern ;)
LD_INCLUDE_PATH ist als Umgebungsvariable die Include Entsprechung für LD_LIBRARY_PATH, das du sicher schon für Bibliotheken kennst, sie gibt an wo Header zu suchen sind.
DSM 4.2 hat bei mir folgende: LD_INCLUDE_PATH=/usr/include:/target/include:/usr/include/c++/4.2.3:/include
Falls du eine limits.h in einem anderen Ordner hast, mit ":" getrennt hinten anhängen.
Setzen geht entweder mit LD_INCLUDE_PATH=.:/usr/include:/target/include:/usr/include/c++/4.2.3:/include:/wo/sonst/noch direkt in der Shell - oder beim configure (sofern es einen gibt) so hinten anhängen damit es ins Makefile kommt.
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Uff,
das ist alles schon länger her das ich mich tiefer mit dem *x auseinder setzen musste. Bin nicht täglicher User, bzw User schon aber nur als Client denn wenns mal rennt dann rennts :D


touch limits.h in /root/project-zs-ng_r2500-v1.2.0 brachte folgendes:

Rich (BBCode):
In file included from ../include/objects.h:22,
                 from ../include/mp3info.h:36,
                 from multimedia.c:5:
/opt/lib/gcc/i686-linux-gnu/4.2.1/include/syslimits.h:7:25: error: no include path in which to search for limits.h
make[1]: *** [multimedia.o] Error 1
make[1]: Leaving directory `/root/project-zs-ng_r2500-v1.2.0/zipscript/src'
make: *** [zs] Error 2
/root/project-zs-ng_r2500-v1.2.0/zipscript/src/limits.h ist nach wie vor da.

echo $LD_INCLUDE_PATH bleibt blank.

Rich (BBCode):
 find / -name "limits.h"
/volume1/@optware/lib/gcc/i686-linux-gnu/4.2.1/include/limits.h
/volume1/@optware/lib/gcc/i686-linux-gnu/4.2.1/install-tools/include/limits.h
/volume1/@optware/include/c++/4.2.1/tr1/limits.h
/volume1/@optware/include/limits.h
/volume1/@optware/include/linux/limits.h
/root/project-zs-ng_r2500-v1.2.0/limits.h
/root/project-zs-ng_r2500-v1.2.0/zipscript/src/limits.h
/usr/local/i686-linux-gnu/include/limits.h
/usr/local/i686-linux-gnu/include/c++/4.2.1/tr1/limits.h
/usr/local/i686-linux-gnu/include/linux/limits.h
/usr/local/i686-linux-gnu/lib/gcc/i686-linux-gnu/4.2.1/include/limits.h
/usr/local/i686-linux-gnu/lib/gcc/i686-linux-gnu/4.2.1/install-tools/include/limits.h
/usr/local/i686-linux-gnu/i686-linux-gnu/sys-include/limits.h
/opt/lib/gcc/i686-linux-gnu/4.2.1/include/limits.h
/opt/lib/gcc/i686-linux-gnu/4.2.1/install-tools/include/limits.h
/opt/include/c++/4.2.1/tr1/limits.h
/opt/include/limits.h
/opt/include/linux/limits.h

setzen/test von LD_INCLUDE_PATH

Rich (BBCode):
 LD_INCLUDE_PATH=.:/opt/lib/gcc/i686-linux-gnu/4.2.1/include

echo $LD_INCLUDE_PATH
.:/opt/lib/gcc/i686-linux-gnu/4.2.1/include

configure ist vorhande: ./configure LD_INCLUDE_PATH=.:/opt/lib/gcc/i686-linux-gnu/4.2.1/include brachte aber den alten fehler.

Rich (BBCode):
./configure --help
`configure' configures this package to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
  -h, --help              display this help and exit
      --help=short        display options specific to this package
      --help=recursive    display the short help of all the included packages
  -V, --version           display version information and exit
  -q, --quiet, --silent   do not print `checking...' messages
      --cache-file=FILE   cache test results in FILE [disabled]
  -C, --config-cache      alias for `--cache-file=config.cache'
  -n, --no-create         do not create output files
      --srcdir=DIR        find the sources in DIR [configure dir or `..']

Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc.  You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
  --bindir=DIR           user executables [EPREFIX/bin]
  --sbindir=DIR          system admin executables [EPREFIX/sbin]
  --libexecdir=DIR       program executables [EPREFIX/libexec]
  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
  --libdir=DIR           object code libraries [EPREFIX/lib]
  --includedir=DIR       C header files [PREFIX/include]
  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
  --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
  --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
  --infodir=DIR          info documentation [DATAROOTDIR/info]
  --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
  --mandir=DIR           man documentation [DATAROOTDIR/man]
  --docdir=DIR           documentation root [DATAROOTDIR/doc/PACKAGE]
  --htmldir=DIR          html documentation [DOCDIR]
  --dvidir=DIR           dvi documentation [DOCDIR]
  --pdfdir=DIR           pdf documentation [DOCDIR]
  --psdir=DIR            ps documentation [DOCDIR]

System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]

Optional Features:
  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --enable-ss5            compiles the zipscript for use with SiteStat 5
  --disable-glftpd-specific
                          Disable glftpd-specific features, so that it works
                          under wzdftpd/cuftpd
  --enable-format         compiles the zipscript to format the output
  --enable-expert         expert mode - uses full config
  --disable-altwho        compiles the sitewho to not use an alternative
                          output on single user who lookups
  --enable-static         enable static linking of zs-c
  --enable-gl132          disable autodetect of glversion, and compile bot
                          binaries for glftpd 1.32
  --enable-gl200          disable autodetect of glversion, and compile bot
                          binaries for glftpd 2.00
  --enable-gl201          disable autodetect of glversion, and compile bot
                          binaries for glftpd 2.01

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-ssl=PATH         Include SSL support (DIR is OpenSSL's install dir).
  --with-install-path=PATH
                          specify nondefault path to install software (/glftpd
                          per default)
  --with-glpath=PATH      specify nondefault path to install software (/glftpd
                          per default) (USE --with-install-path INSTEAD!)

Some influential environment variables:
  CC          C compiler command
  CFLAGS      C compiler flags
  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  LIBS        libraries to pass to the linker, e.g. -l<library>
  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
              you have headers in a nonstandard directory <include dir>
  CPP         C preprocessor

Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.

DSM4.2 ist installiert, sorry hatte das vergessen zu posten bisher.

Grüsse,
jazzmaster
 

enkidu

Benutzer
Mitglied seit
17. Dez 2011
Beiträge
191
Punkte für Reaktionen
0
Punkte
0
sorry, hab' mich im chroot vertan, DSM 4.2 setzt die Variable normalerweise nicht, die LD_INCLUDE_PATH vorhin war aus meinem Buildroot ;)
Wenn die einfachen Tricks nicht helfen muss man leider weiter rein...
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
oh!

ok dann brauch ich definitv schützenhilfe :(

Noch wer nen guten Input? Danke im voraus!

jazzmaster
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Gibt grad nicht soo viel zu tun hier auf Arbeit darum konnte ich bissl drüberschauen.
Ein wenig mehr versteh ich es nun.
Rich (BBCode):
In file included from ../include/objects.h:22,
                 from ../include/mp3info.h:36,
                 from multimedia.c:5:
/opt/lib/gcc/i686-linux-gnu/4.2.1/include/syslimits.h:7:25: error: no include path in which to search for limits.h
make[1]: *** [multimedia.o] Error 1
make[1]: Leaving directory `/root/project-zs-ng_r2500-v1.2.0/zipscript/src'
make: *** [zs] Error 2

https://github.com/pzs-ng/pzs-ng/blob/trunk@2429/zipscript/src/multimedia.c

Zeile 6:
Rich (BBCode):
#include "mp3info.h"

Mp3info.h

https://github.com/pzs-ng/pzs-ng/blob/trunk@2429/zipscript/include/mp3info.h

Zeile 36:
Rich (BBCode):
#include "objects.h"

zielt auf objects.h

https://github.com/pzs-ng/pzs-ng/blob/trunk@2429/zipscript/include/objects.h

Zeile 14-22:

Rich (BBCode):
#ifndef PATH_MAX
 #define _LIMITS_H_
 #if defined(_SunOS_)
  #include <syslimits.h>
 #elif defined(_BSD_)
  #include <sys/syslimits.h>
 #else
  #include <limits.h>
  #include <syslimits.h>
 #endif
#endif

kann ich da händisch auf limits.h mit absolutem Pfad verweisen ?
Oder wird wird da limits.h wo anderst gesucht/gesetzt (./configure?). Bin kein Coder ;)
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.165
Punkte für Reaktionen
413
Punkte
393
Hallo,
Rich (BBCode):
-I../include/ -I../../ -I../../lib/
das sind die definierten Include Pfade. Kopiere eine von den gefundenen limits.h nach

/root/project-zs-ng_r2500-v1.2.0/zipscript/include

Gruß Götz
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hi Goetz,

herzlichen Dank fürs einklinken und Deinen Ratschlag.

Werde das heute Abend wenn ich wieder zu Hause ausprobieren und berichten.
Remote Zugriff ist noch nicht eingerichtet das kommt dann am Ende ;)

Grüsse,
jazzmaster
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
So, bin zu Hause angekommen,

cp /opt/lib/gcc/i686-linux-gnu/4.2.1/include/limits.h /root/project-zs-ng_r2500-v1.2.0/zipscript/include/

brachte beim kompilieren folgendes:

Rich (BBCode):
Compiling the zipscript
cd zipscript/src ; make all
make[1]: Entering directory `/root/project-zs-ng_r2500-v1.2.0/zipscript/src'
gcc -g -O2 -W -Wall -Wundef -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline  -D_WITH_NOFORMAT -DUSING_GLFTPD=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DHAVE_CONFIG_H -I../include/ -I../../ -I../../lib/   -c -o postunnuke.o postunnuke.c
In file included from ../include/limits.h:11,
                 from /opt/include/sys/param.h:22,
                 from ../include/zsfunctions.h:20,
                 from postunnuke.c:10:
/opt/lib/gcc/i686-linux-gnu/4.2.1/include/syslimits.h:7:25: error: no include path in which to search for limits.h
make[1]: *** [postunnuke.o] Error 1
make[1]: Leaving directory `/root/project-zs-ng_r2500-v1.2.0/zipscript/src'
make: *** [zs] Error 2

Also ein wenig weiter bin ich nun wohl gekommen vermute ich oder auch nicht, zumindest ist die Fehlermeldung nun anderst wobei er wohl das selbe vermisst...:confused:


Grüsse,
jazzmaster
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Alright,

habe auch noch neuere builds getestet, die sind wieder am developen.
limits.h ebenfalls ins jeweilige include dir gehauen, ergab den selben Fehler
jetzt habe ich mal aus purem blödsinn auch noch:
Rich (BBCode):
cp /opt/lib/gcc/i686-linux-gnu/4.2.1/include/syslimits.h /root/pzs-ng-trunk-2429/zipscript/include/
gemacht.

make clean
./configure
make

ergab

Project-ZS-NG is now compiled!
Type 'make install' to install it into /glftpd.

et voila, geht doch :D Ich hoffe es arbeitet dann auch brav :)

Danke Goetz für Deine Hilfe, vielleicht kann nun noch einer im nachhinein analysieren ;)
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
scheint doch nicht ganz so richtig geklappt zu haben :(

das Script machte irgendwie nichts nachdem es eigentlich getriggert wurde.

Bei manuellem ansteuern bekomme ich folgenden Error:
Rich (BBCode):
[L] site audiosort
[L] 200- /bin/audiosort: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

da stimmt also immer noch was nicht mit libs und Pfaden :/
 

jazzmaster

Benutzer
Mitglied seit
05. Jun 2013
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Okay,

Problem auch noch gelöst, glibc.so.6 musste in den bin Ordner von glftpd.
läuft prima :D
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat