# Build OBS on Windows



## wildfios (Nov 2, 2016)

Hello. Im tying to build obs on windows os. I used instructions from github: https://github.com/jp9000/obs-studio/wiki/Install-Instructions#windows. After building I try to run app and it rise error: procedure entry not found in dll qt5core.dll. I used MS VS 2015 as compiler and Qt 5.7 libs. Does anyone knows, how solve this problem?


----------



## beastwick (Nov 4, 2016)

Mine fails too, but I didn't get as far as you.

I just did a fresh install of Windows 10 (patched up to Anniversary). I also setup an environment following the instructions from the Wiki and the build flat out failed. CMAKE-GUI when configured found everything, but VS 2015 compilation fails.

http://pastebin.com/3eWuECxR

I would be grateful for any help. I posted in the Linux Support forum about trying to cross compile for Windows, maybe I should of put that here, but that also doesn't work for me. I would really like to make a Windows binary at the moment...

EDIT:

Actually CMAKE-GUI cannot find the libavcodec_DIR, what do I set this to? I doubt that's just the problem though.

Link to my Linux cross compile post, https://obsproject.com/forum/threads/cross-compiling-for-windows.57087/

UPDATE:

So I get all the build failures when building the debug solution and there are a lot of problems related to cmake working with w32-pthreads, but compiling a release doesn't produce any errors, just warnings, with 1 failure.

...

I had to manually create a x264_config.h in the x264 repo folder I grabbed from a VLC x264 mirror that has these contents:

#define X264_BIT_DEPTH 8
#define X264_GPL 1
#define X264_INTERLACED 0
#define X264_CHROMA_FORMAT 0
#define X264_REV 2538
#define X264_REV_DIFF 0
#define X264_VERSION " r2538 121396c"
#define X264_POINTVER "0.146.2538 121396c"
#define X264_BIT_DEPTH 8
#define X264_GPL 1
#define X264_INTERLACED 0
#define X264_CHROMA_FORMAT 0
#define X264_REV 2538
#define X264_REV_DIFF 0
#define X264_VERSION " r2538 121396c"
#define X264_POINTVER "0.146.2538 121396c"

No more build failures! However, unable to launch because libcurl.dll is for some reason not on my computer. Sorry to hijack your thread OP with my own build woes, but I figure they're Windows related stuff.

....

OK, got mine to build using just the release. I needed to supply ffmpeg shared libraries by downloading the shared version from Zeranoe and I needed to get libcurl.dll somehow. I thought the project might build these automatically, especially since I got all the required dependencies and set them up in CMAKE. However, it appears I can't select x264 as an encoder and NVENC has no available options, so on to more stuff to fix setting up I guess.


----------



## Jim (Nov 6, 2016)

Ignore the libavcodec_DIR thing, it happens every time (even to me) and is completely ignorable.  It's an erroneous error.

If you're using custom dependencies, I'd recommend cross-compiling with mingw or compiling with mingw on windows.  Compiling the dependencies isn't trivial.

As for the original poster's question/issue, the reason is most likely because you had two copies of Qt and you need to refresh the copied dependencies (though that's just a guess based upon the error).  When using the cmake GUI, uncheck the COPIED_DEPENDENCIES variable, and regenerate.  It'll re-copy your current QT DLLs for the version you're using.  After that, rebuild.  Then it should fix the issue.  Or you can clear and remake your entire cmake cache.


----------

