[aplusdev] A+ scripts
John.Mizel at morganstanley.com
John.Mizel at morganstanley.com
Tue Apr 9 08:58:06 EDT 2002
vlad,
You need all the associated shared libraries to run the a+ binary.
ldd /usr/local/aplus-fsf-4.18/bin/a+
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40018000)
libnsl.so.1 => /lib/libnsl.so.1 (0x4010b000)
libdl.so.2 => /lib/libdl.so.2 (0x40121000)
libIPC.so.0 => /usr/local/aplus-fsf-4.18/lib/libIPC.so.0 (0x40125000)
libm.so.6 => /lib/i686/libm.so.6 (0x40151000)
libcxs.so.0 => /usr/local/aplus-fsf-4.18/lib/libcxs.so.0 (0x40174000)
libcxb.so.0 => /usr/local/aplus-fsf-4.18/lib/libcxb.so.0 (0x40176000)
libAplusGUI.so.0 => /usr/local/aplus-fsf-4.18/lib/libAplusGUI.so.0 (0x4017b000)
libcxsys.so.0 => /usr/local/aplus-fsf-4.18/lib/libcxsys.so.0 (0x402da000)
libcxc.so.0 => /usr/local/aplus-fsf-4.18/lib/libcxc.so.0 (0x402e5000)
libesf.so.0 => /usr/local/aplus-fsf-4.18/lib/libesf.so.0 (0x402ec000)
liba.so.0 => /usr/local/aplus-fsf-4.18/lib/liba.so.0 (0x40300000)
libdap.so.0 => /usr/local/aplus-fsf-4.18/lib/libdap.so.0 (0x40453000)
libMSGUI.so.0 => /usr/local/aplus-fsf-4.18/lib/libMSGUI.so.0 (0x4046a000)
libMSIPC.so.0 => /usr/local/aplus-fsf-4.18/lib/libMSIPC.so.0 (0x407cc000)
libMSTypes.so.0 => /usr/local/aplus-fsf-4.18/lib/libMSTypes.so.0 (0x407f6000)
libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x40a05000)
libc.so.6 => /lib/i686/libc.so.6 (0x40a47000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
When the a+ executable is built these libraries are specified with -l/-L
flags and a -rpath flag which put into the a+ executable information which
tells a+ where to find the libraries.
You could re-build the a+ executable to use static archives i.e. libaries
that end in .a. This would make the a+ executable much larger since it
put into the binary all the needed information from the library.
The advantages of using shared libraries are:
-smaller binary.
-multiple invocations of a+ will share the library image that is
loaded by the OS.
-faster startup
Depending on the complexity of the script you want to run you could alos
build a smaller statically linked version of a+. So if you didn't need
GUI, adap, or timers you could eliminate all the C++ libs. This would
require changes to the a+ source not to install these components.
Thanks,
John
On Tue, 9 Apr 2002, Vladimir N. Kutinsky wrote:
> Hello,
>
> Is there a way to run A+ scripts on a Linux box where A+ isn't installed? I
> mean something like having a+ and a simple script file test.+ written on a
> floppy and then running
> ./a+ test.+
> on a "pure" Linux box with no A+.
> The other days I tried it but I got errors saying some shared libraries were
> necessary. So, I copied **all** libraries from /../aplus-fsf-XX/lib/ on the
> new Linux box (a rather awkward way, I agree) and tried it again. Now, it
> couldn't load some g++ libraries.
> If there is a way of doing something of this sort then which libraries do I
> need for simple a)non-s scripts and b)for s-scripts? Any other ways?
>
> Are there any command line arguments for a+ command?
>
> Thank you,
> vlad
>
>
--
More information about the apluslist
mailing list