I am unable to compile the current dev branch.

Hi guys,

I have trouble compiling the current development branch, because the compiler can not find the library “…\libs\x64\js1.dll”. Does anyone of you have this problem as well? Can you help me find the library?

– Ivo

Hi Ivaylo,

You have to compile the project
EventStore.Projections.v8Integration.vcxproj to get most up to date
version of js1.dll

-- Andrii Nakryiko

Build v8.integration project first. Unfortunately we cannot add it to the main solution as it breaks the mono build.

I’ve removed the precompiled lib binaries from the repo to stop keep it size not so fast growing.

-yuriy

Yuriy,

I have the same problem with building the source, running on a windows box and tried to compile using VS2012 and msbuild directly against the solution file, I can see that the EventSource.SingleNode project has a BeforeBuild target that tries to copy the file but it does not exist. Just came across your reply and tried to compile the EventStore.Projections.v8Integration project using VS2010 as suggested but i get this error “error C1083: Cannot open include file: ‘v8.h’: No such file or directory”

Have did a pull so my source is up to date at this time.

Any ideas on how i sort the EventStore.Projections.v8Integration project compilation issue and if i do get it to build, will it place the missing EventSource dll into the libs\x64 directory ?

Thanks in advance

Pat

Pat,

We keep projection and solution files compatible with VS2010. While there is not problem with .NET projections, the C++ project is VS2010 only.

The libs directory contains the minimal set of include files to compile, but lib files are not there.

From the error message you get I can conclude that you try to build C++ project outside of solution, but it refers to lib directory from the solution location. So, the steps to build everything in windows are:

  1. Set environment with

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vcvars64.bat

  1. Download and build v8

src\EventStore\Scripts\v8\get-v8.cmd

src\EventStore\Scripts\v8\build-v8_x64.cmd

  1. build the src\EventStore\Projections.Dev.WindowsOnly.sln with 64-bit msbuild from NET 4.0
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild

The same solution can be built from VS2010 directly (or event VS2012 if you still have 2010 installed - c++ 64-bit support)

Let me know if it works for you.

-yuriy

Yuriy,

Firstly thanks for your help, will just give a a little detail on what I did, as may be helpful to others and maybe the http://geteventstore.com/docs/building-from-source.html page needs padding out to include this at some stage

I followed your steps and can now build the EventStore.sln solution from within VS2012, so that appears to have sorted the EventSource.SingleNode project’s BeforeBuild target issue

I have also successfully build the Projections.Dev.WindowsOnly.sln as you indicated.

If I try to build the EventStore.Projections.v8Integration project it fails with the missing v8.h header file.

Just tried to run the solution using the EventStore.SingleNode project as the startup project, but failed with an explanation I expected as i am not running as an admin, will look at this later when I get a chance but appears to be okay.

Not really sure what I am building with the v8 projection\integration suff, but one step at a time.

Anyways your steps outlined before allowed me to build the solution, just want to point out two path dependencies as required by the get-v8.cmd batch script

  1. git is on the path

  2. subversion’s svn.exe is on the path, I needed to grab from a build server here as the only subversion installation I have is a TortoiseSVN from a while back which does not include svn.exe, i think you can get the exe from here http://subversion.apache.org/packages.html#windows

Pat

Pat,

I added a README file on the dev branch which outlines the same steps I posted here.

As of v8.h I suspect I found the problem. Are you trying to build the release configuration? It looks like it is not properly configured.

If so, can you try Debug?

thank you

-yuriy

Pat,

If you managed to build the Projections.Dev.WindowsOnly.sln solution it means that the EventStore.Projections.v8Integration project was built as a part of the solution. You now have the js1.dll in the libs directory and that it why you can build EventStore.sln.

-yuriy