Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial commit of Auryn based implementation. #4

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

sanjayankur31
Copy link
Contributor

This is the initial set of files required for the Auryn implementation of this model. I still need to add the generated graphs and things. I'll do that ASAP. The code here can be used in the mean time.

@pgleeson
Copy link
Member

pgleeson commented May 8, 2015

I can successfully compile and run the examples in the main Auryn rep on my local machine. I have problems though getting your autotoolized version to run:

./reconf.sh 
./configure
make

and I got


Making all in src
make[1]: Entering directory `/home/padraig/git/aurynAnkur/src'
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DPACKAGE_NAME=\"auryn\" -DPACKAGE_TARNAME=\"auryn\" -DPACKAGE_VERSION=\"0.4.1\" -DPACKAGE_STRING=\"auryn\ 0.4.1\" -DPACKAGE_BUGREPORT=\"[email protected]\" -DPACKAGE_URL=\"\" -DPACKAGE=\"auryn\" -DVERSION=\"0.4.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_BOOST=1 -DHAVE_BOOST_ARCHIVE_TEXT_OARCHIVE_HPP=1 -DHAVE_BOOST_PROGRAM_OPTIONS_HPP=1 -I.    -ansi -pipe -O3 -march=native -ffast-math -pedantic   -g -O2 -MT libauryn_la-ABSConnection.lo -MD -MP -MF .deps/libauryn_la-ABSConnection.Tpo -c -o libauryn_la-ABSConnection.lo `test -f 'ABSConnection.cpp' || echo './'`ABSConnection.cpp
libtool: compile:  g++ -DPACKAGE_NAME=\"auryn\" -DPACKAGE_TARNAME=\"auryn\" -DPACKAGE_VERSION=\"0.4.1\" "-DPACKAGE_STRING=\"auryn 0.4.1\"" -DPACKAGE_BUGREPORT=\"[email protected]\" -DPACKAGE_URL=\"\" -DPACKAGE=\"auryn\" -DVERSION=\"0.4.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_BOOST=1 -DHAVE_BOOST_ARCHIVE_TEXT_OARCHIVE_HPP=1 -DHAVE_BOOST_PROGRAM_OPTIONS_HPP=1 -I. -ansi -pipe -O3 -march=native -ffast-math -pedantic -g -O2 -MT libauryn_la-ABSConnection.lo -MD -MP -MF .deps/libauryn_la-ABSConnection.Tpo -c ABSConnection.cpp  -fPIC -DPIC -o .libs/libauryn_la-ABSConnection.o
In file included from /usr/include/boost/mpi/allocator.hpp:15:0,
                 from /usr/include/boost/mpi.hpp:22,
                 from auryn_definitions.h:45,
                 from ABSConnection.h:33,
                 from ABSConnection.cpp:26:
/usr/include/boost/mpi/config.hpp:20:17: fatal error: mpi.h: No such file or directory
 #include 
                 ^
compilation terminated.
make[1]: *** [libauryn_la-ABSConnection.lo] Error 1
make[1]: Leaving directory `/home/padraig/git/aurynAnkur/src'
make: *** [all-recursive] Error 1

Might be something trivial, but all I have time to look into for now I'm afraid. Will the autotooled version be merged into the master soon (and have a .travis.yml to test it...) or would it be possible to make a Makefile here to compile this with a local install of https://github.com/fzenke/auryn?

@sanjayankur31
Copy link
Contributor Author

That's odd. I do have a travis.yml set up for the autotoolised version, and it builds OK there (https://travis-ci.org/sanjayankur31/auryn) - and I use Fedora 21/22 for my work and it builds there too. What Linux variant are you using? It can't find a mpi.h header which is generally provided by some implementation of mpi - mpich2 is what i use. For the travis builds, which use ubuntu, this is the command set that seems to work:

    sudo add-apt-repository ppa:boost-latest/ppa -y
    sudo add-apt-repository ppa:dns/gnu -y
    sudo apt-get update -qq -y
    sudo apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install automake autoconf autogen build-essential libtool m4  --force-yes
    sudo apt-get install libboost1.54-all-dev mpich2 libmpich2-dev libcr-dev -y

I'm not sure if Friedemann plans to merge the autotoolised version any time soon. To develop auryn, he has a local make file in his repo but that builds auryn each time you compile a simulation - quite unnecessary IMO, which is why I went to autotoolised route.

@fzenke
Copy link

fzenke commented May 9, 2015

Hi there,

I'm not sure if Friedemann plans to merge the autotoolised version any
time soon. To develop auryn, he has a local make file in his repo but
that builds auryn each time you compile a simulation - quite unnecessary
IMO, which is why I went to autotoolised route.

I still feel it is too early to merge the autotoolized version,

  1. because I feel the simulator code is still quite in ebb and flow and
  2. because it would be good to see first that the autotools version
    works nicely across platforms. In this light it is good to see what
    exactly the problems are that people are currently encountering (as for
    instance the one discussed here).

As a note on the side. In my workflow I only compile Auryn once (make
lib) and develop simulations in a different location from where I
statically link with -lauryn. I guess that the howtos on the wiki are
outdated in this regard since they still suggest copying one of the
examples. I should update this along with adding a developer style guide
which is still on my Todo list. I am sorry about that.

Cheers!

Friedemann

Update: Changed that on the wiki
http://www.fzenke.net/auryn/doku.php?id=manual:compileandrunaurynsimulations

@pgleeson
Copy link
Member

Discovered the problem... Didn't include the flag on:

./configure --enable-mpi

Got the autotoolised version to install (make lib also works in @fzenke's original repo) and managed to get the Vogels et al example to compile and run after tweaking the Makefile a bit.

Will try to make changes/push some doc updates after I get back from the OSB meeting...

Nice work with this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants