08.04.2011, 04:33 UTC+2

Sie sind nicht angemeldet.

Nanosleep notwendig?

-Xylakant-

Schüler

Beiträge: 86

Geburtstag: 11.06.1986 (24)

Geschlecht: Männlich

Anzahl Nagios-Server: 1

Hobbys: Volleyball

Nagios-Version(en): Nagios 3.0

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: 50

Anzahl Services: 110

Betriebssystem(e): Desktop Ubuntu 7.10

Plugin-Version(en): Nagios-plugins-1.4.11

1

31.03.2011, 14:18

Nanosleep notwendig?

Hallo,

ich bin gerade dabei Nagios auf meinem kleinem NAS Synology DS411J einzurichten. Die Herausforderung daran liegt, dass dies ein eigenes OS DSM besitzt. Ich habe nun auch schon einen gcc Compiler über ipkg hinzugefügt, aber leider bekomme ich eine Fehlermeldung, wenn ich die configure ausführe:

checking for library containing nanosleep... no
Error: nanosleep() needed for timing operations.

Ich bezweifel sehr, dass ich diese hinzufügen kann bzw einen anderen Compiler nehmen kann.

Benötigt man diese Nanosleep auf jeden Fall? Oder kann ich den kompletten Teil aus der Config rauskommentieren? Oder gibt es andere Lösungen?

Edit: Also ich habe gelesen, dass es --enable-nanosleep gibt, aber wie lautet der Befehl um es zu deaktivieren?? --enable-nanosleep=no/false geht nicht

Danke

Xylakant

PS: Dies ist ein ARM Prozessor. Muss ich noch was beachten?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »-Xylakant-« (31.03.2011, 17:41)


bern

Profi

Beiträge: 1 282

Anzahl Nagios-Server: 2-5

Nagios-Version(en): 1-3

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: 80-200

Anzahl Services: 1400-2000

Betriebssystem(e): Linux

Plugin-Version(en): Whatever I can download, patch, or cobble together myself :-)

Sonstige Addon's: n2rrd, PNP, livestatus

2

01.04.2011, 13:15

Zitat von »-Xylakant-«

Edit: Also ich habe gelesen, dass es --enable-nanosleep gibt, aber wie lautet der Befehl um es zu deaktivieren?? --enable-nanosleep=no/false geht nicht
Hmmmm, --enable-nanosleep=no sollte genauso gehen wie --disable-nanosleep; Die Stellen im (3.2.3er) Code, an denen nanosleep() benutzt wird, sind AFAICT sauber in #ifdef USE_NANOSLEEP ... #else ... #endif gefaßt. Ausprobiert hab' ich's aber nicht ... Du hast ein "make distclean" dazwischengeschoben?

-Xylakant-

Schüler

Beiträge: 86

Geburtstag: 11.06.1986 (24)

Geschlecht: Männlich

Anzahl Nagios-Server: 1

Hobbys: Volleyball

Nagios-Version(en): Nagios 3.0

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: 50

Anzahl Services: 110

Betriebssystem(e): Desktop Ubuntu 7.10

Plugin-Version(en): Nagios-plugins-1.4.11

3

01.04.2011, 15:39

Nein hatte ich nicht. Aber leider geht es auch nicht.

make distclean
make: *** No rule to make target `distclean'. Stop.

Mhhh, wie gehts weiter?

bern

Profi

Beiträge: 1 282

Anzahl Nagios-Server: 2-5

Nagios-Version(en): 1-3

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: 80-200

Anzahl Services: 1400-2000

Betriebssystem(e): Linux

Plugin-Version(en): Whatever I can download, patch, or cobble together myself :-)

Sonstige Addon's: n2rrd, PNP, livestatus

4

01.04.2011, 16:05

Hmmm, sieht so aus, als ob ./configure nach einer Library mit nanosleep() sucht, egal ob man dessen Benutzung per --disable-nanosleep o.ä. abgestellt hat. :rolleyes:

Schmeiß' 'mal versuchshalber die beiden einschlägigen Zeilen aus dem (in configure selbst enthaltenen) Test-Code:

Quellcode

6032
char nanosleep ();

Quellcode

6036
return nanosleep ();

--disable-nanosleep nicht vergessen, sonst knallt's bei der Compilation des produktiven Codes gleich wieder ...

-Xylakant-

Schüler

Beiträge: 86

Geburtstag: 11.06.1986 (24)

Geschlecht: Männlich

Anzahl Nagios-Server: 1

Hobbys: Volleyball

Nagios-Version(en): Nagios 3.0

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: 50

Anzahl Services: 110

Betriebssystem(e): Desktop Ubuntu 7.10

Plugin-Version(en): Nagios-plugins-1.4.11

5

01.04.2011, 17:17

Quellcode

1
2
3
4
./configure --disable-nanosleep --prefix=/opt
....
checking for library containing nanosleep... no
Error: nanosleep() needed for timing operations.


Hab beide Zeilen auskommentiert, aber das hat leider nicht geholfen.
Also dieses Nanosleep ist angeblich nichts total wichtiges, nur das dann Werte genauer sind als bei normalen sleep.
Ich vermute das dieser Code im configure einen Fehler hat, aber leider verstehe ich diese Scriptsprache nicht gut.
Kann man nicht einfachen sagen, dass nanosleep false ist und er sleep nutzen soll.

dnsmichi

Meister

Beiträge: 1 962

Geburtstag: 30.05.1983 (27)

Geschlecht: Männlich

Wohnort: Wien

Beruf: DNS & Monitoring Developer

Anzahl Nagios-Server: 3

Nagios-Version(en): s/nagios/icinga/

Icinga-Version(en): 1.3.0 / GIT

Verteiltes Monitoring: Ja

Redundantes Monitoring: Ja

Anzahl-Hosts: 200+

Anzahl Services: 4000+

Betriebssystem(e): RHEL 5.6 x64

Plugin-Version(en): 1.4.15

IDO-Version: 1.3.0 / GIT MySQL/Postgresql/Oracle

Sonstige Addon's: PNP 0.6.11, check_mk GIT

6

01.04.2011, 17:39

--disable-nanosleep gibts nicht, ggf funktioniert es mit --enable-nanosleep=no

andernfalls ab in configure.in und USE_NANOSLEEP=yes in USE_NANOSLEEP=no umschreiben und autoconf ein neues configure generieren lassen.
Icinga 1.3 MySQL,PGSQL,Oracle and IPv6

Demos
Docs: http://docs.icinga.org

Report bugs/Feature requests

* egrep -v "^#|^$" configfile
* check https://dev.icinga.org

Join us online!
irc.freenode.net #icinga-devel

Using Icinga? Tell us!

Ähnliche Themen