Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

configure section for libev looks for event.h #3258

Open
NateCrawford opened this issue Jan 22, 2024 · 7 comments
Open

configure section for libev looks for event.h #3258

NateCrawford opened this issue Jan 22, 2024 · 7 comments

Comments

@NateCrawford
Copy link

Background information

What version of the PMIx Reference Library are you using?

4.2.8

Describe how PMIx was installed

tarball

Please describe the system on which you are running

  • Operating system/version:
    Rocky 8.9
  • Computer hardware:
    x86_64
  • Network type:
    Infiniband

Details of the problem

When running configure, the libev tests fail when they can't find event.h. The header file provided by libev-devel is ev.h, and we don't have the corresponding libevent-devel package installed.

I'm guessing it's a typo, as manually editing the configure script to test for ev.h completes as expected.

Here? -->

@NateCrawford
Copy link
Author

In this case compilation is still blocked by a number of files still including event.h.

For now, dropping back to use libevent instead of libev.

@rhc54
Copy link
Contributor

rhc54 commented Jan 22, 2024

What version of libev are you using? Sounds like he made a change as there has been no previous problem with using it.

@NateCrawford
Copy link
Author

The package installed from the EL8 OS "appstream" repo is libev-devel-4.24-6.el8.x86_64. It provides:
/usr/include/ev++.h
/usr/include/ev.h
/usr/lib64/libev.so
/usr/share/man/man3/ev.3.gz

4.24 was originally released in 2016, and can provide its own version of event.h as a compatibility wrapper. This would, however, conflict with libevent-devel's event.h, so I assume the packagers left that out. I'll look into it.

If you compile libev and install somewhere else, there's probably no issue.

Can pmix be modified to use ev.h directly when libev is used?

@NateCrawford
Copy link
Author

And a little more searching gets this package in the repo: libev-libevent-devel-4.24-6.el8.x86_64, which contains the missing event.h wrapper. It obviously conflicts with the libevent-devel package, so there would still be a small benefit to having pmix not use event.h if libev is chosen.

Testing config and build with libev now.

@NateCrawford
Copy link
Author

Config and build with the wrapper event.h work, but the self-tests hang and fail with a timeout. That, however, would be a different issue, and this one can probably be closed.

For now, going with libevent-2.1.8-5.el8

@rhc54
Copy link
Contributor

rhc54 commented Jan 23, 2024

I don't know the last time someone used libev - no real benefit to doing so over libevent. We only added that support because someone was using a package based on libev, and there are too many conflicts if you try to link against both event libraries. Haven't heard anything recently about it, to be honest.

I'll leave this open so we can look at it, but it will be a low priority so I cannot say when we might get to it.

@NateCrawford
Copy link
Author

Sounds good to me. I did not know libev existed until recently, and don't need to use it. If libevent is used more widely, I'll go with that.

If you do start to look at it, and can't reproduce the tests hanging when using libev, let me know.

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants