You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is probably a pretty well-known issue, I've seen it in the mailing list archives, but there was no respose. Issue #21 was partially about this, however, its fix ad01143 did not solve it, despite the claim.
The main problem is that the lib32 clientlib is created by common/wscript with
if bld.env['BUILD_WITH_32_64']:
print("create 32bit lib...")
clientlib32bit = clientlib.clone('lib32')
which, some bisecting show, under waf 1.5 (with the help of the relevant section in the configure method) compiled the needed object files and binary into build/lib32. However, under waf 1.6, these object files end up in the build/ directory directly, overwriting the 64-bit object files. Thus linking of the 64-bit clientlib fails, because the wscript wants to link 32-bit objects into a 64-bit shared library.
The text was updated successfully, but these errors were encountered:
The variant parameter appends 32 to the name of any object files, so that they don't get overwritten; the name change avoids linking the clients build by the build system with the 32-bit library; and the target puts the resulting shared library to a different directory, so it does not overwrite the 64-bit one. It sill installs to the right directory.
I don't know whether I should send a pull request with this, it seems very hackish (and trivial). I think the wscript should be fixed to output 32-bit binaries to build/lib32, although I don't know how to do that.
This is probably a pretty well-known issue, I've seen it in the mailing list archives, but there was no respose. Issue #21 was partially about this, however, its fix ad01143 did not solve it, despite the claim.
The main problem is that the lib32 clientlib is created by
common/wscript
withwhich, some bisecting show, under waf 1.5 (with the help of the relevant section in the
configure
method) compiled the needed object files and binary intobuild/lib32
. However, under waf 1.6, these object files end up in thebuild/
directory directly, overwriting the 64-bit object files. Thus linking of the 64-bit clientlib fails, because the wscript wants to link 32-bit objects into a 64-bit shared library.The text was updated successfully, but these errors were encountered: