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
define $LDSHARED when installing Python packages when Python's value doesn't use toolchain compiler ($CC) #1455
Conversation
6935257
to
ece5a56
Compare
While testing this a bit, I ran into a problem because an assumption is being made that
The problem is that Proposed fix in Micket#1 . Another thing I mentioned is that we're only checking/setting |
take into account that $CC may not be set when checking value of Python's $LDSHARED
@boegel Regarding; setup.py So, if there are builds out there that doesn't use a setup.py, but still relies on this part of distutils, then it should indeed be placed outside the condition. There certainly shouldn't be any downside, as any customized build systems would probably neither rely on LDSHARED, or should still use CC for linkage anyway. |
@Micket What about if I would always set |
@boegel Sorry, apparently i missed pushing the last update. |
@Micket I tested this with all the For older versions (up until Python 2.7.12 and 3.5.2 apparently), Python's From the log (this was with
This then causes problems when
It seems like during the So, I think we have two options: i) We add a version check to only do this for recent Python versions (having to do that for both Python 2 & 3 complicates that a bit). i)) We make it opt-in only, by adding a custom easyconfig parameter like In any case, we clearly need to be more careful with tweaking I was hoping to get this in for EasyBuild v3.8.1, but now I'm not so sure to squeeze this in last-minute... |
Just to keep a public record from our discussion: I vote for opt-in, at least for 3.8.1, as it at least allows conveniently testing out alternatives. |
…ed' easyconfig parameter in PythonPackage easyblock
make checking/correcting of $LDSHARED opt-in via custom 'check_ldshared' easyconfig parameter in PythonPackage easyblock
Spent a bit more time testing this, both the (unchanged) default behavior and the use of exts_default_options = {'check_ldshared': True} in a Thanks a lot for your work on this @Micket! |
Fix for setuptools at GCCcore level for easybuilders/easybuild-easyconfigs#6537