Skip to content

Embedfire/ebf_linux_qt_nes

Repository files navigation

本代码来源于github: https://github.com/nejidev/arm-NES-linux 感谢前辈的开源

编译使用

  1. 首先安装交叉编译器:可参考Linux的编译环境
  2. Linux上编译需要依赖相关的库文件:libnes-arm.tar.bz2,可在https://github.com/Embdefire/ebf_linux_qt_nes/releases页面下载!,也可在终端通过命令获取:
wget https://github.com/Embdefire/ebf_linux_qt_nes/releases/download/v1.0/libnes-arm.tar.bz2
  1. 将下载好的libnes-arm.tar.bz2文件解压到/usr/local/目录下:
sudo tar -jxf libnes-arm.tar.bz2 -C /usr/local/
  1. 进入源码的linux目录下,然后编译:
cd linux/
make
  1. 此时当前目录下会生成一个 InfoNes 可执行文件!拷贝到开发板上即可运行。
./InfoNes xxx.nes

注意事项

如果单独运行nes的话,需要把Qt关了,否则会抢资源刷新屏幕,屏幕会重影。

编译错误

当遇到以下错误就表明找不到相关的依赖文件,检查/usr/local/目录下是否存在libnes-arm/libasound-arm/libnes-arm/libzlib-arm/等文件夹!

arm-linux-gnueabihf-gcc  -c -O2 -fsigned-char  ../InfoNES_pAPU.cpp  -o ../InfoNES_pAPU.o -I /usr/local/libnes-arm/libasound-arm/include
arm-linux-gnueabihf-gcc  -c -O2 -fsigned-char  InfoNES_System_Linux.cpp  -o InfoNES_System_Linux.o -I /usr/local/libnes-arm/libasound-arm/include
InfoNES_System_Linux.cpp:23:28: fatal error: alsa/asoundlib.h: No such file or directory
 #include "alsa/asoundlib.h"
                            ^
compilation terminated.
Makefile:27: recipe for target 'InfoNES_System_Linux.o' failed
make: *** [InfoNES_System_Linux.o] Error 1