Mixer in Visual Studio erstellen

723
Whitequill Riclo

Ich baue Blender unter Windows in Visual Studio 2017.

Ich habe die Quelle für den Mixer über Git abgerufen und die Libs über svn abgerufen, die ich heruntergeladen und installiert habe.

Ich bekomme die folgende Ausgabe vom Laufen build.bat release.

CMake Error: Could not create named generator Visual Studio 12 2013 Win64  Generators Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 11 2012 [arch] = Generates Visual Studio 2012 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 10 2010 [arch] = Generates Visual Studio 2010 project files. Optional [arch] can be "Win64" or "IA64". Visual Studio 9 2008 [arch] = Generates Visual Studio 2008 project files. Optional [arch] can be "Win64" or "IA64". Visual Studio 8 2005 [arch] = Deprecated. Generates Visual Studio 2005 project files. Optional [arch] can be "Win64". Borland Makefiles = Generates Borland makefiles. NMake Makefiles = Generates NMake makefiles. NMake Makefiles JOM = Generates JOM makefiles. Green Hills MULTI = Generates Green Hills MULTI files (experimental, work-in-progress). MSYS Makefiles = Generates MSYS makefiles. MinGW Makefiles = Generates a make file for use with mingw32-make. Unix Makefiles = Generates standard UNIX makefiles. Ninja = Generates build.ninja files. Watcom WMake = Generates Watcom WMake makefiles. CodeBlocks - MinGW Makefiles = Generates CodeBlocks project files. CodeBlocks - NMake Makefiles = Generates CodeBlocks project files. CodeBlocks - NMake Makefiles JOM = Generates CodeBlocks project files. CodeBlocks - Ninja = Generates CodeBlocks project files. CodeBlocks - Unix Makefiles = Generates CodeBlocks project files. CodeLite - MinGW Makefiles = Generates CodeLite project files. CodeLite - NMake Makefiles = Generates CodeLite project files. CodeLite - Ninja = Generates CodeLite project files. CodeLite - Unix Makefiles = Generates CodeLite project files. Sublime Text 2 - MinGW Makefiles = Generates Sublime Text 2 project files. Sublime Text 2 - NMake Makefiles = Generates Sublime Text 2 project files. Sublime Text 2 - Ninja = Generates Sublime Text 2 project files. Sublime Text 2 - Unix Makefiles = Generates Sublime Text 2 project files. Kate - MinGW Makefiles = Generates Kate project files. Kate - NMake Makefiles = Generates Kate project files. Kate - Ninja = Generates Kate project files. Kate - Unix Makefiles = Generates Kate project files. Eclipse CDT4 - NMake Makefiles = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - MinGW Makefiles = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.  CMake Error: Could not create named generator Visual Studio 14 2013 Win64  Generators Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 11 2012 [arch] = Generates Visual Studio 2012 project files. Optional [arch] can be "Win64" or "ARM". Visual Studio 10 2010 [arch] = Generates Visual Studio 2010 project files. Optional [arch] can be "Win64" or "IA64". Visual Studio 9 2008 [arch] = Generates Visual Studio 2008 project files. Optional [arch] can be "Win64" or "IA64". Visual Studio 8 2005 [arch] = Deprecated. Generates Visual Studio 2005 project files. Optional [arch] can be "Win64". Borland Makefiles = Generates Borland makefiles. NMake Makefiles = Generates NMake makefiles. NMake Makefiles JOM = Generates JOM makefiles. Green Hills MULTI = Generates Green Hills MULTI files (experimental, work-in-progress). MSYS Makefiles = Generates MSYS makefiles. MinGW Makefiles = Generates a make file for use with mingw32-make. Unix Makefiles = Generates standard UNIX makefiles. Ninja = Generates build.ninja files. Watcom WMake = Generates Watcom WMake makefiles. CodeBlocks - MinGW Makefiles = Generates CodeBlocks project files. CodeBlocks - NMake Makefiles = Generates CodeBlocks project files. CodeBlocks - NMake Makefiles JOM = Generates CodeBlocks project files. CodeBlocks - Ninja = Generates CodeBlocks project files. CodeBlocks - Unix Makefiles = Generates CodeBlocks project files. CodeLite - MinGW Makefiles = Generates CodeLite project files. CodeLite - NMake Makefiles = Generates CodeLite project files. CodeLite - Ninja = Generates CodeLite project files. CodeLite - Unix Makefiles = Generates CodeLite project files. Sublime Text 2 - MinGW Makefiles = Generates Sublime Text 2 project files. Sublime Text 2 - NMake Makefiles = Generates Sublime Text 2 project files. Sublime Text 2 - Ninja = Generates Sublime Text 2 project files. Sublime Text 2 - Unix Makefiles = Generates Sublime Text 2 project files. Kate - MinGW Makefiles = Generates Kate project files. Kate - NMake Makefiles = Generates Kate project files. Kate - Ninja = Generates Kate project files. Kate - Unix Makefiles = Generates Kate project files. Eclipse CDT4 - NMake Makefiles = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - MinGW Makefiles = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.  Microsoft (R) Build Engine version 15.4.8.50001 for .NET Framework Copyright (C) Microsoft Corporation. All rights reserved. 
MSBUILD : error MSB1009: Project file does not exist. Switch: D:\Users\brazg\Documents\GitHub\blender\..\build_windows_Release_x64_vc14_Release\Blender.sln "Build Failed"

