Cryptonote compile on windows issue

General discussion of CryptoNote based currencies and issues.

Cryptonote compile on windows issue

Postby vim55k » Tue Dec 02, 2014 11:25 pm

Would you advise me please, what to do in order to compile cryptonote on Windows.

I am compiling on windows, doing according to the instructions : MSVC 2012, CMake 3+, Boost 1.55
cmake -G "Visual Studio 11 Win64" -DBOOST_ROOT="C:/local/boost_1_55_0" -DBOOST_LIBRARYDIR="C:/local/boost_1_55_0/lib64-msvc-11.0"
Then I open INSTALL.vcxproj in visual studio 2012, do build and get these kinds of errors :

7>C:\local\boost_1_55_0\boost/serialization/throw_exception.hpp(30): error C2039: 'throw_exception' : is not a member of 'boost' (C:\Build\cryptonote\tests\core_tests\block_validation.cpp)
6>c:\build\cryptonote\contrib\epee\include\misc_log_ex.h(50): fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory (C:\Build\cryptonote\src\common\util.cpp)

These two errors repeat many times and additionally warnings.

Thank you !
Posts: 1
Joined: Tue Dec 02, 2014 7:02 pm

Re: Cryptonote compile on windows issue

Postby Maurice.P » Wed Dec 03, 2014 4:47 pm


What you've got to do is avoid opening INSTALL.vcproj . Try Project.sln instead. That should help.
Posts: 63
Joined: Wed Mar 26, 2014 3:26 pm

Re: Cryptonote compile on windows issue

Postby mikenekro » Thu Feb 26, 2015 3:03 am

I ran into similar issues with INSTALL.vcxproj. I also found that I could cmake the files with "cmake -G "Visual Studio xx" .." instead of "cmake -G "Visual Studio xx Win64" .." to make a 32 bit version. xx being, of course, your version of msvc. 2012 is 11, 2013 is 12

Basically you can build without even touching INSTALL.vcxproj.

I'm pretty sure you can use ALL_BUILD.vcxproj to build them all correctly but I am not sure since I couldn't build them all at one time. If not that then it's ZERO_CHECK.vcxproj because ZERO_CHECK.vcxproj is the first file to be built in the build order.

My computer doesn't have enough power to build all of the files at once so I had to do each file individually. I guess 4 core proccessors, 1TB HD and 12GB RAM isn't enough for that because my computer kept freezing.

So open up one of the vcxproj files that opens up all of the build files, I used ALL_BUILD.vcxproj. Once it has fully loaded you should see all of the build files and folders that cmake compiled on the right hand side of the window. On the tool bar at the top go to Build > Configuration Manager then set the active solution configuration to "release" and make sure your active solution platform is correct for the build type you specified when compiling with cmake. such as "Visual Studio 12" .. or "Visual Studio 11 Win64" .. etc.

In the configuration manager you can also check off which packages you would like to build. If you are just going to build them all by hand, then it doesn't matter, but you need to make sure they all say "release" otherwise the dependencies will be built in different folders etc. and won't be able to find them.

Next, if you are going to build by hand, you need to check what the build order is. From the toolbar go to Project > Project Build Order and write down this order from top to bottom. Top being the first files to build.

Then from the project files on the right hand side of the screen, right click on the first build object, which should be "ZERO_CHECK", and click build then go through the list.

If you need to stop a build, on the toolbar under Build, a "stop build" button should appear (or something similar as I cannot recall exactally what it said). Just click that.

Under project build order, I did not have to build anything after ALL_BUILD including ALL_BUILD and the daemon, wallet and miner still work.

I hope you figure/figured it out!
Posts: 11
Joined: Fri Feb 20, 2015 5:43 am

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest