2013年7月15日 星期一

BSD SOCKET on lua筆記

目的:在win32 android iphone上使用socket進行通訊
ide:vs2012 express、sublime text2

安裝:
win32:
拿掉bsd socket包裡的unix檔案,
serial.c
unix.c
unix.h
usocket.c
usocket.h
這時後編譯會出現一堆 無法解析的外部符號
1.在連結加入pthreadVCE2.lib
2.在wsocket.h 
#include <winsock2.h>後面加上一行
#pragma comment(lib,"ws2_32.lib")
編譯通過

unix(android):
拿掉wsocket.c wsocket.h
就可以通過了


lua:
這時後在lua上就能使用local socket = require("socket.core")
以及local mime = require("mime.core")
但是我們不需要直接做這2個操作
中間還有一層interface,
http://files.luaforge.net/releases/luasocket/luasocket
下載luascoket,我是載2.0.2
將下載回來的資料依照
http://w3.impa.br/~diego/software/luasocket/installation.html
所示放入lua資料夾內
可以看到socket.lua這支有使用到 require("socket.core")
mine.lua也有使用到 require("mime.core")

在程式一開始
require "socket"
require "mine"
之後 就可以直接使用
local socket = require("socket")
進行socket操作了!

以下先參考一篇文章
該文章實作lua版的server跟client
http://dhq.me/luasocket-network-lua-module

接著,我們來實作nodejs的server,以及client 的lua

待續...

沒有留言:

張貼留言