lua交叉编译

xiaoxiao2021-03-01  51

获取源码

curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz tar zxf lua-5.3.5.tar.gz cd lua-5.3.5

修改Makefile

修改安装路径

vi Makefile

INSTALL_TOP= /usr/local

改为

INSTALL_TOP= 自定义安装路径

修改编译配置

注意只修改它表明可以修改的位置 vi src/Makefile

# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= # Your platform. See PLATS for possible values. PLAT= none CC= gcc -std=gnu99 CFLAGS= -O2 -Wall -Wextra -DLUA_COMPAT_5_2 $(SYSCFLAGS) $(MYCFLAGS) LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS) LIBS= -lm $(SYSLIBS) $(MYLIBS) AR= ar rcu RANLIB= ranlib RM= rm -f SYSCFLAGS= SYSLDFLAGS= SYSLIBS= MYCFLAGS= MYLDFLAGS= MYLIBS= MYOBJS= # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======

修改后

# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= # Your platform. See PLATS for possible values. PLAT= none CC= powerpc-linux-gcc -std=gnu99 CFLAGS= -O2 -Wall -Wextra -DLUA_COMPAT_5_2 $(SYSCFLAGS) $(MYCFLAGS) LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS) LIBS= -lm $(SYSLIBS) $(MYLIBS) AR= powerpc-linux-ar rcu RANLIB= powerpc-linux-ranlib RM= rm -f SYSCFLAGS= SYSLDFLAGS= SYSLIBS= MYCFLAGS= MYLDFLAGS= MYLIBS= MYOBJS= # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======

安装

修改完成后执行

make linux make install

安装后的安装目录

├── bin │ ├── lua │ └── luac ├── include │ ├── lauxlib.h │ ├── luaconf.h │ ├── lua.h │ ├── lua.hpp │ └── lualib.h ├── lib │ ├── liblua.a │ └── lua │ └── 5.3 ├── man │ └── man1 │ ├── lua.1 │ └── luac.1 └── share └── lua └── 5.3

拷贝到开发板上即可

 测试:

开发板上运行

chmod +x lua ./lua -v echo "print(\"hello lua\")" | ./lua

注意

make test不能在PC上执行,因为是交叉编译的所以无法执行测试

可能遇到缺少库的问题,不过通常都能在交叉编译器的路径中找到,拷贝到板子上就行

转载请注明原文地址: https://www.6miu.com/read-3450090.html

最新回复(0)