Opened 3 years ago

Closed 3 years ago

#24885 closed enhancement (fixed)

Add helper function to preload some libraries if necessary

Reported by: embray Owned by:
Priority: major Milestone: sage-8.3
Component: build Keywords:
Cc: vdelecroix, slelievre Merged in:
Authors: Erik Bray Reviewers: Vincent Delecroix
Report Upstream: N/A Work issues:
Branch: 3ddb719 (Commits) Commit: 3ddb7199ac6251b0c397a6c0ae290e6e0f6b64ef
Dependencies: Stopgaps:

Description (last modified by slelievre)

Following my comments on #24575 I think it might be useful to have a generic helper function for implementing my workaround there.

For now it is Linux-only since we've only explicitly encountered this problem on Linux. I believe LD_PRELOAD may be supported on newer versions of Cygwin, but I haven't specifically encountered the need for this workaround there. It would also have to work a bit differently on OSX (which uses DYLD_INSERT_LIBRARY for this purpose). Again, the need hasn't been specifically encountered on that platform. I'm not sure about other unices either.

Change History (10)

comment:1 Changed 3 years ago by vdelecroix

  • Cc vdelecroix added

comment:2 Changed 3 years ago by embray

  • Authors set to Erik Bray
  • Branch set to u/embray/build/ticket-24885
  • Commit set to ba1b5ee8075c0a03883a42003d19f08983e4e9be
  • Status changed from new to needs_review

New commits:

ba1b5eeAdd helper function that implements the workaround from https://trac.sagemath.org/ticket/24575 more generically.

comment:3 Changed 3 years ago by slelievre

  • Cc slelievre added
  • Description modified (diff)

comment:4 Changed 3 years ago by vbraun

This might be a necessary clutch to get something working, but it is also always a bug in the package build system. We should be working with upstream to point out the issue and fix their build system, not add a framework to Sage so we can ignore those bugs...

comment:5 Changed 3 years ago by embray

I agree it's ugly, but I don't agree particularly agree that it's an upstream bug. I can think of other cases where having something like this might be useful as well.

The best fix of all for this, from a Sage perspective, is not build and install our own libgc at all if it isn't needed :)

comment:6 Changed 3 years ago by embray

  • Milestone changed from sage-8.2 to sage-8.3

comment:7 Changed 3 years ago by git

  • Commit changed from ba1b5ee8075c0a03883a42003d19f08983e4e9be to 3ddb7199ac6251b0c397a6c0ae290e6e0f6b64ef

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

3ddb719Add helper function that implements the workaround from https://trac.sagemath.org/ticket/24575 more generically.

comment:8 follow-up: Changed 3 years ago by embray

Rebased. IMO this may still be useful...

comment:9 in reply to: ↑ 8 Changed 3 years ago by vdelecroix

  • Reviewers set to Vincent Delecroix
  • Status changed from needs_review to positive_review

Replying to embray:

Rebased. IMO this may still be useful...

Agree. But it is also hard to check without a usecase. Since it is independent of anything else I am setting a positive review.

comment:10 Changed 3 years ago by vbraun

  • Branch changed from u/embray/build/ticket-24885 to 3ddb7199ac6251b0c397a6c0ae290e6e0f6b64ef
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.