1. Installing GemStone Raspberry Pi Client

Next chapter

This chapter describes the procedure for installing the Raspberry Pi client components for GemStone/S 64 Bitâ„¢ version 3.5.1.

Raspberry Pi is not a fully certified client platform for GemStone/S 64 Bit. GemStone/S 64 Bit Client for Raspberry Pi is provided as a convenience for users and should not be used on production systems, nor for critical development tasks.

This client installation provides:

The GemStone/S 64 Bit server does not run directly on the Raspberry Pi platform.

Platform and O/S

The GemStone/S 64 Bit Client for Raspberry Pi is known to work in the following environment. Other Raspberry Pi configurations may work, but have not been tested.

Platform

  • Raspberry Pi model 3 B+
  • Armv71 processor
  • 1 GB of RAM

Operating System

  • Raspbarian v4.14.79-v7+

Disk space

  • The complete GemStone/S 64 Bit Raspberry Pi client distribution re quires about 35 MB of disk space.
  • The minimum set of shared libraries requires about 20 MB.
  • You will need additional space if you are installing a Smalltalk client or other software.

Configuring for named NetLDIs

GemStone NetLDI processes on the server may be accessed by the port number that the NetLDI is listening on, or by name. If the NetLDI on the GemStone server is normally accessed by port number, no further configuration is needed on the Raspberry Pi client.

If the GemStone server is using named NetLDIs, you must ensure that the services on the Raspberry Pi maps these names to the appropriate port number.

The service mappings may be in /etc/services/, or configured via ldap or another mechanism.

To update /etc/services, add an entry similar to the following:

gs64ldi 50377/tcp #GemStone/S 64 Bit 3.5.1

This port number must be the same as the NetLDI service you will connect to on the GemStone/S 64 Bit server machine.

Installing the GemStone/S 64 Bit Raspberry Pi Client

The GemStone/S 64 Bit Client for Raspberry Pi distribution includes all the components that are needed for a variety of usages on the client. You may install the complete set of GemStone’s Raspberry Pi client components, although most client applications will not need the entire set. For the initial installation, we recommend installing the complete distribution.

When using GemBuilder for Smalltalk, you may wish to copy only the specific shared libraries that are needed to connect to the GemStone server from the Raspberry Pi. That is described in the next chapter.

GemStone/S 64 Bit Client for Raspberry Pi is provided as a zipped archive. To install the complete distribution, copy the distributions to an install directory, InstallDir, and unzip.

InstallDir will contain a directory with a name similar to GemStone64Bit3.5.1-arm32.Linux/, including the following directories and files:

bin32/

topaz and openssl executables. The command-line topaz client is useful to verify login to the GemStone server.

include/

C and C++ header files needed to link GCI applications.

lib32/

32-bit GemStone shared libraries.

licenses/

GemStone licence file and licenses for open-source code included with GemStone.

PACKING.txt

A file containing a listing of all files in the distribution.

sys/

contains the topaz help file.

ualib/

Empty directory for user action libraries.

version.txt

A file containing information on the particular product and release of this GemStone client.

Set the environment

GEMSTONE

While not required, generally you should set the environment variable GEMSTONE to the full pathname (starting with a slash) of your new GemStone installation directory. For example:

unix> export GEMSTONE=InstallDir/GemStone64Bit3.5.1-arm32.Linux

If GemStone will be used regularly, it is recommended to set this up in the login shell initialization file.

PATH

To access the client executables (such as topaz) you should update the system path to include $GEMSTONE/bin.

For example:

unix> export PATH=InstallDir/bin32:$PATH

Logging in from the topaz command line

Logging in from the Raspberry Pi command line is no different than logging in from any UNIX platform.

Note that linked logins are not supported (32-bit clients cannot login linked to 64-bit GemStone/S 64 Bit).

The following example assumes that $GEMSTONE is set, and the system path updated.

unix> topaz
headers
topaz> set gemstone !@stonehost!stonename
topaz> set username DataCurator password swordfish
topaz> set gemnetid !@stonehost#netldi:netldiNameOrPort!gemnetobject
topaz> login
[12/06/2019 15:37:58.612 PST]
  gci login: currSession 1  rpc gem processId 25979 socket 6 
successful login
topaz 1>
 

 

Next chapter