Nodejs + Web and scripting module

Hey,

So I’m building CJDNS on Opensuse LEAP, on arm8.
I have successfully done this on a number of platforms but seem to be getting a bit of trouble on SUSE.

CJDNS requires nodejs to work, but on the Nodejs website it states:
“The “Web and Scripting Module” must be added before installing”.

I suspect if this is true, then it maybe this is the cause of my problems.
Does anyone know where I can get / build this?

Thanks

So this is the error I get when compiling

/opt/cjdns/node_build/builder.js:485
if (err) { throw err; }
^

Error: gcc -c -x cpp-output -o build_linux/dht_dhtcore_NodeStore_c.o -std=c99 -Wall -Wextra -Werror -Wno-pointer-sign -pedantic -D linux=1 -D CJD_PACKAGE_VERSION=“cjdns-v20” -Wno-unused-parameter -D Log_DEBUG -g -D NumberCompress_TYPE=v3x5x8 -D Identity_CHECK=1 -D Allocator_USE_CANARIES=1 -D PARANOIA=1 -DHAS_ETH_INTERFACE=1 -fPIE -fno-stack-protector -fstack-protector-all -Wstack-protector -O3 build_linux/dht_dhtcore_NodeStore_c.o.i

dht/dhtcore/NodeStore.c: In function ‘findBestParent’:
dht/dhtcore/NodeStore.c:456:5: error: call to function ‘Time_hrtime’ without a real prototype -Werror=unprototyped-calls]
uint64_t time1 = Time_hrtime(store->eventBase);
^
In file included from dht/dhtcore/NodeStore.c:29:0:
./util/events/Time.h:25:10: note: ‘Time_hrtime’ was declared here
uint64_t Time_hrtime();
^
cc1: all warnings being treated as errors

at error (/opt/cjdns/node_build/builder.js:53:15)
at /opt/cjdns/node_build/builder.js:122:22
at /opt/cjdns/node_build/builder.js:92:13
at ChildProcess.<anonymous> (/opt/cjdns/tools/lib/Semaphore.js:7:30)
at emitTwo (events.js:87:13)
at ChildProcess.emit (events.js:172:7)
at maybeClose (internal/child_process.js:854:16)
at Socket.<anonymous> (internal/child_process.js:330:11)
at emitOne (events.js:77:13)
at Socket.emit (events.js:169:7)

So some weirdness in my last paste… apologies, here is the error:

Total build time: 265596ms.
/opt/cjdns/node_build/builder.js:485
            if (err) { throw err; }
                       ^


Error: gcc -c -x cpp-output -o build_linux/dht_dhtcore_NodeStore_c.o -std=c99 -Wall -Wextra -Werror -Wno-pointer-sign -pedantic -D linux=1 -D CJD_PACKAGE_VERSION="cjdns-v20" -Wno-unused-parameter -D Log_DEBUG -g -D NumberCompress_TYPE=v3x5x8 -D Identity_CHECK=1 -D Allocator_USE_CANARIES=1 -D PARANOIA=1 -DHAS_ETH_INTERFACE=1 -fPIE -fno-stack-protector -fstack-protector-all -Wstack-protector -O3 build_linux/dht_dhtcore_NodeStore_c.o.i


dht/dhtcore/NodeStore.c: In function ‘findBestParent’:
dht/dhtcore/NodeStore.c:456:5: error: call to function ‘Time_hrtime’ without a real prototype -Werror=unprototyped-calls]
     uint64_t time1 = Time_hrtime(store->eventBase);
     ^
In file included from dht/dhtcore/NodeStore.c:29:0:
./util/events/Time.h:25:10: note: ‘Time_hrtime’ was declared here
 uint64_t Time_hrtime();
          ^
cc1: all warnings being treated as errors


    at error (/opt/cjdns/node_build/builder.js:53:15)
    at /opt/cjdns/node_build/builder.js:122:22
    at /opt/cjdns/node_build/builder.js:92:13
    at ChildProcess.<anonymous> (/opt/cjdns/tools/lib/Semaphore.js:7:30)
    at emitTwo (events.js:87:13)
    at ChildProcess.emit (events.js:172:7)
    at maybeClose (internal/child_process.js:854:16)
    at Socket.<anonymous> (internal/child_process.js:330:11)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:169:7)

Web and Scripting Module only exists on SLES (SUSE Linux Enterprise Server), for openSUSE you can just install most of the stuff out of the box (such as nodejs4 and nodejs4-devel)

However the error you are getting is from -Wall in your Makefile as it considers warnings errors and craps out because of it.

Ah thanks man, that saves me a bit of time looking in the wrong direction… I thought it a bit strange, I would need extra modules, but by this point my brain is crashing… :slight_smile:

Have a good one…