Main Menu
Home
Search
FAQs
Register

 

Home arrow FAQs
FAQs
Using the RCLib PDF Print E-mail
This document assumes that the user is familiar with the SRC programming environment, particularly how to write MAP-C programs and modifying the user Makefile parameters to suit the needs of the project at hand.

To use the GWU/GMU/USC macros you've just installed, there are few modifications to the make files that are necessary to the Makefile template provided by SRC. The keywords USER_MACROLIBS, MY_LDFLAGS, and MY_CFLAGS will have to be added to specify the location of the Macro and the necessary Library and Include directories for compiling the debug code.

USER_MACROLIBS  = /path/to/macro_lib1 /path/to/macro_lib2
MY_LDFLAGS      = -z muldefs -L/path/to/library -lLibrary1 -lLibrary2
MY_CFLAGS       = -g -I/path/to/headers

There is a need to override the directory in which the makefiles are pulled in
from due to the need for the latest SRC build scripts inorder to support
external source file debug support such as those required by GF2m_PB,
Sort_Lib, and SecCiph. For this reason the following line should be added:

MAKIN = /opt/srcci/comp22/lib/AppRules.make

If you intend to utilize C++ code in your macro build, you will also need to
set the correct linker flag to ensure proper compilation.

LD = -icpc

Here is an example where the GF2m_PB library is used. The necessary 3rd party tools such as LiDIA, and GMP are needed by this macro to generate the debug code. In order to ensure that the libraries are picked up correctly, the path to the header files and library files need to be provided

LD = -icpc
USER_MACROLIBS  = /opt/GWU_GMU2.1/GF2m_PB
MY_LDFLAGS      = -z muldefs -L/usr/local/lib -lLiDIA -lgmp
MY_CFLAGS       = -g -I/usr/local/include
MAKIN           = /opt/srcci/comp22/lib/AppRules.make

Here is an example of the SecCiph library, where openssl is required:

USER_MACROLIBS  = /opt/GWU_GMU2.1/SecCiph
MY_LDFLAGS      = -z muldefs -L/usr/local/ssl/lib -lcrypto
MY_CFLAGS       = -g -I/usr/local/ssl/include
MAKIN           = /opt/srcci/comp22/lib/AppRules.make

Here is an example of the Long_Int library, where openssl is required:

USER_MACROLIBS  = /opt/GWU_GMU2.1/Long_Int
MY_LDFLAGS      = -z muldefs -L/usr/local/ssl/lib -lcrypto
MY_CFLAGS       = -g -I/usr/local/ssl/include
MAKIN           = /opt/srcci/comp22/lib/AppRules.make


 
Required Third Party Tools PDF Print E-mail
The following third party tools are necessary to ensure that the debug code of the macros can be successfully compiled:

OpenSSL 0.9.7a or higher
GMP 4.1.4 or higher
LiDIA 2.1.3 or higher
 
Installation PDF Print E-mail
Using root privileges (as su or with sudo priviledges) run the install script located at the root of this CD. The command will take a few minutes to initiate and install the macros. Once done a folder will be created in the /opt directory. Ex. /opt/GWU_GMU2.1

Each library will have a map4 and map3 folder containing hardware specific macros. If the macros are hardware independent, macros will exist under both folders. The target directory will have a folder structure, similar to this:

BMM_lib
BMM_lib/map4
BMM_lib/map4/ngo/common
BMM_lib/map4/ngo
BMM_lib/map4/doc/pdf
BMM_lib/map4/doc
BMM_lib/map3
BMM_lib/map3/ngo/common
BMM_lib/map3/ngo
BMM_lib/map3/doc/pdf
BMM_lib/map3/doc

NOTE 1: In order to utilize the current release of the libary, you will need
the latest Application Make file scripts from SRC. This may require the setting of the MAKIN flag to read the
correct AppRules.make file. The current version of the Makefiles is appstools-2.2-0.i386.rpm

NOTE 2: The install script currently installs only HDL macros. Macros written in MAP C with the .mc extension are not installed into the target directory. The MAP C macros are located in the source folder in the root of this CD.


 


^
^