No Description

Nicolas Cannasse 2be3f7a9e6 throw error on negative allocation size 2 years ago
.github bb572cb47a [ci] Migrate fully to Github Actions and clean up (#565) 3 years ago
include 898f2429b5 don't redefine snprintf for newer msvc 4 years ago
libs c03751745e Fixed a potencial crash when SDL found no display or screen modes (#573) 2 years ago
other 64829ec907 merge functions with different lines, improve file display for std 2 years ago
src 2be3f7a9e6 throw error on negative allocation size 2 years ago
.gitattributes 4024fb6a61 Mark `include` dir as third party for github (#541) 3 years ago
.gitignore da2d384c53 Add vs2019 hlc compilation template (#509) 2 years ago
Brewfile 880b81d4e4 [make] Add sqlite.hdll target (#520) 3 years ago
CMakeLists.txt 310dccdd76 [cmake] Bump hashlink to 1.13 (#569) 2 years ago
LICENSE d33328a4e2 Add license file 7 years ago
Makefile 14d0a77fce Fix building issues on some mac systems (#570) 2 years ago
README.md 880b81d4e4 [make] Add sqlite.hdll target (#520) 3 years ago
hl.sln a621812795 more dx12 api, integrate with hl compilation 3 years ago
hl.vcxproj e2c8f003a4 Fix CI (#548) 3 years ago
hl.vcxproj.filters 38c6a22471 added sampling profiler and chrome profiler json converter 5 years ago
libhl.vcxproj 574ecb39c5 ignore some newest pcre triggered warnings 2 years ago
libhl.vcxproj.filters d1556da8ee alloc.c -> gc.c compilation 5 years ago

README.md

HashLink

HashLink

Build Status Build Status

HashLink is a virtual machine for Haxe https://hashlink.haxe.org

Building on Linux/OSX

HashLink is distributed with some graphics libraries allowing to develop various applications, you can manually disable the libraries you want to compile in Makefile. Here's the dependencies that you install in order to compile all the libraries:

  • fmt: libpng-dev libturbojpeg-dev libvorbis-dev
  • openal: libopenal-dev
  • sdl: libsdl2-dev
  • ssl: libmbedtls-dev
  • uv: libuv1-dev
  • sqlite: libsqlite3-dev

To install all dependencies on the latest Ubuntu, for example:

sudo apt-get install libpng-dev libturbojpeg-dev libvorbis-dev libopenal-dev libsdl2-dev libmbedtls-dev libuv1-dev libsqlite3-dev

For 16.04, see this note.

To install all dependencies on the latest Fedora, for example:

sudo dnf install libpng-devel turbojpeg-devel libvorbis-devel openal-soft-devel SDL2-devel mesa-libGLU-devel mbedtls-devel libuv-devel sqlite-devel

And on OSX:

brew bundle to install the dependencies listed in Brewfile.

Once dependencies are installed you can simply call:

make

To be able to use hashlink binary with the debugger you can then call:

sudo make codesign_osx

To install hashlink binaries on your system you can then call:

make install

Building on Windows

Open hl.sln using Visual Studio C++ and compile.

To build all of HashLink libraries it is required to download several additional distributions, read each library README file (in hashlink/libs/xxx/README.md) for additional information.

Debugging

You can debug Haxe/HashLink applications by using the Visual Studio Code Debugger

Documentation

Read the Documentation on the HashLink wiki.