-
Notifications
You must be signed in to change notification settings - Fork 5
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
Build warning #7
Comments
I think it's some bug coming from old version of mingw? I had the same when I tried to build with Debian in my GitHub Actions workflow here but later I switched CI to Arch and all the warnings were gone. My script generates While searching for possible solutions, I've found https://stackoverflow.com/questions/13590735/printf-long-long-int-in-c-with-gcc which suggests that mingw can be just unaware of C runtime actually having support for Have you tried compiling with newer mingw? |
I can try compiling with arch in my Docker image just to see. Ubuntu is still stuck on mingw 10.3 unfortunately, so i will not venture into creating a custom 11.x version of that since it is a bit more involved. The error did not really make much sense to me tho, as PS. I am fairly certain i did NOT have this warning the last time i did a compile, and afaik the only thing changed on my system since then is my system installed wine version, but my memory may deceive me as it often does 😉 |
No dice fiddling with Ubuntu mingw-w64 flags... Compiles fine with arch in a docker image. Seemingly does not make a difference for the binary as it works just fine, but i don't like warnings 😀
Closing issue due to "Ubuntu too old build system" |
Hmm.. The nvml binaries i compiled with my Arch docker image actually did not work for me.. for some strange reason. I recompiled (with the warnings) with my regular ubuntu setup, and copied the binaries++ into my wine binary folder and did a wineboot, and wham - working again. Weird. Ill see if i can do some testing with your CI binaries if i can hack together a small nvml test proggy on a fresh prefix before laying this to rest. |
That's actually kind of expected: ELF side of each module is compiled with host-native But if the binaries built with Ubuntu toolchain work for you despite the warnings, I guess the way to go is just use them and ignore the warnings (which, as I mentioned earlier, are most likely false positives anyway). |
Yeah, that sounds reasonable. This is due to the ELF part of the lib then right? Like dxvk-nvapi or dxvk/vkd3d-proton does not have this problem as it is a "pure" windows binary in that sense? |
I did not find any simple examples of nvml usage that dynamically loads nvml.dll, so i hacked together a little snippit if you want to use for local testing?
Init the lib, print the nvml version and shutdown and exit. Does not work with arch compiled binaries on my Ubuntu box as you point out above. I assume older glibc compiled binaries work with arch? Attaching binary .exe. |
Yup. While on the other hand
I have my own one that I use to compare NVML to NVAPI, here, plus a bunch of quickly written and later discarded programs which are not really worth mentioning. But for some real action you could extract
They should, at least I remember not having to rebuild mine when Arch upgraded from 2.35 to 2.36. But I've never tried building on Ubuntu and then using binaries produced this way on Arch. And I'm not exactly tempted to try it anytime soon, because last time I tried to build anything on Ubuntu it felt like walking a minefield, especially in the Ubuntu environment provided by GitHub Actions runners.
As if my own test app was any better with its inconsistency in loading function pointers and clear abuse of preprocessor macros 😅
Fwiw that binary works fine on my Arch system with
|
The attached Building wine on ubuntu is a pita, but building "minor libs" usually is not too horrible unless latest of the latest is needed in terms of packages. (I have issues with libFAudio seemingly needing libSDL2 2.24 now which is not available yet). Still odd that mingw-w64 would complain about this, other than the peculiarity of building using |
Don't really know of anything using those calls to test, so i need to make some sort of nvml program to do that i guess.... With my extremely limited skills it will take some time to figure that out 😄 |
No worries, there's no rush 🙂 |
Of all the functions using |
I'm not sure just yet. But I'll try to write a test case myself, soonish. |
Okay, I think all we need to do is to call any function that has an #include <stddef.h>
#include "nvml.h"
int main(void)
{
nvmlDeviceRegisterEvents(NULL, ~(unsigned long long)0, NULL);
} Build with |
Hopefully should be resolved after 788a138. |
I don't really have it in me to figure out how exactly that
make_nvml
script generatesnvml.c
file, so i just attach a log with some compile warnings i got today (using wine-staging-7.16)I guess it might be some wine update causing this, cos the last time i compiled wine-nvml i dont remember getting this.
compile.zip
The text was updated successfully, but these errors were encountered: