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

Version 0.8.3 fails to compile with OpenMPI #42

Open
penguinpee opened this issue Jan 22, 2024 · 3 comments
Open

Version 0.8.3 fails to compile with OpenMPI #42

penguinpee opened this issue Jan 22, 2024 · 3 comments

Comments

@penguinpee
Copy link

When updating auryn for Fedora from 0.8.2m to 0.8.3, I ran into the following error compiling auryn with OpenMPI:

/home/devel/auryn/src/auryn/SyncBuffer.cpp: In member function ‘void auryn::SyncBuffer::sync()’:
/home/devel/auryn/src/auryn/SyncBuffer.cpp:308:17: error: ‘MPI’ has not been declared
  308 |                 MPI::COMM_WORLD.Abort(-1);
      |                 ^~~
/home/devel/auryn/src/auryn/SyncBuffer.cpp: At global scope:
/home/devel/auryn/src/auryn/SyncBuffer.cpp:384:5: error: no declaration matches ‘int auryn::SyncBuffer::get_overflow_count()’
  384 | int SyncBuffer::get_overflow_count()
      |     ^~~~~~~~~~

Above is from a local build using OpenMPI 4.1.5. Yet, the same happens compiling against version 5.0.1, which is currently in the development branch (rawhide).

I had no issues compiling with MPICH 4.1.2. The same setup works for both OpenMPI and MPICH compiling auryn 0.8.2m.

Bisecting higlighted commit 03da36a as introducing the issue. That's when MPI::COMM_WORLD.Abort(-1) was added to SyncBuffer.cpp. I'm none the wiser, though, since the same code does compile with MPICH and the #include statements appear to be correct.

This could be a bug in OpenMPI or in Fedora's package. But I wanted to run this by upstream first. I'm happy to provide more details on request.

@fzenke
Copy link
Owner

fzenke commented Jan 22, 2024 via email

@penguinpee
Copy link
Author

Could you try whether the problem persists using the development branch? We fixed this two weeks ago, but it's still in testing phase.

Sure. Would that be develop or dev-syncbuffer?

@penguinpee
Copy link
Author

Yes, using develop branch works. I'll apply 687725a as a patch to 0.8.3.

Thanks for the quick reply!

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