-
lua5.1x源码和tolua源码中.h .c文件都提取出来放到工程中
-
加入一下两个编译宏:
LUA_SOURCE
_CRT_SECURE_NO_WARNINGS -
在tolua-5.2.4\src\bin\lua\compat.lua中加入
table.unpack = unpack
4 tolua -n testlib -o test.cpp test.pkg
gcc构建:
首先 --whole-archive 和 --no-whole-archive 是ld专有的命令行参数,gcc 并不认识,要通gcc传递到 ld,需要在他们前面加 -Wl,字串。
–whole-archive 可以把 在其后面出现的静态库包含的函数和变量输出到动态库,–no-whole-archive 则关掉这个特性。
比如你要把 liba.a libb.a libc.a 输出到 libabc.dll(或libabc.so)时应该这么写:
libabc.dll:liba.c libb.a libc.a
gcc -shared -o $@ -L. -Wl,–whole-archive -la -lb -lc -Wl,–no-whole-archive
在–whole-archive作用下的库里不能有函数同名。
-shared 该选项指定生成动态连接库
-l (小写的l)参数就是用来指定程序要链接的库,-l参数紧接着就是库名
gcc -c -std=c99 -o file1.o file1.c
g++ -c -std=c++0x -o file2.o file2.cpp
g++ -o myapp file1.o file2.o