libqmlbind icon indicating copy to clipboard operation
libqmlbind copied to clipboard

Windows support

Open emmatyping opened this issue 9 years ago • 3 comments

I want to be able to use this on Windows, and sadly, it does not build. :( This is more of a tracking issue, as I hope to get the build system to work on Windows (which may take some code adjustments).

emmatyping avatar Nov 06 '16 01:11 emmatyping

Which is the error? Last time I read about someone building on windows, there was a failure because one header uses a variable named interface and on windows that's defined with the preprocessor. If your build fails there, #undef interface in that file, and try again.

suy avatar Nov 06 '16 07:11 suy

First of all, the structs defined in qml_global.h are empty, which is undefined behavior in C. GCC allows this for some reason. I worked around this by putting in a dummy variable. Secondly, this line is failing, complaining that the expression does not evaluate to a constant. I will probably re-write that using std::vector most likely.

The final issue is one with Catch, the testing library, I think the configuration may be wrong for Windows, or there may be some other issue...

emmatyping avatar Nov 06 '16 09:11 emmatyping

Okay, so I re-wrote the signal emitter bit to use a std::vector, which is probably cleaner anyway. I also updated Catch to the latest in master, and the compile issue went away, so I assume that Catch is just outdated, and needs to be updated.

There are a couple of link issues I have to figure out, but then I will try out my modified signal emitter (hopefully it works), and work on creating a PR.

emmatyping avatar Nov 06 '16 09:11 emmatyping