找回密码
 立即注册
查看: 246|回复: 0

tolua编译

[复制链接]
发表于 2021-8-31 18:58 | 显示全部楼层 |阅读模式
    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
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-24 13:41 , Processed in 0.087262 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表