PSP编程初探 Hello World
自己有一台PSP2000,玩了这么长时间的游戏,所以打算去探究一下PSP这个平台的程序的构建方式。
在网上搜了很多资料,感觉能用上的不多,毕竟这太小众了,通过自己的探索,总结了一下。
- 先搭建MinGW编译环境(参考:http://www.mingw.org/ 或点击直接下载链接),下载mingw-get-setup.exe。

下载完之后,双击打开,直接点击下方的Install按钮

这个页面就根据个人爱好选择吧,建议直接点Continue,之后就等待安装完毕。
这时桌面上会出现下面的图标:

- 双击打开之后,如下图所示,在[Basic Setup]选项下,把右边的4个绿色的框选中。

然后选择[Installation]à[Update Catalogue]

慢慢等待下载…
- 完毕之后,可以启动命令行,输入[mingw32-gcc -v],查看当前C编译器的版本,如果没有正常显示的话,可能需要手动添加环境变量,这里不再赘述。

- 之后需要下载PSP的SDK(Software Develop Kit 软件开发工具包)包,参考http://devkitpro.org/ 或点击直接下载链接。

下载完之后,双击打开,一路都是Next,到以下的界面之后,在下拉框选择[devkitPSP],然后就是选择安装路径~

慢慢等待下载和安装结束…
- 接下来就需要进行第一个PSP的程序编译工作了。
进入刚刚安装好的devkitPSP文件夹,在其内部以此进入devkitPSP\psp\sdk\samples文件夹。

这里面全是示例程序,而我们需要写的HelloWorld程序则使用exceptions这个文件夹的例程。

这个文件夹里面有2个文件,main.cpp程序源文件和Makefile构建文件。
用记事本将程序文件打开之后,修改

为

然后打开命令行,使用cd命令定位到此文件夹,然后输入mingw32-make即可进行PSP程序的编译

之后生成的文件如下图所示

其中EBOOT.PBP就是我们需要的最终PSP能够执行的文件。
在 PSP根目录/PSP/GAME下,创建一个Hello文件夹,然后把我们编译完成的EBOOT.PBP文件复制进去,这样就部署成功了(图以后补上)。

最终,只需要打开PSP,就可以在游戏目录里面找到我们编译好的程序,运行即可~


自此,PSP的Hello World就完成了,第一篇博文完成~撒花~
2015.5.3 使用Windows Live Writer更新。
PSP编程初探 Hello World的更多相关文章
- Haskell学习-函数式编程初探
原文地址:Haskell学习-函数式编程初探 为什么要学习函数式编程?为什么要学习Haskell? .net到前端,C#和JavaScript对我来说如果谈不上精通,最起码也算是到了非常熟悉的 ...
- Android Studio NDK编程初探
继上一篇学习了如何使用NDK编译FFMPEG后,接下来就是要学习如何在Android Studio中使用了. 经过参考和一系列的摸索,记录下具体步骤. 创建C++ Support的Android St ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之九 || 依赖注入IoC学习 + AOP界面编程初探
更新 1.如果看不懂本文,或者比较困难,先别着急问问题,我单写了一个关于依赖注入的小Demo,可以下载看看,多思考思考注入的原理: https://github.com/anjoy8/BlogArti ...
- Z从壹开始前后端分离【 .NET Core2.2/3.0 +Vue2.0 】框架之九 || 依赖注入IoC学习 + AOP界面编程初探
本文梯子 本文3.0版本文章 更新 代码已上传Github+Gitee,文末有地址 零.今天完成的绿色部分 一.依赖注入的理解和思考 二.常见的IoC框架有哪些 1.Autofac+原生 2.三种注入 ...
- iOS开发--Swift RAC响应式编程初探
时间不是很充足, 先少说点, RAC的好处是响应式编程, 不需要自己去设置代理委托, target, 而是主要以信息流(signal), block为主, 看到这里激动吧, 它可以帮你监听你的事件, ...
- Java动态编程初探——Javassist
最近需要通过配置生成代码,减少重复编码和维护成本.用到了一些动态的特性,和大家分享下心得. 我们常用到的动态特性主要是反射,在运行时查找对象属性.方法,修改作用域,通过方法名称调用方法等.在线的应用不 ...
- C#基础系列——异步编程初探:async和await
前言:前面有篇从应用层面上面介绍了下多线程的几种用法,有博友就说到了async, await等新语法.确实,没有异步的多线程是单调的.乏味的,async和await是出现在C#5.0之后,它的出现给了 ...
- Javascript 面向对象编程初探(一)--- 封装
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). 那么,如果 ...
- 老生常谈: Javascript 面向对象编程初探(一)--- 封装
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). 那么,如果 ...
随机推荐
- UIButton设置了UIControlStateSelected和UIControlStateHighlighted状态的图片点击会闪烁的解决方案
[btn setBackgroundImage:img1 forState:UIControlStateSelected|UIControlStateHighlighted]; [btn setIma ...
- 基于jquery的侧边栏分享导航
今天给大家分享一款基于jquery的侧边栏分享导航.这款分享钮一直固定于左侧,鼠标经过的时候凸出显示,这款分享按钮适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera.傲 ...
- kafka监控之KafkaOffsetMonitor
参考自:http://www.cnblogs.com/sunxucool/p/3904850.html 流行的kafka监控有kafka-web-console.KafkaOffsetMonitor. ...
- 基于C#实现的HOOK键盘钩子实例代码
本文所述为基于C#实现的HOOK实例,该实例可用来屏蔽系统热键.程序主要实现了安装钩子.传递钩子.卸载钩子等功能.在传递钩子中:<param name="pHookHandle&quo ...
- 让ConfigurationManager打开任意的配置文件
VisualStudio的配置文件很好很强大,用来保存数据库连接字符串或键值对都非常方便,只需要通过ConfigurationManager的ConnectionStrings或AppSettings ...
- Largest Rectangle in a Histogram 常用技巧 stack的运用
Largest Rectangle in a Histogram
- #pragma weak
采用 #pragma weak name 形式时,指令使 name 成为弱符号.链接程序没有找到 name 的符号定义时,不会显示错误消息,也不会出现符号的多个弱定义的错误消息.链接程序仅执行第一个遇 ...
- Android 高级UI设计笔记20:RecyclerView 的详解之RecyclerView添加Item点击事件
1. 引言: RecyclerView侧重的是布局的灵活性,虽说可以替代ListView但是连基本的点击事件都没有,这篇文章就来详细讲解如何为RecyclerView的item添加点击事件,顺便复习一 ...
- 干货:VLDB论文摘要-阿里技术突破性创新
阿里技术突破性创新 世界顶级大规模数据处理分析管理会议VLDB(VERY LARGE DATA BASE)于9月1日至5日在杭州举办,该会议也是也是大数据云计算领域的盛会,阿里巴巴两个团队在这个会议上 ...
- Window环境下配置Redis服务的方法及查看缓存数据的工具介绍
工具下载位置:http://pan.baidu.com/s/1hqVh1f2,包括服务端配置以及查看缓存的工具. 服务端是以服务的形式运行,将Redis服务端解压到某个目录,然后执行cmd执行命令: ...