diff --git a/COPYING b/COPYING
index a0a85a7..c0cd90e 100644
--- a/COPYING
+++ b/COPYING
@@ -26,4 +26,3 @@
 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
diff --git a/INSTALL.md b/INSTALL.md
index 64252fd..9785539 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -6,7 +6,7 @@
 
 Required:
 
-* [ndn-cpp-dev and its dependencies](https://github.com/named-data/ndn-cpp-dev)
+* [ndn-cxx and its dependencies](https://github.com/named-data/ndn-cxx)
 * sqlite3
 * Boost libraries
 
diff --git a/README.md b/README.md
index e5ce613..2212a70 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
 
 * http://redmine.named-data.net/projects/repo-ng/wiki
 
-**ndn-repo-ng** uses [ndn-cpp-dev](https://github.com/cawka/ndn-cpp) library as NDN
+**ndn-repo-ng** uses [ndn-cxx](https://github.com/named-data/ndn-cxx) library as NDN
 development library, and uses sqlite3 as underlying storage.
 
 **ndn-repo-ng** is open source under a license described in the file COPYING.  While the
diff --git a/helpers/repo-command-parameter.hpp b/helpers/repo-command-parameter.hpp
index 5033f61..41532f8 100644
--- a/helpers/repo-command-parameter.hpp
+++ b/helpers/repo-command-parameter.hpp
@@ -7,9 +7,9 @@
 #ifndef REPO_HELPERS_REPO_COMMAND_PARAMETER_HPP
 #define REPO_HELPERS_REPO_COMMAND_PARAMETER_HPP
 
-#include <ndn-cpp-dev/encoding/encoding-buffer.hpp>
-#include <ndn-cpp-dev/name.hpp>
-#include <ndn-cpp-dev/selectors.hpp>
+#include <ndn-cxx/encoding/encoding-buffer.hpp>
+#include <ndn-cxx/name.hpp>
+#include <ndn-cxx/selectors.hpp>
 #include "repo-tlv.hpp"
 
 namespace repo {
diff --git a/helpers/repo-command-response.hpp b/helpers/repo-command-response.hpp
index 8c3a230..f0d15a7 100644
--- a/helpers/repo-command-response.hpp
+++ b/helpers/repo-command-response.hpp
@@ -7,9 +7,9 @@
 #ifndef REPO_HELPERS_REPO_COMMAND_RESPONSE_HPP
 #define REPO_HELPERS_REPO_COMMAND_RESPONSE_HPP
 
-#include <ndn-cpp-dev/encoding/block.hpp>
-#include <ndn-cpp-dev/encoding/encoding-buffer.hpp>
-#include <ndn-cpp-dev/encoding/tlv-nfd.hpp>
+#include <ndn-cxx/encoding/block.hpp>
+#include <ndn-cxx/encoding/encoding-buffer.hpp>
+#include <ndn-cxx/encoding/tlv-nfd.hpp>
 #include "repo-tlv.hpp"
 
 namespace repo {
diff --git a/helpers/repo-tlv.hpp b/helpers/repo-tlv.hpp
index d74bd22..05761b3 100644
--- a/helpers/repo-tlv.hpp
+++ b/helpers/repo-tlv.hpp
@@ -7,7 +7,7 @@
 #ifndef REPO_HELPERS_REPO_TLV_HPP
 #define REPO_HELPERS_REPO_TLV_HPP
 
-#include <ndn-cpp-dev/encoding/tlv.hpp>
+#include <ndn-cxx/encoding/tlv.hpp>
 
 namespace repo {
 namespace tlv {
diff --git a/ndn-handle/ndn-handle-common.hpp b/ndn-handle/ndn-handle-common.hpp
index 4f6ba67..44d279f 100644
--- a/ndn-handle/ndn-handle-common.hpp
+++ b/ndn-handle/ndn-handle-common.hpp
@@ -17,11 +17,11 @@
 #include <iostream>
 #include <time.h>
 #include <unistd.h>
-#include <ndn-cpp-dev/face.hpp>
-#include <ndn-cpp-dev/security/key-chain.hpp>
-#include <ndn-cpp-dev/util/command-interest-validator.hpp>
-#include <ndn-cpp-dev/util/time.hpp>
-#include <ndn-cpp-dev/util/scheduler.hpp>
+#include <ndn-cxx/face.hpp>
+#include <ndn-cxx/security/key-chain.hpp>
+#include <ndn-cxx/util/command-interest-validator.hpp>
+#include <ndn-cxx/util/time.hpp>
+#include <ndn-cxx/util/scheduler.hpp>
 #include <boost/random/mersenne_twister.hpp>
 #include <boost/random/uniform_int_distribution.hpp>
 #include <map>
diff --git a/server/repo.hpp b/server/repo.hpp
index d5cb653..045e0e0 100644
--- a/server/repo.hpp
+++ b/server/repo.hpp
@@ -18,8 +18,8 @@
 #include <iostream>
 #include <fstream>
 #include <vector>
-#include <ndn-cpp-dev/face.hpp>
-#include <ndn-cpp-dev/util/command-interest-validator.hpp>
+#include <ndn-cxx/face.hpp>
+#include <ndn-cxx/util/command-interest-validator.hpp>
 #include <boost/property_tree/ptree.hpp>
 #include <boost/property_tree/info_parser.hpp>
 
diff --git a/storage/storage-handle.hpp b/storage/storage-handle.hpp
index 767db6f..1552db7 100644
--- a/storage/storage-handle.hpp
+++ b/storage/storage-handle.hpp
@@ -10,11 +10,11 @@
 #include <string>
 #include <stdexcept>
 
-#include <ndn-cpp-dev/interest.hpp>
-#include <ndn-cpp-dev/name.hpp>
-#include <ndn-cpp-dev/data.hpp>
-#include <ndn-cpp-dev/selectors.hpp>
-#include <ndn-cpp-dev/key-locator.hpp>
+#include <ndn-cxx/interest.hpp>
+#include <ndn-cxx/name.hpp>
+#include <ndn-cxx/data.hpp>
+#include <ndn-cxx/selectors.hpp>
+#include <ndn-cxx/key-locator.hpp>
 
 #include "storage-method.hpp"
 
diff --git a/tests/dataset-fixtures.hpp b/tests/dataset-fixtures.hpp
index 8dfeb78..c7ead7d 100644
--- a/tests/dataset-fixtures.hpp
+++ b/tests/dataset-fixtures.hpp
@@ -7,7 +7,7 @@
 #ifndef REPO_TESTS_DATASET_FIXTURES_HPP
 #define REPO_TESTS_DATASET_FIXTURES_HPP
 
-#include <ndn-cpp-dev/security/key-chain.hpp>
+#include <ndn-cxx/security/key-chain.hpp>
 
 namespace repo {
 namespace tests {
diff --git a/tests/repo-command-parameter.cpp b/tests/repo-command-parameter.cpp
index 9b70636..25b3c98 100644
--- a/tests/repo-command-parameter.cpp
+++ b/tests/repo-command-parameter.cpp
@@ -5,7 +5,7 @@
  */
 
 #include "../helpers/repo-command-parameter.hpp"
-#include <ndn-cpp-dev/selectors.hpp>
+#include <ndn-cxx/selectors.hpp>
 
 #include <boost/test/unit_test.hpp>
 
diff --git a/wscript b/wscript
index 3a67d9a..92ee87e 100644
--- a/wscript
+++ b/wscript
@@ -25,8 +25,8 @@
     conf.check_cfg(package = 'sqlite3', args = ['--cflags', '--libs'],
                    uselib_store = 'SQLITE3', mandatory = True)
 
-    conf.check_cfg(package = 'libndn-cpp-dev', args = ['--cflags', '--libs'],
-                   uselib_store = 'NDNCPPDEV', mandatory = True)
+    conf.check_cfg(package = 'libndn-cxx', args = ['--cflags', '--libs'],
+                   uselib_store = 'NDN_CXX', mandatory = True)
 
     if conf.options.with_tests:
         conf.env['WITH_TESTS'] = True
@@ -57,7 +57,7 @@
                                     'helpers/*.cpp',
                                     'server/*.cpp'],
                                     excl=['server/server.cpp']),
-        use = 'NDNCPPDEV BOOST SQLITE3',
+        use = 'NDN_CXX BOOST SQLITE3',
         includes = ".",
         )
 
