-
Notifications
You must be signed in to change notification settings - Fork 379
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
ldlogger always built 32 bit #2095
Comments
Yes, we need to do some improvement in the package build configuration.
|
In the scenario for me, it seems like the build system was trying to build a 64 bit only, in which case asking for 32 bit binary is just plain wrong. In the second case you mention, what matters is not the OS but the dev environment (compiler + libc). If the dev environment is 32 bit, then you are constrained to only building 32 bit. I admit that I don't really understand how the ldlogger works, so this question might be a dumb question: when ask whether "32bit logger.so can call the 64bit executable properly?", do you mean that ldlogger32.so literally does a fork/exec? If so, then I don't think there's an issue because the executable gets rendered into its own process. |
My bad, not they do not fork/exec I just thought that was the case, so that should not be a problem. The ldlogger binary can be used as a replacement for CC/CXX environment variables to log the compile commands as a fake compiler, but it does not call the original compiler right now if I'm right. |
With the newly introduced environment variables you should be able to create 64bit only package. |
This issue is still not fixed, /analyzer/tools/build-logger/Makefile.manual still contains "$(CC) -m32" for ldlogger, so the 64bit only build with BUILD_LOGGER_64_BIT_ONLY still tries to build a 32bit binary, which fails for me, due to a lack of 32bit dev environment. |
I've re-opened this ticket as #2790. |
Describe the bug
At line 86 of the ld-logger Makefile, the executable is always built for 32 bit. This causes problems on 64 bit build hosts that do not have 32 bit dev environments installed.
CodeChecker version
Current master
To Reproduce
Steps to reproduce the behavior
master
make package
Expected behavior
Build.
Desktop (please complete the following information)
Additional context
Removing
-m32
seems to solve the problem for me.The text was updated successfully, but these errors were encountered: