尝试在Synology DS1511 +上构buildnodejs时出现错误

我已经尝试了很长时间来将node.js构build到Synology DS1511 +上。 我已经阅读了这个教程和评论 ,但是我仍然遇到了一个奇怪的错误,我不知道如何构build它。 运行sudo make之后,运行15到20分钟,然后我得到这个:

 /volume1/homes/admin/node/out/../deps/uv/src/unix/thread.c:286: undefined reference to `pthread_condattr_setclock' collect2: ld returned 1 exit status make[1]: *** [/volume1/homes/admin/node/out/Release/node] Error 1 make[1]: Leaving directory `/volume1/homes/admin/node/out' make: *** [node] Error 2 

从错误,它似乎是与pthread库有关,但我真的不知道是否是这种情况,特别是因为我根据教程取代了pthread库。 顺便说一下,本教程演示了如何为基于ARM的处理器构build节点,但是我正在构build的Synology是i686。

任何人都知道如何解决在DS1511 +上构buildnode.js的问题

我遇到了同样的问题。 这似乎是默认的glibc libpthread.so(这是在RHEL 4上)不包括pthread_condattr_setclock(即使man-page说,它应该做的,包含文件也指定它),我快速环顾四周,发现鼻子版本(来自同一个glibc包)确实有这个function。 我不知道是什么意思,但是在为节点运行configuration之后,我把pyg(out / node.target.mk)脚本砍成了:

 LDFLAGS_Debug := \ -L/lib/tls/i686/nosegneg/ -lpthread-2.3.4 \ -rdynamic \ -m32 \ -pthread LDFLAGS_Release := \ -L/lib/tls/i686/nosegneg/ -lpthread-2.3.4 \ -rdynamic \ -m32 \ -pthread LIBS := \ -lc-2.3.4 \ -lm-2.3.4 \ -ldl \ -lrt-2.3.4 

2.3.4是我们目前的glibc版本。 现在节点编译好了。 将不得不做一些testing,看看它是否运行良好。