|
I'm interested in playing with the Veracity source. How do I set up a development environment and get Veracity to compile on Windows? |
|
Note: These instructions are for Veracity 2.0 source builds. If you are building an earlier version of Veracity, follow the instructions found in IntroductionAssumed - you are running Windows Vista or Windows 7, and have Visual Studio 2010 (or the equivalent Platform SDK) installed. Using the Platform SDK or the Express Edition of Visual Studio means that you will be unable to build the Tortoise system components, however, because they require the ATL library which is not included in those toolsets. Get the SourceThere are two options.
or
Unpack or checkout to the directory of your choice - for brevity, we'll pretend
you put it under Install PrerequisitesInstall CMakeGrab cmake from cmake.org. If you're using the Platform SDK, you'll need 2.8.4 or later, otherwise you'll need 2.8.3 or later. Install CMake, making sure to add cmake to the PATH variable when prompted. Install CygwinCygwin is used to run a script that builds Veracity's third-party dependencies. That is the only thing it is used for, so it is possible to build and run Veracity without installing cygwin, but you will need to build the third-party dependencies by hand instead of using the script to do it for you. It's a long process, but you can just read throught the script and and do what it would do. Visit cygwin.com, grab and run the setup utility from there. In addition to the stock Cygwin tools, you'll also need:
Add cygwin to PATHC:\cygwin\bin needs to be in your path for building the third-party libraries and for running the test suite. You can add it temporarily in a command prompt, e.g.
or add it permanently to your Windows user's path. Create a Veracity Build DirectoryYou must open a Command Prompt that has the correct environment configured. All the supported toolsets come with shortcuts in the Windows Start menu that will configure such a prompt for you automatically:
If (and only if) you're going to be building 64-bit builds with the Platform SDK, then you must also manually set one environment variable in the resulting command prompt:
From that command prompt,
Then, to create a Visual Studio 2010 solution:
Or, to create a solution for a 64-bit build:
If using the Platform SDK, generate makefiles for NMake instead (this is also an option for Visual Studio users, if you'd rather build with NMake than the IDE):
Add vv-thirdparty bin to PATHThe first time you perform cmake -G, the script will also download and build
third party libraries Veracity needs, in Once vv-thirdparty is created, you'll need to add the binary directory to your PATH:
or for 64-bit builds:
Build VeracityYou now have a build tree, replete with Makefiles or Project files. For Visual Studio users, simply open the solution,
Visual Studio Express Edition users have two additional steps here:
For Platform SDK users (or Visual Studio users building with NMake instead of the IDE):
Run the Test SuiteOnly builds that have passed the test suite on all of SourceGear's in-house build machines are ever published. To run the test suite for yourself:
All tests should pass. If there are failures, you can consult the logs. Install VeracityThe Command Line ApplicationsTo "install" veracity on your computer, update your PATH again, this time to include the Veracity command line tools, vv and vscript. If you built with a Visual Studio IDE, add these to your PATH:
If you built with NMake, add these:
Enable the server (and bug tracking)In order to enable Veracity's scrum bug tracking module or to run a veracity server you will also need to have a config setting called "server/files" pointed at a certain location. Run:
The Tortoise ClientImportant: For Tortoise, Debug and Release builds make a very big difference. Only Release builds will be loaded by Windows Explorer. Debug builds will only be loaded by Windows Explorer if there is a debugger attached to the explorer process. This is done to prevent a long-lived process from loading the dll, which would prevent the dll from being overwritten on a build. If you want to try the Veracity Tortoise Client, which allows you to perform Veracity operations directly from Windows Explorer, you'll need to run one of the following commands from an administrator (elevated) command prompt: If you used Visual Studio for the build, run this command:
If your build was an NMake build:
Note for 64-bit users: Windows Explorer on 64-bit systems is a 64-bit process. You must build Veracity as 64-bit in order to integrate with it. Lastly, keep in mind that VeracityTortoise.dll can't be built with Visual Studio Express Edition or the Platform SDK, so the DLL won't be there if you used one of those toolsets.
link
This answer is marked "community wiki".
In the "Build vv-thirdparty" section you say "This will create the vv-thirdparty folder at %USERPROFILE%\v\vv-thirdparty." actually, it creates the folder at %USERPROFILE%\v\veracity\vv-thirdparty.
(Nov 26 '11 at 07:58)
Arne Mertz
1
Hi Ian, I am building Veracity again - the Problem with the thirdparty build remains, could you fix either your description or the thirdparty build-script? Regards, Arne
(Jan 07 '12 at 08:23)
Arne Mertz
1
@Arne Sorry about that. Fixed. The other platforms' instructions should get updated later today.
(Jan 09 '12 at 08:36)
Ian Olsen ♦♦
You need C:\cygwin\bin in your path when vv-thirdparty gets built (and when running the test suite). That's probably why you have no zlib headers. I've updated the instructions again with that change.
(Jan 09 '12 at 09:55)
Ian Olsen ♦♦
see my last comment - even with C:\cygwin\bin in the path I get those errors.
(Jan 09 '12 at 10:21)
Arne Mertz
Was it in the path when vv-thirdparty was created? If that's not the issue, the next thing to check would be the zlib build log: vv-thirdparty/builds-[amd64/x86]/zlib-1.2.5/build_log.txt.
(Jan 09 '12 at 10:27)
Ian Olsen ♦♦
ok, I think I got it: when I first tried to build the solution files, cmake noticed the vv-thirdparty folder wasn't there at all, so it tried to build vv-thirdparty but because of the missing cygwin path it failed after creating the directories (vv-thirdparty/builds-x86 existed but was empty) So, setting the path and deleting the vv-thirdparty dir did the job. Thanks for the hint and for your patience :)
(Jan 09 '12 at 12:30)
Arne Mertz
Arne - when you're compiling at the end with cygwin in your path - where in your path is
(Jan 10 '12 at 09:53)
Paul Roub ♦♦
Need help. With the latest cygwin, the cmake step fails: C:Usersherivdebug>cmake -G "Visual Studio 10" ..veracity The C compiler identification is unknown The CXX compiler identification is unknown Machine type: x86 Expected vv-thirdparty path: C:/Users/heri/v/veracity/../vv-thirdparty/x86 CMake Error at C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/FindPackageHan dleStandardArgs.cmake:97 (message): Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -- Configuring incomplete, errors occurred!
(Nov 23 '12 at 03:52)
heri16
showing 5 of 9
show all
|
|
Need help. With the latest cygwin, the cmake step fails: C:Usersherivdebug>cmake -G "Visual Studio 10" ..veracity -- The C compiler identification is unknown -- The CXX compiler identification is unknown -- Machine type: x86 -- Expected vv-thirdparty path: C:/Users/heri/v/veracity/../vv-thirdparty/x86 CMake Error at C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/FindPackageHan dleStandardArgs.cmake:97 (message): Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) Call Stack (most recent call first): C:/Program Files/CMake 2.8/share/cmake-2.8/Modules/FindPackageHandleStandardAr gs.cmake:291 (_FPHSA_FAILURE_MESSAGE) cmake_modules/FindZLIB.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) common-CMakeLists.txt:323 (find_package) CMakeLists.txt:28 (include) -- Configuring incomplete, errors occurred! |