Skip to content
This repository

Agnos - The Agnostic RPC Framework

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 compiler
Octocat-spinner-32 demos
Octocat-spinner-32 libagnos
Octocat-spinner-32 site
Octocat-spinner-32 tests
Octocat-spinner-32 .gitignore
Octocat-spinner-32 CHANGELOG.rst
Octocat-spinner-32 CONTRIBUTORS.rst
Octocat-spinner-32 LICENSE.rst
Octocat-spinner-32 NOTICE
Octocat-spinner-32 README
Octocat-spinner-32 __init__.py
Octocat-spinner-32 build.sh
README
Agnos - The Agnostic RPC Framework

Agnos is a cross-platform, cross-language, lightweight RPC framework.


==============================================================================
  Discloure
==============================================================================
Agnos is being developed at IBM XIV (http://www.xivstorage.com/), 
at the Host Side Group, and is released as an Open Source project under the 
Apache 2 license. See the LICENSE file for more info.

The following statements was required by our lawyers:
 * The design of the project had been inspired by Thrift 
   (http://incubator.apache.org/thrift), although the projects do not share 
   code. Thrift is licensed as Apache 2, which allows deriviative works.
 
 * The name "Microsoft" appears several times in the repository, in 
   Visual Studio solution and project files (.sln, .csproj, .vcxproj), as
   these files reference XML schemas; in paths of some executable tools;
   and in documentation material. This does not imply that Microsoft is in 
   anyway affiliated with this project.


==============================================================================
  How to run the Agnos Toolchain from a cloned repository:
==============================================================================
1) Clone this repository

2) Install scons (http://www.scons.com)

3) Create a symlink (on Windows use mklink) to compiler/src/agnos_compiler and place
   it somewhere in your PYTHONPATH, e.g.:
   
   $ ln -s /absolute/path/of/agnos_toolchain/compiler/src/agnos_compiler /usr/lib/python2.6/site-packages/agnos_compiler
   
   Note: the link should be named "agnos_compiler"

4) Create a symlink to libagnos/python/src/agnos and place it somewhere in your 
   PYTHONPATH, e.g:

   $ ln -s /absolute/path/of/agnos_toolchain/libagnos/python/src/agnos /usr/lib/python2.6/site-packages/agnos
   
   Note: the link should be named "agnos"

5) Put compiler/bin/agnosc and compiler/bin/agnosrc-py in your PATH (either by
   adding them to the PATH or by creating symlinks to /usr/bin, etc.)

   $ ln -s /absolute/path/of/agnos_toolchain/compiler/bin/agnosc /usr/bin/agnosc
   $ ln -s /absolute/path/of/agnos_toolchain/compiler/bin/agnosrc-py /usr/bin/agnosrc-py
   
   Note: on Windows, create the links to agnos.bat and agnosrc-py.bat

6) Build the parts of libagnos that you wish to use:
   * Java: cd to libagnos/java and run scons

   * C#: cd to libagnos/csharp/src and run "msbuild Agnos.sln" or "xbuild Agnos.sln" 
   
   * C++: cd to libagnos/cpp and run scons
     you may need to tweak the scons file, to define/undefine 
     BOOST_PROCESS_SUPPORTED

7) See that everything's working:
   $ agnosc
   Usage: agnosc [options]
    
   agnosc: error: must specify agnos input file(s)
    
   $ agnosrc-py
   Usage: agnosrc-py [options]
    
   agnosrc-py: error: must specify agnos input file(s)


Something went wrong with that request. Please try again.