Autor Thema: vnstat / make Problem  (Gelesen 3267 mal)

Luca_

  • Gast
vnstat / make Problem
« am: 06. Februar 2006, 12:06:30 »
hallo allerseits

ich wollte auf meinem solaris 9 system vnstat irgendwie zum laufen bringen, da ich dieses tool sehr gerne unter linux benutze.
hab ich also den source code gesogen und wollte das kompilieren, jedoch stimmt das was nicht ganz:
root@app-srv01 # cd vnstat-1.4
root@app-srv01 # ls -l
total 74
-rw-r--r--   1 root     root        1961 Mar 26  2004 CHANGES
-rw-r--r--   1 root     root       17992 Feb 23  2004 COPYING
-rw-r--r--   1 root     root         116 Feb 29  2004 FAQ
-rw-r--r--   1 root     root        3390 Mar 26  2004 INSTALL
-rw-r--r--   1 root     root        1461 Mar  8  2004 Makefile
-rw-r--r--   1 root     root        2064 Mar  8  2004 README
-rw-r--r--   1 root     root          52 Mar 26  2004 UNINSTALL
-rw-r--r--   1 root     root        1514 Mar 26  2004 UPGRADE
drwxr-xr-x   2 root     root         512 Feb 23  2004 cron
drwxr-xr-x   2 root     root         512 Mar  8  2004 man
drwxr-xr-x   2 root     root         512 Feb 23  2004 pppd
drwxr-xr-x   2 root     root         512 Mar 26  2004 src
root@app-srv01 # make
make -C src vnstat
Usage : make [ -f makefile ][ -K statefile ]... [ -d ][ -dd ][ -D ][ -DD ]
             [ -e ][ -i ][ -k ][ -n ][ -p ][ -P ][ -q ][ -r ][ -s ][ -S ][ -t ]
             [ -u ][ -w ][ -V ][ target... ][ macro=value... ][ "macro +=value"... ]
make: Fatal error: Unknown option `-C'
*** Error code 1
make: Fatal error: Command failed for target `vnstat'
root@app-srv01 # /usr/local/bin/make
make -C src vnstat
Usage : make [ -f makefile ][ -K statefile ]... [ -d ][ -dd ][ -D ][ -DD ]
             [ -e ][ -i ][ -k ][ -n ][ -p ][ -P ][ -q ][ -r ][ -s ][ -S ][ -t ]
             [ -u ][ -w ][ -V ][ target... ][ macro=value... ][ "macro +=value"... ]
make: Fatal error: Unknown option `-C'
make: *** [vnstat] Error 1
mein make kennt die option -C nicht so wie sie im Makefile drin ist.

ich habe es mit dem GNU make und dem sun make versucht, welches bei solaris schon dabei ist:
root@app-srv01 # /usr/local/bin/make --version
GNU Make 3.80
Copyright (C) 2002  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
root@app-srv01 # which make
/usr/ccs/bin/make
bei beidem kommt die meldung, dass -C nicht erkannt wird.

wie man die version des solaris make herauslesen kann hab ich leider nicht herausgefunden?
weiss jemand wie ich vielleicht das Makefile von vnstat abändern muss, damit das ganze funktioniert? oder kennt jemand ein ähnliches tool, welches mir simple traffic statistiken auf consolen basis ausgeben kann?

sonnenblen.de - Das unabhängige Sun User Forum

vnstat / make Problem
« am: 06. Februar 2006, 12:06:30 »

Offline erisch

  • Moderatoren
  • Sobl Guru
  • *****
  • Beiträge: 758
  • TurboSPAAAAAG
    • erisch.homeunix.net
Re: vnstat / make Problem
« Antwort #1 am: 06. Februar 2006, 12:42:18 »
einfach mal mit gnu make versuchen, ist sowieso sinnvoll stets gnu make zu benutzen.

Luca_

  • Gast
Re: vnstat / make Problem
« Antwort #2 am: 06. Februar 2006, 13:13:19 »
hab ich doch: ?

root@app-srv01 # /usr/local/bin/make
make -C src vnstat
Usage : make [ -f makefile ][ -K statefile ]... [ -d ][ -dd ][ -D ][ -DD ]
             [ -e ][ -i ][ -k ][ -n ][ -p ][ -P ][ -q ][ -r ][ -s ][ -S ][ -t ]
             [ -u ][ -w ][ -V ][ target... ][ macro=value... ][ "macro +=value"... ]
make: Fatal error: Unknown option `-C'
make: *** [vnstat] Error 1
root@app-srv01 # /usr/local/bin/make --version
GNU Make 3.80
Copyright (C) 2002  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

