2013-08-17 62 views
5

Tôi đang cố gắng bật C++ 11 cho gcc 4.6; Tôi đang sử dụng autconf và tôi đã thêm sau vào file configure.ac tôiKhông thể bật C++ 11 bằng cách sử dụng autoconf

AC_PREREQ(2.61) 
AC_INIT(SOLARCORE, 1.0.0, BUG-REPORT-ADDRESS) 
AM_INIT_AUTOMAKE([1.10 no-define foreign]) 
AC_CONFIG_MACRO_DIR([m4]) 
AC_CONFIG_SRCDIR([src/threading/node.h]) 
AC_CONFIG_HEADER([config.h]) 
AC_OUTPUT([Makefile src/threading/Makefile]) 

# Checks for programs. 
AC_PROG_CXX 
AC_PROG_CC 
#AC_LANG_PUSH([C++]) 
AC_LANG([C++]) 
AC_GNU_SOURCE 
AX_CXX_COMPILE_STDCXX_11(,[mandatory]) 
CXXFLAGS='-Wall -std=gnu++0x' 
AC_TYPE_SIZE_T 

AC_OUTPUT 

Tôi nhận được lỗi sau

./configure: dòng 4949: lỗi cú pháp gần bất ngờ thẻ ,mandatory' ./configure: line 4949: AX_CXX_COMPILE_STDCXX_11 (, bắt buộc)'

Tôi cũng đã thử AX_CXX_COMPILE_STDCXX_11 ([ext], [bắt buộc])

Tôi muốn bật C++ 11 để tôi có thể sử dụng. Tôi đã thử mà không có AX_CXX_COMPILE_STDCXX_11 và chỉ với CXXFLAGS trong Makefile của tôi nhưng nó không hoạt động. Vì vậy, xin vui lòng giúp đỡ. Cảm ơn.

Tìm câu trả lời: Phiên bản gần đây của AX_CXX_COMPILE_STDCXX_11 không cần đối số.

Trả lời

0

Bạn có chắc chắn mình có phiên bản macro mới nhất không? Đánh giá từ lịch sử có sẵn từ autoconf archive, phiên bản gốc của macro chỉ dự kiến ​​một đối số, không phải hai. Nếu bạn không có bản sửa đổi thứ hai hoặc thứ ba của bài kiểm tra, điều đó có thể giải quyết được sự cố của bạn.

+1

Tôi đã thử sử dụng một tài khoản nhưng sau đây đã bị xóa ./configure: dòng 5849: lỗi cú pháp gần mã thông báo không mong muốn 'bắt buộc' ./configure: line 5849: 'AX_CXX_COMPILE_STDCXX_11 (bắt buộc) ' – rkb

Các vấn đề liên quan