Hashlink target build problems


#1

Using the HerokuShaders demo project I built the project using
openfl build hl

Firstly I got the error
chmod: cannot access 'Export/hl/bin/HerokuShaders': No such file or directory

which I got rid of by creating the directory. It then isn’t used in the build process.

Next I changed to directory
Export/hl/bin
And called
hl HerokuShaders.hl

I then get the error
src/module.c(268) : FATAL ERROR : Failed to load library lime.hdll
even though lime.hdll is in the current directory

Anyone know how to sort this out?

I’m running the current git versions of:
haxe (i.e 4.0.0)
lime
hxcpp
hashlink
openfl

on Ubuntu 18.10 (Bionic Beaver)

Ta Muchly,

Harry French


#2

We have about 90% support for HashLink, but it’s not officially supported in our releases, yet.

In order to test our current support, you will need to use Lime from GIT, then rebuild using the -Dhashlink define, such as lime rebuild windows -Dhashlink

Then we expect that you will have a variable defined in your environment called HLPATH for the path to where HashLink is located on your system.

Then lime test hl on a project should probably work.

There are at least three problems for finishing HashLink support:

  1. We use a single native library (lime.so, lime.ndll, etc) for Neko and C++. We wanted to have this working with HashLink as well (-Dhashlink causes Neko and C++ to require libhl.dll or libhl.so, which is not something we want to do)
  2. We would probably need to bundle HashLink ourselves, as HashLink versions are tied to the binaries we generate, and the global install approach is not official, nor worked on Linux when tested
  3. There may be some minor things we did not get right, such as passing Strings to and from C++

#3

Thank you. I’ll report back how it goes.