Node安裝zmq

ZMQ,啥東東?請百度!

在windows下面搗鼓Node,累啊,各種問題!
請先了解NPM、node-gyp。
不廢話,進入zmq官網,找到node(http://zeromq.org/bindings:node-js)的相關綁定,正常情況下,
>npm install zmq -g
即可完成安裝。


但是,問題來了,編譯binding.cc文件出了問題,無法完成安裝。


好吧,換種思路,直接下載源代碼,
>git clone https://github.com/JustinTulloss/zeromq.node.git
>cd zeromq.node //進入目錄


裏面有個build目錄,裏面有使用vc的解決方案binding.sln,用vs打開,vs2010以上版本,打開,編譯,ok,成功了。
這時在build/Release文件夾裏面有zmq.node文件了,要的就是這玩意。進入examples裏面,隨便運行測試看看,執行成功。


現在需要將zmq模塊安裝到全局模塊裏面,方便使用,但是,剛纔用npm安裝失敗了,保險起見
>npm uninstall zmq -g
接着將zeromq.node目錄改名爲zmq,爲什麼改名呢?看看package.json裏面的name屬性!直接整個目錄複製到系統環境變量NODE_PATH指定的文件夾下面,接着隨便從examples裏面搬個樣例,將
var zmq = require("../../") 修改爲 var zmq = require("zmq"),
接着運行測試,成功。成功是成功了,不過zmq文件夾裏面包含了很多不需要的文件,可以清除,大家可以試試憑自己對node包的理解,清除垃圾文件。


小結:過分依賴npm管理工具,一旦過程中出現問題,就完全無法解決,這個時候,就只能靠對語言和工具的理解來手動處理了,比如npm安裝過程中,無法編譯通過,可以修改.gyp文件配置,讓其在您的機器中能正確執行,這樣就可以正常安裝了,當然,也可以如我這般的直接、暴力,直接進入build文件夾,使用vs2012(目前貌似node-gyp不支持2012編譯)轉換下sln文件,編譯通過,然後靠着對node模塊的理解,手動安裝模塊!是不是編譯出zmq.node文件,就算成功了呢?不一定,仔細看了一下zeromq.node模塊裏面的內容,發現加載zmq.node使用的是bindings模塊,閱讀一下bindings.js文件,就知道了zmq.node應該放在那些目錄下才合理了。


create by twkun
2013-12-13

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章