如何使用CMake构建发布配置和详细信息

时间:2017-12-06 14:04:39

标签: cmake verbose

我正在尝试使用CMake构建并传递两个选项:config:Release和VERBOSE=ON

cmake --build . --config Release -- VERBOSE=ON

在CMake of Visual中我有开关:

cmake -G "Visual Studio 14 2015"
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^

如果我只传递'--config Release'就行了。

现在它失败了这条消息:

15:40:51 MSBUILD : error MSB1008: Only one project can be specified.
15:40:51 Switch: VERBOSE=1
15:40:51 
15:40:51 For switch syntax, type "MSBuild /help"

1 个答案:

答案 0 :(得分:1)

MSBuild不理解

make

你可能知道来自Unix Makefile生成器的语法,其中设置例如。 putFileAs环境变量将为您提供详细输出。请注意,这是生成器的一个功能(即if( is_array($request->images)){ foreach ($request->images as $file) { $image = new Image(); $image->gallery_id = $gallery->id; $image->name = $file->getClientOriginalName(); $image->extension = $file->extension(); $image->size = 555; $image->save(); // Or any custom name as the third argument Storage::putFileAs($path, $file, $file->getClientOriginalName()); } } else { $image = new Image(); $image->gallery_id = $gallery->id; $image->name = $request->images->getClientOriginalName();; $image->save(); // Or any custom name as the third argument Storage::putFileAs($path, $request->images, $request->images->getClientOriginalName()); } return back(); ),而不是CMake的功能。因此,当切换到不同的生成器(在本例中为MSBuild)时,您必须找到一种不同的方法来获取与该生成器一起使用的详细输出。

对于MSBuild,那将是the /verbosity option。另请参阅this answer for details

至于CMAKE_VERBOSE_MAKEFILE选项,该手册明确指出此选项仅对Makefile生成器有效(由我强调):

  

用户可以在其本地构建树中启用该选项以获得更多   来自Makefile构建的详细输出 并显示每个命令行   推出。