我想用在Ubuntu make命令来建立一个图书馆,我收到此错误信息:加入C++ 11支持的Makefile
In file included from /usr/include/c++/4.7/cstdint:35:0,
from /home/mohammad/face-analysis-sdk-stable/src/utils/helpers.hpp:26,
from /home/mohammad/face-analysis-sdk-stable/src/utils/command-line-arguments.cpp:21:
/usr/include/c++/4.7/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
make[2]: *** [src/utils/CMakeFiles/utilities.dir/command-line-arguments.cpp.o] Error 1
make[1]: *** [src/utils/CMakeFiles/utilities.dir/all] Error 2
make: *** [all] Error 2
我明白,我需要添加C++ 11标志某处,但我从来没有使用过make文件,我查看了make文件,我找不到应该在哪里添加这个。 我找不到任何提及g ++或编译标志或任何东西。
以下是make文件的一部分,请问我该编辑小麦吗?
# CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 2.8
# Default target executed when no arguments are given to make. default_target: all .PHONY : default_target
#=============================================================================
# Special targets provided by cmake.
# Disable implicit rules so canonical targets will work. .SUFFIXES:
# Remove some rules from gmake that .SUFFIXES does not remove. SUFFIXES =
.SUFFIXES: .hpux_make_needs_suffix_list
# Suppress display of executed commands. $(VERBOSE).SILENT:
# A target that is always out of date. cmake_force: .PHONY : cmake_force
#=============================================================================
# Set environment variables for the build.
# The shell in which to execute make rules. SHELL = /bin/sh
# The CMake executable. CMAKE_COMMAND = /usr/bin/cmake
# The command to remove a file. RM = /usr/bin/cmake -E remove -f
# The program to use to edit the cache. CMAKE_EDIT_COMMAND = /usr/bin/cmake-gui
# The top-level source directory on which CMake was run. CMAKE_SOURCE_DIR = /home/mohammad/face-analysis-sdk-stable
# The top-level build directory on which CMake was run. CMAKE_BINARY_DIR = /home/mohammad/face-analysis-sdk-stable/build
#=============================================================================
# Targets provided globally by CMake.
# Special rule for the target edit_cache edit_cache: @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..." /usr/bin/cmake-gui
-H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) .PHONY : edit_cache
# Special rule for the target edit_cache edit_cache/fast: edit_cache .PHONY : edit_cache/fast
# Special rule for the target rebuild_cache rebuild_cache: @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." /usr/bin/cmake
-H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) .PHONY : rebuild_cache
# Special rule for the target rebuild_cache rebuild_cache/fast: rebuild_cache .PHONY : rebuild_cache/fast
# The main all target all: cmake_check_build_system $(CMAKE_COMMAND) -E cmake_progress_start /home/mohammad/face-analysis-sdk-stable/build/CMakeFiles /home/mohammad/face-analysis-sdk-stable/build/CMakeFiles/progress.marks $(MAKE) -f CMakeFiles/Makefile2 all $(CMAKE_COMMAND) -E cmake_progress_start /home/mohammad/face-analysis-sdk-stable/build/CMakeFiles 0 .PHONY : all
# The main clean target clean: $(MAKE) -f CMakeFiles/Makefile2 clean .PHONY : clean
# The main clean target clean/fast: clean .PHONY : clean/fast
# Prepare targets for installation. preinstall: all $(MAKE) -f CMakeFiles/Makefile2 preinstall .PHONY : preinstall
# Prepare targets for installation. preinstall/fast: $(MAKE) -f CMakeFiles/Makefile2 preinstall .PHONY : preinstall/fast
# clear depends depend: $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 .PHONY : depend
#=============================================================================
# Target rules for targets named utilities
# Build rule for target. utilities: cmake_check_build_system $(MAKE) -f CMakeFiles/Makefile2 utilities .PHONY : utilities
# fast build rule for target. utilities/fast: $(MAKE) -f src/utils/CMakeFiles/utilities.dir/build.make src/utils/CMakeFiles/utilities.dir/build .PHONY : utilities/fast
如果您需要完整的C++ 11支持,您需要超过4.8.1版的gcc版本,但以前的版本仅对此版本的标准提供部分和不完整的支持。 – user2485710
通常在某处有一个'CXX_FLAGS'变量,你可以在其中添加'-std = C++ 11' –
如果你仍然可以访问它,你应该真的编辑'CMakeFiles.txt'文件,或者改变用于例如“CXXFLAGS” 'ccmake'。您发布的文件是生成的文件。 –