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 build needs to be fixed #36

Closed
kdschlosser opened this issue Apr 8, 2018 · 3 comments
Closed

Windows build needs to be fixed #36

kdschlosser opened this issue Apr 8, 2018 · 3 comments

Comments

@kdschlosser
Copy link

In this repositories current state these are the errors I have come across

Does not handle spaces in paths properly.
Command structure for cmake is incorrect, the source directory is the last item supplied to cmake.
MAKE_INSTALL_PREFIX variable gets applied to the source path, causing an invalid directory error.

These things I have fixed.

I also added support for Visual Studio 2017, as well as auto detection of Visual Studio versions 12, 14, and 15. It will automatically use the highest version installed.

I know that there is a form to be filled out when contributing. I have done this for the libCEC repository and I would like to know if I have to do another for this repository as well?

@opdenkamp
Copy link
Contributor

Sorry for the delay. This platform lib doesn't need that form signed. It's a library with some shared utlities between libCEC and Kodi (add-ons). It's also not required for changing cmake files, only for code.

Did you see #38 ? I assume that there's an overlap there.

thanks!

@kdschlosser
Copy link
Author

no worries. There are several utilities like this that get pulled to compile libCEC. I do not remember which ones are affected. The biggest issue is that the path to the folder where the sources are located cannot have a space in them. the build fails if it does.

Just recently I have done a really large amount of work with detecting Visual C installations including Visual Studios and Build Tools. From compiler version 4.0 to 15.0 along with detecting the SDK versions installed .NET NETFX. I am able to replicate the build environment without the need for vcvarsall. So if you need any input on where things are located in order to run a proper detection instead of only looking for VS***COMNTOOLS in the environment (not a great way to detect compiler version)

The detection should look for some environment variables that only get set if a build environment has been created. If there is a build environment then check the compiler version. if there is not then proceed to some for of a detection and set up the build environment. without the use of vcvarsall. There are version of vcvarsall that are broken and do not set the environment properly. So I would steer clear of using them, I know using it is very tempting because of the convenience, but they are not worth the headache.

This issue has been here a long time. I do not remember exactly what I did to fix it. I would have to go back through it again to see what I did. I am sure I can make it more robust.

I do not believe the other issue is the same as this one.. These problems are specific to building on Windows.

@opdenkamp
Copy link
Contributor

I've updated things to get it building again, with the old toolchains.
LibCecSharp is built against .net 2.0, for compatibility reasons, and that's quite annoying to build, because it can't be built with the latest VS but needs older ones.
We can't just pick the latest versions that are available on the system automatically btw, because that will break things like installing Kodi on a new system, which uses 2015 and only installs the 2015 redist.

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

2 participants