servalproject / serval-dna

The Serval Project's core daemon that implements Distributed Numbering Architecture (DNA), MDP, VoMP, Rhizome, MeshMS, etc.
http://servalproject.org
Other
170 stars 81 forks source link

dev_next branch libsodium #105

Closed gh0st42 closed 7 years ago

gh0st42 commented 8 years ago

Since we experienced some rhizome sync errors during our tests for the paper Paul suggested that we try the dev_next branch. We did a clean clone, autoreconf, configure and make there. It always fails compiling because sodium.h and the whole source of libsodium are missing.

SERVALD CC cli.c
In file included from cli.c:25:0:
rhizome_types.h:26:20: fatal error: sodium.h: No such file or directory
 #include "sodium.h"
                    ^
compilation terminated.

We looked for any git submodule but failed.

We didn't install it globally since in the past this was not neccessary, the include looks like a local include and last but not least ubuntu 14.04 didn't have it in its repos for quick testing :)

lakeman commented 8 years ago

We are planning to replace our included copy of nacl with libsodium. Hopefully without any custom code changes.

I did find it in debian's repositories, so this was enough for me; $ sudo apt-get install libsodium

And I did add a quick hack to the configure script to make sure everything compiles; https://github.com/servalproject/serval-dna/blob/dev_next/configure.in#L142

We should make sure the configure step fails, and perhaps point to instructions for other platforms.

I'm certainly not an expert on how autoconf scripts should be put together.

On Thu, May 12, 2016 at 10:08 PM, gh0st42 notifications@github.com wrote:

Since we experienced some rhizome sync errors during our tests for the paper Paul suggested that we try the dev_next branch. We did a clean clone, autoreconf, configure and make there. It always fails compiling because sodium.h and the whole source of libsodium are missing.

SERVALD CC cli.c In file included from cli.c:25:0: rhizome_types.h:26:20: fatal error: sodium.h: No such file or directory

include "sodium.h"

                ^

compilation terminated.

We looked for any git submodule but failed.

We didn't install it globally since in the past this was not neccessary, the include looks like a local include and last but not least ubuntu 14.04 didn't have it in its repos for quick testing :)

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/servalproject/serval-dna/issues/105

lakeman commented 8 years ago

Also note that dev_next has a completely new implementation of rhizome sync & transfers that hasn't seen much real world testing yet. It will have very different properties.

quixotique commented 7 years ago

The latest development branch now has support and some documentation for building with libsodium. Libsodium is Serval DNA's first major out-of-tree external dependency -- SQLite is included by importing a copy of its source code into the tree -- so we are slowly working out how to accommodate this.