Skip to content
junzhan.yzw edited this page Nov 5, 2015 · 1 revision

安装 Wax

使用Cocoapods

  • 通过tag依赖,在Podfile里添加pod 'wax', :git=>'[email protected]:alibaba/wax.git', :tag=>'1.1.0'
  • 通过commit依赖,在Podfile里添加pod 'wax', :git=>'[email protected]:alibaba/wax.git', :commit=>'5c762ad'
  • 通过本地目录依赖,在Podfile里添加pod 'wax', :git=>'[email protected]:alibaba/wax.git', :path=>'/User/junzhan/wax'
  • 不知道Cocoapods? 那你就out了,搜一下,网上资料很多.
    • 例子见examples/InstallationExample/InstallWithCocoaPods

手动添加源码

  • 按照此规则把lib目录里的文件拷到你的项目里.
'lib/*.{h,m}', 
'lib/adaptation/*.{h,m}',
'lib/lua/*.{h,m,c}', 
'lib/extensions/block/*.{h,m}', 
'lib/extensions/ivar/*.{h,m}',
'lib/extensions/capi/**/*.{h,m,c}', 

如果你需要在lua里使用更多的扩展库,那么可以把这些也加入项目里

'lib/extensions/CGAffine/*.{h,m}',
'lib/extensions/CGContext/*.{h,m}',
'lib/extensions/filesystem/*.{h,m}' ,
'lib/extensions/HTTP/*.{h,m}',
'lib/extensions/json/**/*.{h,m,c}'
'lib/extensions/SQLite/**/*.{h,m,c}'
'lib/extensions/xml/**/*.{h,m,c}'

若使用SQLite需要在Build Phases->Link Binary With Libraries里添加libsqlite3
若使用xml需要在Build Phases->Link Binary With Libraries里添加libxml2,并在Build settings->Head Search Path添加${SDKROOT}/usr/include/libxml2

  • 在TARGETS->Build Phases->Compile Sources里给这些文件加上Compiler Flags为-fno-objc-arc
  • 例子见examples/InstallationExample/InstallWithSource

使用静态framework

  • 打开命令行cd到Framework工程目录.cd WAX_ROOT/tools/Framework
  • 运行Rakefile. rake package wax将会被编译
  • 编译产物在WAX_ROOT/framework/wax.framework
  • 将wax.framework添加到你的工程
  • Build Settings-> Framework Search Paths添加wax.framework所在目录.(注意要用相对目录)
  • 头文件依赖使用#import <wax/wax.h>
  • 例子见examples/InstallationExample/InstallWithStaticFramework

开始使用wax

    #import "wax.h" // or #import <wax/wax.h>
   wax_start("init.lua", nil);
   // To add wax with extensions, use this line instead
   // #import "wax/wax_http.h"
   // #import "wax/wax_json.h"
   // #import "wax/wax_filesystem.h"
   // wax_start("init.lua", luaopen_wax_http, luaopen_wax_json, luaopen_wax_filesystem, nil);
	
	wax_runLuaString("print('hello wax')");

使用注意

  • wax_start需要在使用任何wax接口前被调用
  • wax_start要在主线程被调用
  • wax_start只能被调用一次
Clone this wiki locally