OpenIDC/liboauth2

Can't build on ArchLinux

Draghmar opened this issue · 6 comments

Hi
I'm trying to build this package because it's needed for mod_oauth2 but I'm getting some file missing errors when going with make on Arch Linux. The first one is:

In file included from src/server/apache.c:22:
include/oauth2/apache.h:34:10: fatal error: httpd.h: Nie ma takiego pliku ani katalogu
   34 | #include <httpd.h>
      |          ^~~~~~~~~
compilation terminated.

And I'm guessing that same will go for: http_config.h, http_log.h and mod_auth.h as I can't find them anywhere in the source folder as well.
My steps (after extracting tar) were: ./autogen.sh, ./configure, make.
So what am I doing wrong here?

you need to install the Apache development files; on Ubuntu etc. that would be the apache2-dev package and possible you'll need to provide a path to the include files using the CPPFLAGS env var

I don't see anything like that in Arch repositories...
I've manage to get through building by enforcing (editing) path where I found those missing files: /usr/include/httpd/.
I had problem building mod_oauth2 after that but again enforcing this path solved this issue and I did build mod_auth_openidc which was ultimate goal here...not sure if everything works properly at the moment because I still have problem with proper authorization (missing headers) but that will have to wait for the next day as I'm going home now. ;)

be aware that mod_auth_openidc 3.x that depends on this library is not production ready yet; you may want to stick with 2.x for the time being

I didn't even know that there's a 3.x branch. I was trying to update to 2.4 but stumble upon missing mod_oauth2 error and installing it gave me missing liboauth2 that also had problem, as seen above. ;)

After installing everything I still don't get headers for mod_auth_openidc defined with OIDCClaimPrefix "OIDC-". All I'm getting are REDIRECT_OIDC...which probably means I didn't install everything as I should. :(

Argh...And I was fighting with the proper installation when the problem is completely elsewhere. Thanks for pointing that out.