create libu.so in current working directory

Share:

Description

THIS IS ONLY A POTENTIAL FUNCTIONALITY – IF YOU NEED TO USE IT CONTACT VJ CAREY –

creates a trivial C++ file to allow dynamic loading to succeed and as a template for C++ extensions to the working correlation model repertory of yags

Usage

1
2
3
# NOT FUNCTIONING UNLESS EXPERIMENTAL_USERCOR defined in C++
# IGNORE UNLESS YOU REALLY KNOW THE SOURCE CODE
yags.make.libu(lib.loc=.lib.loc, cxx="g++ -c")

Arguments

lib.loc

path to library where yags is installed, to allow access to include files

cxx

string encoding C++ compiler invocation

Details

A small C++ program is written to the file user\_wcor.cc, compiled according to the value of cxx, and transformed to libu.so by R SHLIB. The program can be modified and relinked to specify calculations of working correlation models selectable through corstruc="user" in yags.

Value

Nothing returned, all side-effects. You must typically exit R, reset LD\_LIBRARY\_PATH, and restart in order for yags to work.

Note

This approach is dependent on a fairly obsolete approach (MC++) to matrix computations in C++. The next version is likely to be based on the .Call interface, and high-performance user-written extensions will follow R rather than MC++ protocols.

Author(s)

VJ Carey, stvjc@channing.harvard.edu

Examples

1
2
3
4
## Not run: 
yags.make.libu()

## End(Not run)