Thread 'Building Boinc on windows 7/64bits 'Software not detected: Build tools...''

Message boards : BOINC Manager : Building Boinc on windows 7/64bits 'Software not detected: Build tools...'
Message board moderation

To post messages, you must log in.

AuthorMessage
Kangning

Send message
Joined: 7 Sep 17
Posts: 21
Germany
Message 84622 - Posted: 1 Feb 2018, 22:13:17 UTC

Hi,

I'm trying to build the BOINC manager on Windows7, 64 bit. with Visual Studio 2013

I follow your 'Compiling BOINC client software' instructions on wiki.
However Now i meet some problems.

Under command line.
When i perform' buildenv type release platform x64', I got:

Initializing BOINC Build Environment for Windows
Software Platform Detected: Visual Studio 2013
Software not detected: Build tools.....



When I perform 'build all' under /src/boinc , I got 'build is not recognize as an internal or external command, operable program or batch file'



Is there anyone who knows where is wrong?

My first thought is I didn't correct set the environment variable, but then I don't know what to do ....


Thanks for your help
Kangning
ID: 84622 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5129
United Kingdom
Message 84628 - Posted: 2 Feb 2018, 11:11:56 UTC - in response to Message 84622.  

I use the VS2013 build system, as shown in Compile Client - Windows, and I'm also running under Windows 7/64: it's a couple of years since I set it all up, but I don't remember having any difficulty with the instructions there.

You need both the BOINC source files and the VS2013 dependencies, expanded side-by-side in the same working directory. Then, double-clicking on the boinc_vs2013.sln file in win_build should launch the VS2013 development environment: select a sub-project in the right-hand pane (sounds like you want boincmgr), and then build from the main menu.

I'm not familiar with the command-line approach, but I just tried following the instructions and it worked without error:

D:\Sources_build\boinc_head\win_build>buildenv type release platform x64
Initializing BOINC Build Environment for Windows
Software Platform Detected: Visual Studio 2013

D:\Sources_build\boinc_head\win_build>build all
Building the World...
  Building BOINC:
    Success
  Building BOINC Manager:
    Success
  Building BOINC Command:
    Success
  Building BOINC Screen Saver:
    Success
  Building BOINC Screen Saver Controller:
    Success
  Building BOINC Service Controller:
    Success
  Building BOINC System Tray:
    Success

D:\Sources_build\boinc_head\win_build>
You can see how I executed both 'buildenv' and 'build' from the win_build folder in my working tree.

Please review all the steps you've taken so far, and post again if you can't get it to work.
ID: 84628 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5129
United Kingdom
Message 84738 - Posted: 10 Feb 2018, 21:24:39 UTC

Now I'm getting the same message when trying to compile the test v7.9.1 branch under VS2013

Comparing the output from the two builds, my previous 'head' build or v7.8.1 build (both of which still work) finishes

2>  Generating Code...
2>  boinc_cli_vs2013.vcxproj -> D:\Sources_build\boinc_7-8-1\win_build\.\Build\x64\Release\boinc.exe
2>  Initializing BOINC Build Environment for Windows
2>  Software Platform Detected: Visual Studio 2013
2>  Executing: updatedepends.cmd 
2>  
2>  sqlite3.dll: 3.8.1.0 3.8.1.0
2>  libcurld.dll:  
2>  libcurl.dll: 7.42.1.0 7.42.1.0
2>  ca-bundle.crt: - -
2>  libeay32.dll: 1.0.2.1 1.0.2.1
2>  ssleay32.dll: 1.0.2.1 1.0.2.1
2>  zlib1d.dll:  
2>  zlib1.dll: 1.2.8.0 1.2.8.0
2>  msvcp120d.dll:  
2>  msvcp120.dll: 12.0.21005.1 12.0.21005.1
2>  msvcr120d.dll:  
2>  msvcr120.dll: 12.0.21005.1 12.0.21005.1
whereas v7.9.1 finishes

2>  Generating Code...
2>  boinc_cli_vs2013.vcxproj -> D:\Sources_build\client_release_7-9-1\win_build\.\Build\x64\Release\boinc.exe
2>  Initializing BOINC Build Environment for Windows
2>  Software Platform Detected: Visual Studio 2013
2>  Software NOT Detected: Build Tools...
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: The command ""D:\Sources_build\client_release_7-9-1\win_build\\buildenv.cmd" devenvdir "D:\Program Files (x86)\Common7\IDE\" type "Release" platform "x64" exec updatedepends.cmd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :VCEnd" exited with code 2.
Stackoverflow suggests that this might be a copying error (confusion between folder and file name). The only other difference I can see between the builds is that v7.9.1 references a new file, project_list.cpp

Looking through buildenv.cmd, the error message 'Software NOT Detected: Build Tools...' occurs if build.cmd doesn't exist in boinc_depends_win_vs2013 - but I'm using the same 'depends' folder for both build attempts, and it's there.

Building boincmgr ends with the same error message. In both cases, the binary executable is created (I'll test them in the morning), but the normal set of DLLs are not copied to the release directory.

Line 132 of Microsoft.CppCommon.targets is

<Exec Command="%(PostBuildEvent.Command)$(_BuildSuffix)" Condition="'%(PostBuildEvent.Command)' != ''"/>
I think I'm stuck there.
ID: 84738 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5129
United Kingdom
Message 84739 - Posted: 10 Feb 2018, 21:48:01 UTC

Tried the command-line variant too:

D:\Sources_build\client_release_7-9-1\win_build>buildenv type release platform x64
Initializing BOINC Build Environment for Windows
Software Platform Detected: Visual Studio 2013
Software NOT Detected: Build Tools...

D:\Sources_build\client_release_7-9-1\win_build>build all
'build' is not recognized as an internal or external command,
operable program or batch file.


D:\Sources_build>fc D:\Sources_build\boinc_head\win_build\buildenv.cmd D:\Sources_build\client_release_7-9-1\win_build\buildenv.cmd
Comparing files D:\SOURCES_BUILD\BOINC_HEAD\WIN_BUILD\buildenv.cmd and D:\SOURCES_BUILD\CLIENT_RELEASE_7-9-1\WIN_BUILD\BUILDENV.CMD
FC: no differences encountered
ID: 84739 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5129
United Kingdom
Message 84740 - Posted: 10 Feb 2018, 21:58:34 UTC

Ah - cracked it. Path length limitation. Same folder renamed:

D:\Sources_build\client_rel\win_build>buildenv type release platform x64
Initializing BOINC Build Environment for Windows
Software Platform Detected: Visual Studio 2013

D:\Sources_build\client_rel\win_build>build all
Building the World...
  Building BOINC:
    Success
  Building BOINC Manager:
    Success
  Building BOINC Command:
    Success
  Building BOINC Screen Saver:
    Success
  Building BOINC Screen Saver Controller:
    Success
  Building BOINC Service Controller:
    Success
  Building BOINC System Tray:
    Success
and all the libraries are in the output folder.

Using D:\Sources_build\boinc_7-9-1\win_build works too.
ID: 84740 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5129
United Kingdom
Message 84751 - Posted: 11 Feb 2018, 11:36:12 UTC - in response to Message 84740.  
Last modified: 11 Feb 2018, 11:41:52 UTC

It seems like the code sub-directory name can be no longer than 13 characters.

client_r_7-9-1		fails
client__7-9-1		works
Tested with command line only - it's quicker. The length of the top-level folder name seems not to matter. Updated documentation.
ID: 84751 · Report as offensive

Message boards : BOINC Manager : Building Boinc on windows 7/64bits 'Software not detected: Build tools...'

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.