Trying to build cjdns on Angstrom Linux on the BeagleBone Black, after working around a number of other errors, yields:
Build Libuv
You need to install gyp in build/gyp first. See the README.
make: *** out: No such file or directory. Stop.
...
The build process then helpfully hangs.
The underlying problem is a missing compiler.ast module. The libuv build process checks for gyp by trying to import its Python module and catching an ImpotError. The gyp module import process raises an ImportError for the missing Python library module.
The workaround seems to be to opkg install python-compiler python-misc python-multiprocessing to get the missing module (along with filecmp and multiprocessing, which are also required by gyp).
Trying to build cjdns on Angstrom Linux on the BeagleBone Black, after working around a number of other errors, yields:
The build process then helpfully hangs.
The underlying problem is a missing
compiler.ast
module. The libuv build process checks for gyp by trying to import its Python module and catching an ImpotError. The gyp module import process raises an ImportError for the missing Python library module.The workaround seems to be to
opkg install python-compiler python-misc python-multiprocessing
to get the missing module (along with filecmp and multiprocessing, which are also required by gyp).https://github.com/hyperboria/cjdns/blob/master/node_build/dependencies/libuv/gyp_uv.py ought to be patched to generate a more informative error message when the underlying cause of the ImportError is not a missing gyp (which can't happen in cjdns builds anyway) but rather a missing Python module dependency.