v2023.8.2 (August 31, 2023)
Minor new features and bug fixes
v2023.8.2
v2023.8.1
v2023.8.0
Please refer to the GitHub project site for additional information.
The Programmer's Guide is in the "doc" directory. Additional examples are available in the Rosetta Code. If you find issues, please submit a ticket.
For new developers, please refer to the getting starting guide.
The Windows Launcher is a convenient way to run programs and access
documentation. On Windows, configuration information is stored in the
%ProgramData%\Objeck
directory and built the first time the app runs. If
you move the install location, delete the %ProgramData%\Objeck
directory
and rerun the launcher.
To compile programs outside the bin
directory set, the OBJECK_LIB_PATH
environment variable must be set. When this variable is set, all library
files must be in the directory specified.
If the Windows installer is used, these variables will be automatically set.
To manually set the environment paths in Windows:
set OBECK_LIB_PATH=<program_path>\objeck-lang\lib
set PATH=%PATH%;<program_path>\objeck-lang\bin;<program_path>\objeck-lang\lib\sdl
\objeck-lang\lib\sdl
path as the required SDL2 DLLs are
already in the MSYS2 shell's path.To manually set the environment paths in macOS and Linux:
export PATH=$PATH:<program_path>/objeck-lang/bin
export OBJECK_LIB_PATH=<program_path>/objeck-lang/lib
On Windows STDIO may be configured to be UFT-8, UTF-16, or binary by setting the environment
variable OBJECK_STDIO
to "binary" or "utf16", the default if UTF-8.
Simple compile/execute:
obc -src ..\examples\hello_0.obs
or
obc -src 'C:\Program Files\Objeck\objeck-lang\examples\encrypt_7.obs' -lib encrypt -dest my_prgm.obe
obr my_prgm
Compile/execute for code that has library dependencies:
obc -src ..\examples\xml_path.obs -lib collect.obl,xml.obl -dest xml_path.obe
obr xml.obe
The 2D gaming framework is built around SDL2 (>=2.0.9). The Windows distribution contains the required DLLs. Support for other platforms is below.
sudo apt install libsdl1.2debian libsdl-gfx1.2-5 libsdl-gfx1.2-dev
libsdl-gfx1.2-doc libsdl-image1.2 libsdl-image1.2-dbg libsdl-image1.2-dev
libsdl-mixer1.2 libsdl-mixer1.2-dbg libsdl-mixer1.2-dev libsdl-net1.2
libsdl-net1.2-dbg libsdl-net1.2-dev libsdl-sound1.2 libsdl-sound1.2-dev
libsdl-ttf2.0-0 libsdl-ttf2.0-dev
/lib/native
directory an untar the sdl2_arm64.tgz
file/usr/local/include
and
/usr/local/lib
The following to generate a self-signed SSL certificate for the 'TCPSecureSocketServer' class using OpenSSL commands (for Windows and Linux):
openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes -keyout
local.key -out local.crt -subj "/CN=localhost" -addext
"subjectAltName=DNS:localhost,DNS:www.local.net,IP:127.0.0.1"
openssl x509 -in local.crt -out cert.pem
openssl rsa -aes256 -in local.key -out local.encrypted.key
mv local.encrypted.key cert.key
rm local.crt local.key
chmod 600 cert.key
Follow these instructions for macOS.
The Objeck source repository is located here, and the source can be fetched using the following command GIT command:
git clone https://github.com/objeck/objeck-lang.git
The software was developed under the FreeBSD license. Supporting software licenses can be found here.
©2023 Randy Hollines. All Rights Reserved.