Offline erisch

  • Moderatoren
  • Sobl Guru
  • *****
  • Beiträge: 758
  • TurboSPAAAAAG
    • erisch.homeunix.net
Re: vnstat / make Problem
« Antwort #3 am: 06. Februar 2006, 13:49:45 »
Hihi, da verarscht dich einer ;)

Du benutzt vielleicht gnu make um das Master Makefile zu starten, aber make startet in den Unterverzeichnissen wieder das make was er zuerst findet.
Dein
Zitat
Usage : make [ -f makefile ][ -K statefile ]... [ -d ][ -dd ][ -D ][ -DD ]
             [ -e ][ -i ][ -k ][ -n ][ -p ][ -P ][ -q ][ -r ][ -s ][ -S ][ -t ]
             [ -u ][ -w ][ -V ][ target... ][ macro=value... ][ "macro +=value"... ]
sieht arg nach Sun make aus.

Gib mal ein "which make" ein, ich bin mir sicher da kommt /usr/ccs/bin/make" raus.
Du musst sicherstellen, dass gnu make vor dem sun make gefunden wird -> $PATH

Mfg. Erisch

Luca_

  • Gast
Re: vnstat / make Problem
« Antwort #4 am: 06. Februar 2006, 13:59:13 »
du hast recht.. ich hab im make file jetzt mal den absoluten pfad zum gnu make gegeben, sieht schon einiges besser aus, jedoch noch nicht gut:
root@app-srv01 # /usr/local/bin/make
/usr/local/bin/make -C src vnstat
make[1]: Entering directory `/usr/share/src/vnstat-1.4/src'
gcc -O2 -c proc.c
In file included from proc.c:1:
vnstat.h:3:20: stdint.h: No such file or directory
proc.c: In function `parseproc':
proc.c:105: warning: integer constant is too large for "long" type
proc.c:106: warning: integer constant is too large for "long" type
proc.c:107: warning: integer constant is too large for "long" type
proc.c:109: warning: integer constant is too large for "long" type
proc.c:109: warning: integer constant is too large for "long" type
proc.c:135: warning: integer constant is too large for "long" type
proc.c:136: warning: integer constant is too large for "long" type
proc.c:137: warning: integer constant is too large for "long" type
proc.c:139: warning: integer constant is too large for "long" type
proc.c:139: warning: integer constant is too large for "long" type
make[1]: *** [proc.o] Error 1                                 
make[1]: Leaving directory `/usr/share/src/vnstat-1.4/src'
make: *** [vnstat] Error 2

ich versteh nicht viel, ausser dass stdint.h fehlt ( ? ) und eine konstante ist zu "large" ? bitte um hilfe :(

Offline erisch

  • Moderatoren
  • Sobl Guru
  • *****
  • Beiträge: 758
  • TurboSPAAAAAG
    • erisch.homeunix.net
Re: vnstat / make Problem
« Antwort #5 am: 06. Februar 2006, 14:07:49 »
willkommen beim "Kompilieren von Linux Zeugs unter Solaris"

Wenn du schwein hast, ist das der einzige Fehler, wenn nicht wirst du noch einige dieser Inkompatibilitäten zu spüren bekommen.

Zum Problem: stdint.h gibts bei Solaris nicht, die Deklaration für die int typen stehen in unistd.h
Ein intelligentes configure script erkennt das.

Zur schnellen Abhilfe, einfach unistd.h includen und es sollte gehen.

Mfg. Erisch

Luca_

  • Gast
Re: vnstat / make Problem
« Antwort #6 am: 06. Februar 2006, 14:21:39 »
ich merk grad dass im proc.c eine funktion "readproc" gibt, hört sich sehr danach an, als er die infos aus /proc liest, welches ja bei solaris nicht vorhanden ist.

wird das irgendwann möglich sein das unter solaris zum laufen zu bringen?  :D

Offline erisch

  • Moderatoren
  • Sobl Guru
  • *****
  • Beiträge: 758
  • TurboSPAAAAAG
    • erisch.homeunix.net
Re: vnstat / make Problem
« Antwort #7 am: 06. Februar 2006, 15:50:33 »
[...]
wird das irgendwann möglich sein das unter solaris zum laufen zu bringen?  :D

Wenn du es nicht für Solaris portierst eher nicht ;)