linux centos 编译Lua5.2.0 静态库 动态库
一 lua下載
?lua5.2.0下載地址 :http://download.csdn.net/download/yzf279533105/10109818
二
筆者這里linux環境為centos6.8 64位
僅編譯lua靜態庫
1. 從上面的下載地址下載得到lua-5.2.0.tar.gz壓縮包,筆者這里是放在了/home目錄下
2. 進入目錄 /home,執行解壓命令 tar -zxvf?lua-5.2.0.tar.gz ?即可解壓得到目錄lua-5.2.0
3. 進入目錄 /home/lua-5.2.0/src
4.?執行命令?yum install readline-devel ?這是由于lua編譯依賴readline庫,而其依賴ncurses庫,但沒有指定
5. 執行命令 make linux 后面的linux表當前平臺
6. 即可在當前目錄,即 /home/lua-5.2.0/src目錄下?得到編譯出來的靜態庫liblua.a
7. 筆者編譯出來的lua靜態庫下載地址:http://download.csdn.net/download/yzf279533105/9950914
同時編譯lua靜態庫,動態庫
1. 從上面的下載地址下載得到lua-5.2.0.tar.gz壓縮包,筆者這里是放在了/home目錄下
2. 進入目錄 /home,執行解壓命令 tar -zxvf lua-5.2.0.tar.gz ?即可解壓得到目錄lua-5.2.0
3. 進入目錄 /home/lua-5.2.0/src
4. 執行命令 yum install readline-devel?這是由于lua編譯依賴readline庫,而其依賴ncurses庫
5. 執行命令 vim Makefile 打開make文件
6. 修改?CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) 改為
? ??CFLAGS= -O2 -Wall -DLUA_COMPAT_ALL $(SYSCFLAGS) $(MYCFLAGS) -fPIC? ?后面加的-fPIC表示要編譯位置無關代碼
7. 在?LUA_A=liblua.a 下面添加一行?LUA_SO=liblua.so 表新建一個目標,要編譯出lua動態庫,編譯出來的動態庫文件名字為liblua.so
8. 修改?ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) 改為?ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO) 表示添加上剛才的目標
9. 在?$(LUA_A): $(BASE_O)
? ? ? ? ? ?$(AR) $@ $?
? ? ? ? ? ?$(RANLIB) $@?
? ? 下面添加
? ?$(LUA_SO): $(CORE_O) $(LIB_O)
? ? ? ? $(CC) -o $@ -shared $? -ldl -lm ? ? ? ? 注意:本行前面的空格其實是一個tab
10. 保存該makefile文件,然后執行命令 cd .. 用來回到上層目錄,即回到目錄/home/lua-5.2.0
11.?執行命令 vim Makefile 打開make文件
12. 修改?TO_LIB= liblua.a 改為?TO_LIB= liblua.a liblua.so ?表同時編譯靜態庫和動態庫
13.?保存該makefile文件,然后執行命令make linux 后面的linux表當前平臺
14.?即可在當前目錄,即 /home/lua-5.2.0/src目錄下?得到編譯出來的靜態庫liblua.a,動態庫liblua.so
15.?筆者編譯出來的lua靜態庫下載地址:http://download.csdn.net/download/yzf279533105/9950950
總結
以上是生活随笔為你收集整理的linux centos 编译Lua5.2.0 静态库 动态库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win7 VS2013 新建工程 编译l
- 下一篇: Boost在Linux和windows下