diff --git a/.waf-tools/default-compiler-flags.py b/.waf-tools/default-compiler-flags.py
index 91e9a7b..07f1feb 100644
--- a/.waf-tools/default-compiler-flags.py
+++ b/.waf-tools/default-compiler-flags.py
@@ -126,16 +126,12 @@
     def getGeneralFlags(self, conf):
         flags = super(GccFlags, self).getGeneralFlags(conf)
         version = tuple(int(i) for i in conf.env['CC_VERSION'])
-        if version < (4, 6, 0):
+        if version < (4, 8, 2):
             conf.fatal('The version of gcc you are using (%s) is too old.\n' %
                        '.'.join(conf.env['CC_VERSION']) +
-                       'The minimum supported gcc version is 4.6.0.')
-        elif version < (4, 7, 0):
-            flags['CXXFLAGS'] += ['-std=c++0x']
+                       'The minimum supported gcc version is 4.8.2.')
         else:
             flags['CXXFLAGS'] += ['-std=c++11']
-        if version < (4, 8, 0):
-            flags['DEFINES'] += ['_GLIBCXX_USE_NANOSLEEP'] # Bug #2499
         return flags
 
     def getDebugFlags(self, conf):
diff --git a/README-dev.md b/README-dev.md
index 3913124..f1975b3 100644
--- a/README-dev.md
+++ b/README-dev.md
@@ -112,5 +112,5 @@
 
 ### Command Line Arguments
 
-[Boost.Program\_options](http://www.boost.org/doc/libs/1_48_0/doc/html/program_options.html) is
+[Boost.Program\_options](http://www.boost.org/doc/libs/1_54_0/doc/html/program_options.html) is
 preferred over getopt(3) for parsing command line arguments.
diff --git a/tests/test-case.t.cpp.sample b/tests/test-case.t.cpp.sample
index 27c6d8a..7aa05f9 100644
--- a/tests/test-case.t.cpp.sample
+++ b/tests/test-case.t.cpp.sample
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2014-2015,  Arizona Board of Regents.
+ * Copyright (c) 2014-2016,  Arizona Board of Regents.
  *
  * This file is part of ndn-tools (Named Data Networking Essential Tools).
  * See AUTHORS.md for complete list of ndn-tools authors and contributors.
@@ -40,7 +40,7 @@
   int i = 0;
 
   // For reference of available Boost.Test macros, see
-  // http://www.boost.org/doc/libs/1_48_0/libs/test/doc/html/utf/testing-tools/reference.html
+  // http://www.boost.org/doc/libs/1_54_0/libs/test/doc/html/utf/testing-tools/reference.html
 
   BOOST_REQUIRE_NO_THROW(i = 1);
   BOOST_REQUIRE_EQUAL(i, 1);
