[Ndn-interest] How to develop & run an appplication program on NDNx ?

Thompson, Jeff jefft0 at remap.ucla.edu
Wed Feb 19 11:55:16 PST 2014


Hello.

When you install with
sudo make install
does it put the NDN-CPP libraries in your system's normal library include path?

> do my source codes need any #include other than "#include <iostream>?

You only need to include iostream if your application needs cout or other iostream functions.
For includes from NDN-CPP, your application may only need to include <ndn-cpp/face.hpp>. For example, see the following test code:
https://github.com/named-data/ndn-cpp/blob/master/tests/test-get-async.cpp

Thanks,
- Jeff T

On 2/18/14 12:04 AM, "Daiki Kaneko" <kaneko_daiki at y.akane.waseda.jp<mailto:kaneko_daiki at y.akane.waseda.jp>> wrote:

Hello again, Jeff.

Oh, you plan to release another implementation of NDN.
I want some result in about a month (not complete one is OK).

It is possible for us to write source codes in C++. We can study that
if we don't understand it enough.

I have a question about compiling source codes using CCL API for C++.
I reached a hypothesis that, when compiling (& linking), I can use the
command below:

     g++ my_source_code_1.cpp [my_source_code_2.cpp ...] <ndn-cpp-0.2
dir>/.libs/libndn-cpp.a

Is that right?
And do my source codes need any #include other than "#include <iostream>?"

--
Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ.
Daiki Kaneko  (金子 大希)
kaneko_daiki at y.akane.waseda.jp<mailto:kaneko_daiki at y.akane.waseda.jp>


2014-02-17 6:49 GMT+09:00 Burke, Jeff <jburke at remap.ucla.edu<mailto:jburke at remap.ucla.edu>>:
Apologies for the long-delayed reply.

We are a little bit away from announcing a new forwarder project that
should make your application much easier to attempt (in C++). It will be
easier to deal with for this sort of thing than NDNx.  What is your
timeline for the project?

Regarding the chat, I would encourage this to be written in the C++,
Python, or Javascript APIs rather than C.  It will be easier to write and
debug.  Is this a possibility?

best,
Jeff


On 2/4/14, 12:40 AM, "Daiki Kaneko" <kaneko_daiki at y.akane.waseda.jp<mailto:kaneko_daiki at y.akane.waseda.jp>> wrote:

Thanks for your reply, Jeff.

Now I plan to develop an application software in C.
The application needs
- to produce new interest packets based on received interest packets ,and
- to modify some PIT entries.
I want to add these features to normal NDN nodes.

In addition, one of my peers ( ryo-iwane-ryo923 at akane.waseda.jp<mailto:ryo-iwane-ryo923 at akane.waseda.jp> )
wants to make a chat program.
The program is different from ndnChat, in that:
- There is no chat rooms.
- There will be a manager node, which manages users' IDs.
- The manager will return a content name prefix, which represents each
user in content names of his/her messages.
- The queries to the manager will be done by interest packets.

I have seen the reference for NDNx C (
http://named-data.net/doc/0.2/ccode/html/index.html ), but frankly
speaking, I don't understand what to do even after seeing the
reference.

--
Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ., Japan
Daiki Kaneko  (金子 大希)
kaneko_daiki at y.akane.waseda.jp<mailto:kaneko_daiki at y.akane.waseda.jp>


2014-02-02 Burke, Jeff <jburke at remap.ucla.edu<mailto:jburke at remap.ucla.edu>>:

Hi Daiki,

Thanks for your interest!

There are a few different libraries for NDN development right now:

Included in the NDNx package are a C library and Java library, which are
older and do not follow the CCL API.  These are based on the original
CCNx
libraries (of which NDNx is a fork) and will be deprecated. However, you
could use these for application development of simple applications - and
the apps in the NDNx distribution use them.

The NDN-CCL is an emerging set of libraries for general purpose
application development that have the advantage of being largely wire
format independent but simpler than the NDNx Java library. They will be
supported into the future as the codebase evolves.  There is a C++
library, a Python library, and a Javascript library, referred to here:
         http://named-data.net/codebase/platform/
For the CCL, we also have a preliminary but incomplete Java library -
https://github.com/named-data/jndn.

All of the libraries (NDNx C and Java, NDN-CCL C++, Javascript, Python
and
eventually Java) work with the NDNx forwarder (ndnd).  So you can take
your pick.  There are also other libraries that we use for development,
but I would stick with these for simplicity.  Example code for serving
files can be found in these projects:
https://github.com/named-data/NDNFS
  and  https://github.com/named-data/ChronoShare.

I hope this helps. Please let us know more about your language
preferences
and we can point you to some good starting places.

Jeff


On 1/30/14, 11:51 PM, "Daiki Kaneko" <kaneko_daiki at y.akane.waseda.jp<mailto:kaneko_daiki at y.akane.waseda.jp>>
wrote:

Hello, all.

I would like to develop and run an application program over NDN, using
NDNx.
I built NDNx, and succeeded to put a file in a repository, and to let
a colleague retrieve the file.

However, when it comes to develop an application software that runs on
NDNx, I don't know what to do at all.
I found "NDN Common Client Libraries API"
(http://named-data.net/codebase/platform/documentation/ndn-ccl-api/ ),
and I think I can use this API to develop a program running on NDNx.
Is it right?
Even if it's right, the question is still remaining: how to run my
program?

Besides, I wonder why the ndnChat program (in /apps directory) is
written in Java, though the API supports only C++, JS, and Python,
and,
"Function and class documentation" is available only for C, C++, and JS
?

--
Dept. of Comp. Sci. and Eng., Waseda Univ., Japan
Daiki Kaneko  (金子 大希)
kaneko_daiki at y.akane.waseda.jp<mailto:kaneko_daiki at y.akane.waseda.jp>
_______________________________________________
Ndn-interest mailing list
Ndn-interest at lists.cs.ucla.edu<mailto:Ndn-interest at lists.cs.ucla.edu>
http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest


_______________________________________________
Ndn-interest mailing list
Ndn-interest at lists.cs.ucla.edu<mailto:Ndn-interest at lists.cs.ucla.edu>
http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20140219/4bd1d7ba/attachment.html>


More information about the Ndn-interest mailing list