Failure to build examples on Arch linux
Opened this issue · 11 comments
I installed everything mentioned on the build instructions and got this error:
$ esy x Examples
...
error: build failed with exit code: 1
build log:
# esy-build-package: building: esy-nasm@github:revery-ui/esy-nasm#64a802b
# esy-build-package: pwd: /home/justin/.esy/3/b/esy_nasm-f2002482
# esy-build-package: running: 'bash' 'esy-build.sh' 'linux'
Error: nasm is not installed
error: command failed: 'bash' 'esy-build.sh' 'linux' (exited with 1)
esy-build-package: exiting with errors above...
After I installed nasm, I hit /bin/sh: clang: command not found. After installing clang, the examples finally ran.
Perhaps these should be added to build instructions?
It is weird I have managed to build revery inside a arch docker with the instruction I wrote.
Perhaps you already had nasm / clang installed? The instructions don't mention them, and both seem to be required to build the examples.
Do you see esy-nasm in the esy.lock folder ?
No. This is what my esy.lock folder looks like: https://gist.github.com/justinmoon/ce76e4635529b837524a19cc609c0569
Here's a tarball of that directory in case that helps: esy.lock.tar.gz
Can you send also esy.lock/index.json
Here's the index.json. Had to upload as index.txt b/c GitHub wouldn't allow a .json extension ...
Because we make sure it is available for you: https://github.com/revery-ui/revery/blob/master/esy.lock/index.json#L315-L326.
esy-nasm is required by esy-libjpeg-turbo
can you clone it: https://github.com/revery-ui/libjpeg-turbo, remove nasm, run esy inside. Does it build ? If no can you send the error.
It is very strange because: I have a arch without nasm and it build.
Ok it is because we have added support for CentOS so we don't download nasm.
Thanks it is modified.
@bryphe What should we do ? Should we mix the old with the new bahaviour ? revery-ui/esy-nasm@64a802b
@Et7f3 - the best fix would be to get esy-nasm building across CentOS and all Linux - fix whatever issues are blocking it - then we have it in our esy sandbox and don't have to think about it.
Otherwise, we should add it to the docs as a dependency.
I'm getting the same issue on Ubuntu 20.04, but I have clang and nasm in my PATH on my host and it's still saying that nasm isn't intalled. How did you get it working @justinmoon ?
@zicklag I just went through the process of figuring out how to get Revery building on Ubuntu 20.04 last night, this is what I had to do:
- Install all the packages listed here: https://github.com/revery-ui/revery/wiki/Building-&-Installing#for-linux-users
- Make sure you're on a recent version of esy
- Then I used this configuration for package.json: https://github.com/kyldvs/template-revery-app
(step 1 installing nasm fixed the missing nasm issue for me)
Edit: One of the main problems I had to figure out is that the note about adding a resolution for harfbuzz in the wiki isn't quite right, and the linked commit doesn't build on ubuntu (due to Et7f3/esy-harfbuzz#1), so this line is important: https://github.com/kyldvs/template-revery-app/blob/main/package.json#L42