cannot find syslog.h on windows

13,197

Solution 1

Probably the program you are porting to windows uses the syslog(3) function call (in addition to openlog and closelog). These are defined in syslog.h on unix. Windows does not have these, so you can do the following:

  • Remove syslog.h and these function calls from the code.
  • Create a syslog.h and implement these calls or just define them as empty macros.
  • Use cygwin which provides POSIX compatibility.

Solution 2

Windows doesn't offer a built-in syslog client. You may be able to use a third-party library, such as http://syslog-win32.sourceforge.net.

Solution 3

In PHP source code you can find a wrapper based on Windows function ReportEvent().

E.g.: take a look at wsyslog.c and syslog.h

Edit: have you tried syslog-server?

Share:
13,197
diligent
Author by

diligent

Updated on June 04, 2022

Comments

  • diligent
    diligent almost 2 years

    I am rewriting a c program which was used to linux, now I'll reused it on windows, I write a bat file. I run this file as administrator, then error occurs: syslog.h:No such file or directory.

    Could you please give me some advices? thx.