-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deploying hint cross-platform #80
Comments
The only reason I targeted linux in that example is because it's easy to create a linux VM which doesn't have ghc on it and then automate a few steps to automatically test that it works. The same approach should work on other platforms. |
I've been trying to get hint working with a package database for some time.. A hint-based interpreter making use of tidal, which works fine with However with
However, ghc-pkg says it's all there:
a ghc-pkg check only turns up warnings about missing haddock stuff:
Here's what I'm doing to build the I'm using At this point I'm not trying to get fake_gcc to work or collect system libraries, I'm just trying to get a useable haskell-libs folder. Here's one clue, ghci seems to fail to find a shared object file (even though it does exist):
I'm not sure what to try next. Any clues very much appreciated! |
Having deleted my ~/.ghc folder, ghci is happily loading and using the tidal package in haskell-libs (verified with strace). Still the same error from hint, though. |
Seems I just didn't have all the dependencies in place.. getting there |
Working now, and ${pkgroot} is working fine as a way to give relative paths in .conf files, so no need to run recache any more, @gelisam |
I never got this to work in a satisfactory way. Anyone get hint binary deployment working recently? |
But you said it was working in January! Did I change something which broke your solution, or did you mean that you only got part of the solution working? If so, which part works? |
It was a while ago now.. I managed to get to the point that it seemed to work on my laptop, but not to get it to successfully transfer on to another system. I then had little idea how to replicate this process on mac os or windows. I should try again, but was wondering if anyone else had this working recently, perhaps with an up-to-date example. |
I haven't worked on https://github.com/gelisam/deploy-hint/ since I created the prototype, but since I pinned both hint, ghc, and the linux VM to a specific version, the demo should still work, no? I haven't run it in a while... It sounds like the work you did so far was to update my demo to make it work with a more recent version of hint and ghc? That does sound like a good first step. Do you have a PR for deploy-hint? It would be a shame for all that work to get lost to time! Like I said last year, the only reason I targeted linux in that example is because it's easy to create and control a linux VM. |
@gelisam I was trying to get this working with the tidal library, getting inspiration from deploy-hint, rather than using it directly. My workings are here: https://github.com/tidalcycles/tidali , I'm not sure how useful that is, though! I don't have ready access to windows or macos. |
We have |
I'm glad you found a solution to your problem! Is it a workaround which somehow makes it possible to use tidal without having to deploy hint on a machine which doesn't have ghc installed, or did you find a way to package up the required library files as part of the tidal installation, like in the deploy-hint prototype? In either case, do you have some advice for other projects who might want to accomplish the same thing? |
@polymorphicengine did the work but yes it follows the good principles of your deploy-hint prototype. I believe there are still some problems, e.g. Mac OS big sur and later refuse to run the fake_gcc due to malware protection. I don't think we found a workaround for this. Other projects could have a look at the github workflow here: https://github.com/polymorphicengine/tidal-gui/ |
I'd love to deploy haskell binaries making use of hint, to avoid having to ship a haskell interpreter with the whole of haskell.
#3 demonstrates this working under linux, with https://github.com/gelisam/deploy-hint/ from @gelisam as an example, although that isn't up to date.
Are there any other guides / examples towards getting this working? + anything for mac os / windows?
The text was updated successfully, but these errors were encountered: