agnos
agnos copied to clipboard
Agnos - The Agnostic RPC Framework
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:
-
Clone this repository
-
Install scons (http://www.scons.com)
-
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"
-
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"
-
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
-
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
-
-
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)