Ich möchte die timerfd in einer Embedded-Gerät-Lösung verwenden, die einen Kernel 2.6.39 ausführt, aber der Cross-Compiler verwendet eine zu alte glibc (2.5). Timerfd existiert seit 2.6.25, aber erst seit glibc 2.8Verwenden von Linux syscall mit älteren glibc
Wenn ich versuche, die Header-Datei von einem neueren glibc zu verwenden, beschwert sich der Compiler über das externe timerfd_create nicht zu finden (undefined reference to 'timerfd_create'
), aber ich kann die Implementierung nicht finden überall im glibc.
Meine Frage ist jetzt, wie kann ich die timerfd verwenden, unabhängig von der alten glibc-Version? Muss ich den Syscall manuell aufrufen? Wenn ja, wie mache ich das?
Wenn Sie mir eine downvote geben, erklären Sie bitte, warum – hellow