Skip to content
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

Windows version still tries to link against dxerr.lib #1

Open
JPGygax68 opened this issue Feb 14, 2015 · 7 comments
Open

Windows version still tries to link against dxerr.lib #1

JPGygax68 opened this issue Feb 14, 2015 · 7 comments

Comments

@JPGygax68
Copy link

I'm going to file this in with the official SDL forum as soon as I get posting rights there, but in the meantime, you might want to fix this in your mirror.

The problem occurs when building SDL using the Windows SDK version 8. This Microsoft blog post explains why dxerr.lib is no longer provided with the newer SDKs, and what functions (and macros) it used to contain.

I searched the SDL code for calls to these functions, and found a few - all commented out; meaning that the current code no longer uses dxerr.lib at all.

Unfortunately, CMakeLists.txt apparently was not updated to reflect that fact. The line that reads

  list(APPEND EXTRA_LIBS dinput8 dxguid dxerr)

needs to be changed to

  list(APPEND EXTRA_LIBS dinput8 dxguid)

to make the linker error LNK1104 go away.

@davidsiaw
Copy link
Owner

Thanks.

@davidsiaw davidsiaw reopened this Mar 11, 2015
@davidsiaw
Copy link
Owner

Oops. Please file a pull request.

@Alan-FGR
Copy link

I can confirm this... if you build with DirectX though it won't try and link dxerr because it sets an internal flag to use the windows SDK as opposed to DirectX. If that lib isn't used though then it makes no sense to have it, otherwise it would be better to expose the option to force use win sdk. I'm only using SDL for input and windowing.

@davidsiaw
Copy link
Owner

Hmm Is this still an issue in the latest SDL2? I seem to be able to build it just find at the moment, and I have recently updated to a later revision in hg.

@Alan-FGR
Copy link

I'm using release 2.0.8. If you build without the DirectX option it will not use the Windows SDK and still links the dxerr.lib from the old DirectX SDK. That's easy to see in CMakeLists. No biggie though, but I'm not using anything DirectX from SDL and if I disable the DirectX option it says it can't find that dxerr.lib what's strange.

@hibengler
Copy link

I am using the OpenGL ES 2.0 interface, and cross compiling with mingw64, So I don't run into this.

@Alan-FGR
Copy link

If this isn't fixed in the repo I could make a quick repro.
:trollface:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants