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

PYPI source_sampling.so is different to the cmake build .so #13

Open
makeclean opened this issue Nov 5, 2020 · 4 comments
Open

PYPI source_sampling.so is different to the cmake build .so #13

makeclean opened this issue Nov 5, 2020 · 4 comments
Labels
bug Something isn't working

Comments

@makeclean
Copy link
Contributor

For some reasons, maybe some weird versioning thing, when you pip install you get a different (non-functioning) version of the source, whereas building with cmake its functions as it should - it would be worth including this in CI if possible when its fixed. @DanShort12 can you investigate?

@makeclean makeclean added the bug Something isn't working label Nov 5, 2020
@shimwell
Copy link
Contributor

shimwell commented Nov 5, 2020

Getting the same problem over here

@DanShort12
Copy link
Contributor

DanShort12 commented Nov 5, 2020

Thanks for reporting. I think this is a linking issue with how the manylinux build process is putting the dependent libraries together - if I get them to resolve their linked references (using ld) I see that they can't be found, and if I then inspect their RPATH values using objdump -p I see that they don't seem quite right. Sorry about that - will continue hunting. If I can't get to the bottom of this this afternoon then i'll look put in a temporary fix to allow the package to build from source when running pip install (should just be a case of including cmake as a project requirement).

@DanShort12
Copy link
Contributor

Hmmm, I think there are a few problems with this approach:

  • Having the source_sampling.so in the .whl file means that the checks performed by auditwheel to check for dependencies end up mangling the rpath values for the libraries, and I don't think that's quite working correctly.
  • I've tried hacking the rpath values and library names so that source_sampling.so should find my local libraries but that is still giving an error, so perhaps there are some version issues... although I'm not so sure where those come in.
  • I've had a go at distributing as a source package, but the commands we're using in cmake need a bit of tweaking to avoid using git submodules if we're not in the original git repo.

I think I will carry on trying to get a build that works from a source distribution - that way we should always be referencing the user's version of OpenMC etc. Apologies again for that, hopefully it is sufficient to build from source for now and I'll try to get a new packaging method in place in the next couple of days.

@shimwell
Copy link
Contributor

shimwell commented Nov 5, 2020

Thanks for you efforts here Dan, much appreciated

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants