diff --git a/src/adjacency-list.cpp b/src/adjacency-list.cpp
index 5c98ed8..3e535ee 100644
--- a/src/adjacency-list.cpp
+++ b/src/adjacency-list.cpp
@@ -22,8 +22,10 @@
  **/
 #include <algorithm>
 #include <ndn-cxx/common.hpp>
+
 #include "adjacency-list.hpp"
 #include "adjacent.hpp"
+#include "common.hpp"
 #include "nlsr.hpp"
 #include "logger.hpp"
 
diff --git a/src/common.hpp b/src/common.hpp
new file mode 100644
index 0000000..d5da876
--- /dev/null
+++ b/src/common.hpp
@@ -0,0 +1,46 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014  University of Memphis,
+ *                     Regents of the University of California
+ *
+ * This file is part of NLSR (Named-data Link State Routing).
+ * See AUTHORS.md for complete list of NLSR authors and contributors.
+ *
+ * NLSR is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NLSR is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NLSR, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ **/
+
+#ifndef NLSR_COMMON_HPP
+#define NLSR_COMMON_HPP
+
+#include <ndn-cxx/common.hpp>
+
+namespace nlsr {
+
+using ndn::bind;
+using ndn::make_shared;
+using ndn::shared_ptr;
+using ndn::function;
+
+using ndn::_1;
+using ndn::_2;
+using ndn::_3;
+using ndn::_4;
+using ndn::_5;
+using ndn::_6;
+using ndn::_7;
+using ndn::_8;
+using ndn::_9;
+
+}
+
+#endif // NLSR_COMMON_HPP
diff --git a/src/communication/sync-logic-handler.cpp b/src/communication/sync-logic-handler.cpp
index 8e679ba..5e20795 100644
--- a/src/communication/sync-logic-handler.cpp
+++ b/src/communication/sync-logic-handler.cpp
@@ -22,6 +22,7 @@
  **/
 #include "sync-logic-handler.hpp"
 
+#include "common.hpp"
 #include "conf-parameter.hpp"
 #include "logger.hpp"
 #include "lsa.hpp"
diff --git a/src/name-prefix-list.cpp b/src/name-prefix-list.cpp
index 0be579f..6afdb54 100644
--- a/src/name-prefix-list.cpp
+++ b/src/name-prefix-list.cpp
@@ -25,6 +25,7 @@
 
 #include <ndn-cxx/common.hpp>
 
+#include "common.hpp"
 #include "name-prefix-list.hpp"
 #include "logger.hpp"
 
diff --git a/src/nlsr.hpp b/src/nlsr.hpp
index 866ad7c..de6f061 100644
--- a/src/nlsr.hpp
+++ b/src/nlsr.hpp
@@ -33,6 +33,7 @@
 #include <ndn-cxx/management/nfd-face-event-notification.hpp>
 #include <ndn-cxx/management/nfd-face-monitor.hpp>
 
+#include "common.hpp"
 #include "conf-parameter.hpp"
 #include "adjacency-list.hpp"
 #include "name-prefix-list.hpp"
diff --git a/src/route/face-map.cpp b/src/route/face-map.cpp
index 7251fc5..398ed4f 100644
--- a/src/route/face-map.cpp
+++ b/src/route/face-map.cpp
@@ -23,6 +23,8 @@
 #include <iostream>
 #include <list>
 #include <utility>
+
+#include "common.hpp"
 #include "logger.hpp"
 #include "face-map.hpp"
 
diff --git a/src/route/face-map.hpp b/src/route/face-map.hpp
index 4bc2b68..ccd801b 100644
--- a/src/route/face-map.hpp
+++ b/src/route/face-map.hpp
@@ -24,6 +24,7 @@
 #define NLSR_FACE_MAP_HPP
 
 #include <ndn-cxx/common.hpp>
+#include <algorithm>
 
 namespace nlsr {
 
diff --git a/src/route/fib.cpp b/src/route/fib.cpp
index 16ed8a8..efc8a45 100644
--- a/src/route/fib.cpp
+++ b/src/route/fib.cpp
@@ -25,6 +25,7 @@
 #include <ndn-cxx/common.hpp>
 
 #include "adjacency-list.hpp"
+#include "common.hpp"
 #include "conf-parameter.hpp"
 #include "nexthop-list.hpp"
 #include "face-map.hpp"
@@ -345,6 +346,11 @@
   }
 }
 
+typedef void(Fib::*RegisterPrefixCallback)(const ndn::nfd::ControlParameters&,
+                                           const ndn::nfd::ControlParameters&, uint8_t,
+                                           const CommandSucceedCallback&,
+                                           const CommandFailCallback&);
+
 void
 Fib::registerPrefix(const ndn::Name& namePrefix,
                     const std::string& faceUri,
@@ -364,9 +370,8 @@
     .setExpirationPeriod(timeout)
     .setOrigin(128);
   createFace(faceUri,
-             ndn::bind(&Fib::registerPrefixInNfd, this,_1,
-                       parameters,
-                       times, onSuccess, onFailure),
+             ndn::bind(static_cast<RegisterPrefixCallback>(&Fib::registerPrefixInNfd),
+                       this, _1, parameters, times, onSuccess, onFailure),
              onFailure);
 }
 
diff --git a/src/route/name-prefix-table-entry.cpp b/src/route/name-prefix-table-entry.cpp
index 1d20319..383a00c 100644
--- a/src/route/name-prefix-table-entry.cpp
+++ b/src/route/name-prefix-table-entry.cpp
@@ -22,6 +22,8 @@
  **/
 #include <list>
 #include <utility>
+
+#include "common.hpp"
 #include "name-prefix-table-entry.hpp"
 #include "routing-table-entry.hpp"
 #include "nexthop.hpp"
diff --git a/src/route/nexthop-list.cpp b/src/route/nexthop-list.cpp
index 9ef6fd3..7002ad8 100644
--- a/src/route/nexthop-list.cpp
+++ b/src/route/nexthop-list.cpp
@@ -21,6 +21,8 @@
  *
  **/
 #include <iostream>
+
+#include "common.hpp"
 #include "nexthop-list.hpp"
 #include "nexthop.hpp"
 #include "logger.hpp"
diff --git a/src/utility/face-controller.cpp b/src/utility/face-controller.cpp
index a0c615f..0aa5a1e 100644
--- a/src/utility/face-controller.cpp
+++ b/src/utility/face-controller.cpp
@@ -20,6 +20,8 @@
  **/
 
 #include "face-controller.hpp"
+
+#include "common.hpp"
 #include "logger.hpp"
 
 namespace nlsr {