Es ist nicht gut, etwas über vc12 zu verwenden, was ich versuche, es zum Laufen zu bringen.

Fehlt mir etwas?

In make.bat gibt es auch Code, der auf vc 2017 verweist:

else if "%1" == "x64" ( set BUILD_ARCH=x64 ) else if "%1" == "2017" (  set BUILD_VS_VER=15 set BUILD_VS_YEAR=2017 set BUILD_VS_LIBDIRPOST=vc14 
0
Es funktioniert jetzt! Ich bin sehr grün mit Visual Studio Batch-Skripts. Ich bin mehr mit GCC vertraut. Vielen Dank! :) Whitequill Riclo vor 6 Jahren 0

1 Antwort auf die Frage

0
Whitequill Riclo

Es gab mehr die eine Datei, die bearbeitet werden musste.

Erstens: platform_win32.cmake hatte Fehler.

Ich änderte set(LIBDIR $/../lib/$_vc14)die set(LIBDIR $/../lib/$_vc15)Zeilen in den Zeilen 147 und 150. Dadurch wurde der Fehler behoben, dass win32_vc14 nicht vorhanden war. Die Zeilen 147 und 150 beziehen sich auf das Erkennen von VS2017, sie hätten also win32_vc15 sagen sollen .

Als nächstes musste make.bat etwas bearbeitet werden, aber nicht so sehr. Der Block für die Überprüfung der Integritätsprüfung hat die Zeilen 187 bis 202 auskommentiert;

:sanity_checks REM Sanity Checks ::where /Q msbuild ::if %ERRORLEVEL% NEQ 0 ( :: if "%BUILD_VS_VER%"=="12" ( :: rem vs12 not found, try vs14 :: echo Visual Studio 2013 not found, trying Visual Studio 2015. :: set BUILD_VS_VER=15 :: set BUILD_VS_YEAR=2017 :: set BUILD_VS_LIBDIRPOST=vc15 :: goto DetectMSVC :: ) else ( ::"" echo Error: "MSBuild" command not in the PATH. :: echo You must have MSVC installed and run this from the "Developer Command ::Prompt" :: echo ^(available from Visual Studio's Start menu entry^), aborting! :: goto EOF :: ) ::)

und Zeilen 83 bis 87:

::set BUILD_VS_VER=14 ::set BUILD_VS_YEAR=2015 ::set BUILD_VS_LIBDIRPOST=vc14 ::) else if "%1" == "2013" ( ::set BUILD_VS_VER=12 ::set BUILD_VS_YEAR=2013 ::set BUILD_VS_LIBDIRPOST=vc12

ansonsten sucht es immer noch nach vc12 .

Zeile 81 sollte auch bearbeitet werden: set BUILD_VS_LIBDIRPOST=vc14auf set BUILD_VS_LIBDIRPOST=vc15 Zeile 81 auch in Bezug ist VS2017 zu finden, so bin ich nicht sicher, warum es eingestellt wurde VC14 .

Bearbeiten : Zeile 162: if DEFINED VisualStudioVersion goto msvc_detect_finallymuss geändert werden, um zu sagen:if DEFINED VisualStudioVersion goto msvc_detect_finally_2017

Danach lief das Kompilieren für 01: 29: 42.49 einwandfrei, schlug aber dennoch fehl, wahrscheinlich, weil es pthread.h oder zlib.h oder einige andere Header-Dateien nicht finden konnte.

Vielen Dank für Ihre Hilfe @Ramhound. Ich werde mich bald mit Ihnen unterhalten, wenn Sie weitere Informationen haben. Ich füge einen Link zu meinem Build.log hinzu, falls dort etwas ist.

Build.log

Ich habe es mit Visual Studio 2013 x64 (vc12) versucht und hatte das gleiche Ergebnis wie 2017 x64 (vc15). Beide konnten nicht erstellt werden. Hier ist das Protokoll aus dem vc12-Build: [build.log vc12] (https://pastebin.com/RC17Hk8Q) Whitequill Riclo vor 6 Jahren 0
Ich füge hinzu, dass ich / maxcpucount auf 8 geändert habe, um mein System besser darzustellen. Es ist standardmäßig auf 2 eingestellt. In meiner Option sollte ein Compiler die Anzahl der Kerne oder logischen Prozessoren überprüfen und beim Kompilieren für eine CPU optimieren. Whitequill Riclo vor 6 Jahren 0
Bedeutet _ / maxcpucount_: CPU-Kerne; logische Prozessoren; Threads oder physische Prozessoren? Whitequill Riclo vor 6 Jahren 0