2013-07-30 7 views
13

पर संकलित करने के लिए कैसे कोई जानता है कि किसी भी निष्पादन योग्य बाइनरी में नोडज को स्थिर रूप से कैसे संकलित करना है? मेरा मतलब है कि कोई शेयर पुस्तकालयों की आवश्यकता नहीं है।नोडजेज़ को एक एकल, पूरी तरह स्थिर स्थिर बाइनरी फ़ाइल

पुराने संस्करण नोडजेस के लिए कुछ मार्गदर्शिकाएं हैं, लेकिन अंतिम के लिए काम नहीं करती हैं।

धन्यवाद!

+1

यह मदद कर सकता है: http://architects.dzone.com/articles/compiling-nodejs-projects – furydevoid

+0

धन्यवाद, furydevoid। लेकिन मैं सिर्फ नोड को स्थिर एक्सई होना चाहता हूं, सभी जेएस को एक साथ पैक नहीं करना चाहता हूं। इस तरह से मैं एंड्रॉइड पर्यावरण पर इस एकल बाइनरी चला सकता हूं। – holly

+1

जो मैं चाहता हूं वह '$ ldd/path/to/bin/node' है और 'गतिशील निष्पादन योग्य नहीं' – holly

उत्तर

1

असल में, मैं एंड्रॉइड मंच पर चलने के लिए एक स्थिर बाइनरी चाहता हूं।

और अब, संस्करण 0.11.8 तक, node.js आधिकारिक तौर पर एंड्रॉइड समर्थन जोड़ें।

मेरे सहयोगी ने इसे न केवल हाथ बनाया, बल्कि एंड्रॉइड-x86 भी बनाया। सब कुछ ठीक काम करता है!

https://github.com/joyent/node/commit/5e4e8ec429381a8d1eebe31647e9daaaae42c54b

1

आप NodeJS स्थैतिक डोकर छवि का उपयोग कर सकते हैं स्थिर Node.js द्विआधारी संकलित करने के लिए musl libc के साथ जुड़ा हुआ।

https://hub.docker.com/r/dundee/nodejs-static/

0

इस बीच वहाँ http://enclosejs.com/ जो एक द्विआधारी उत्पन्न करने में सक्षम हो रहा है है।

2

जो लोग अभी भी इस विषय को खोजने के लिए में अपने आवेदन पैकेज कर सकते हैं है प्रासंगिक वहाँ एक परियोजना नोड पैकर कहा जाता है, कि NodeJS द्विआधारी यहाँ उपलब्ध https://github.com/pmq20/node-packer के साथ जावास्क्रिप्ट कोड को संकलित करता है लेकिन वास्तव में स्थिर निर्माण करने के लिए किसी को रूबी स्क्रिप्ट को संशोधित करने की आवश्यकता होती है और झंडे को जोड़ना पड़ता है - स्थिर-स्थिर और - बिना-एनपीएम जो बाइनरी को libstdC++ या glibc के बिना चलाने में सक्षम होना चाहिए, लेकिन कुछ चेतावनी समझाए गए हैं नोडजेस विकी पर। मैंने यहां पहले से ही संशोधन भी किया है (https://github.com/cmosh/node-packer), बस फ्लैग - स्टेटिक को कमांड में संलग्न करें, i.e nodec --static foo.js. इसे चलाने के लिए आपको क्लॉनी रेपो के बिन फ़ोल्डर में रूबी और नोडजेस दोनों स्थापित करने और नोडेक स्क्रिप्ट चलाने की आवश्यकता होगी।

संबंधित मुद्दे