如何编写代码在开发板上运行(如何编写代码在开发板上运行)
QT5编写的应用程序移植到开发板mini2440
qt其实就类似windows下的vc,开发一般有两种方式:1、代码实现控件的排列,2、使用creater拖拽实现(对于初学者建议使用这个),只要先拖拽实现界面,然后再添加逻辑代码,具体网上材料很多
如果要在开发板上运行,需要在你电脑ubuntu测试通过的基础上,使用编译你的开发板内核一样版本的编译器编译qt程序,当然,你的开发板上也要有qt的库;或者如果你是使用静态编译那就不需要了。然后使用ftp下载到开发板上运行就可以了。
如何运行代码
步骤:
1、在cmd中切换到编写的代码所保存的目录下;
2、在cmd中输入javac然后点空格,再点击文件名和包括后缀名确定后,在存放编写代码的文件下会生成一个class的字节码文件;
3、在cmd中输入java然后点空格,输入第二步中生成的字节码的文件名,不需要后缀名,点击确定即可运行代码。
代码就是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。计算机代码称为源代码,是相对目标代码和可执行代码而言的。 源代码就是用汇编语言和高级语言写出来的地代码,目标代码是指源代码经过编译程序产生的能被cpu直接识别二进制代码。
怎么将python代码移植到开发板上运行
由于Python在ARM上开发网络程序很高效,所以就移植了Python和Json。
(亲测) 适用开发板:FriendlyARM tiny/mini 6410 和?FriendlyARM mini2440,其他板子自己试下。
(亲测)适用内核:Linux-?2.6.28 ?Linux-?2.6.32??Linux-?2.6.38
arm-linux-gcc版本为4.3.2的板子
步骤
下载移植包:
1.
将bin12.02.tar传送到arm板上,并将其解压到arm板上操作系统的bin目录下,命令为:tar -xvf bin12.02.tar -C /
2.
将lib12.02.tar传送到arm板上,并将其解压到arm板上操作系统的lib目录下,命令为:tar -xvf lib12.02.tar -C /
3.
在/etc/profile文件的最后添加如下三条语句:
export PYTHONHOME=/lib/python2.5
export PYTHONPATH=.:$PYTHONHOME:$PYTHONHOME/site-packages:$PYTHONHOME/lib-dynload
export PATH=$PATH:$PYTHONHOME:$PYTHONPATH
Json文件解压时应拷到/lib/python2.5/下
如果import time有问题,一般是路径设置有问题
查看$PATH,如果其值不是如下的值
如果不是上图所示的值
在/etc/profile文件的最后添加如下三条语句:
export PYTHONHOME=/lib/python2.5
export PYTHONPATH=.:$PYTHONHOME:$PYTHONHOME/site-packages:$PYTHONHOME/lib-dynload
export PATH=$PATH:$PYTHONHOME:$PYTHONPATH
使更改后的环境变量生效(多种方式
执行 source /etc/profile
再次查看$PATH,确保其值改变,如果没法改变,结果如下图:
简单粗暴有效的办法就是将:/lib/python2.5/site-packages和/lib/python2.5/lib-dynload下的所有文件拷到/lib/python2.5/下
如何编译程序在开发板上面运行
用户程序insmod 核心模块加载:具体如下:
核心模块编译完成后,基本上是个未经符号定位的目标文件(object)(当然,如果这个object又是一些子object经过ld -r生成的话,则子object之间的符号定位是已经完成的),object是一种可重定位的代码,它可以加载到不同位置的内存执行。而真正加载进核心,并成为核心的一部分,则是用户程序insmod和核心几个系统调用共同完成的。在此过程中,insmod主要完成或通过系统调用完成以下的工作:
1)由参数找到模块文件,如insmod foo.o,模块文件就是foo.o,根据模块文件计算出模块文件所需的内存大小
2)调用系统调用create_module,为该模块分配核心空间内存
3)调用系统调用query_module,得到核心提供的符号表,与系统调用create_module的返回值(核心模块首地址)加在一起对模块进行重定位。
4)在用户空间为核心模块分配内存,并往该段内存复制一个经过定位的object映象。
5)调用系统调用init_module,将用户内存中的模块映象copy到相应的核心空间(首地址为create_module的返回值)。
6)释放用户内存,中止insmod运行。
如果一切顺利,没有出现未定位的符号,则核心模块object就融入系统,成为系统的一部分了。
核心模块的加载过程对核心来说实际是个“静态链接”的过程,这和用户程序动态链接运行过程再链接需要的代码还是不太一样的,当然,object的可重定位特性保证了链接后的代码正常运行,这点倒是比较相似的。
以上回答你满意么?
QT程序怎么移植到开发板并运行
需要的条件:
1.上位机编译好的可执行文件,以hello为例
在虚拟机的Ubuntu下,写好代码之后,定位到当前目录,执行命令
$ qmake -project //生成工程文件.pro
$ qmake //生成makefile
$ make //生成可执行文件hello
注意这些命令是在arm版的qt环境下的编译命令!执行qmake -v可查看其是否是arm版本,使用的是否是arm的库!执行file hello 可以查看hello是否是arm下运行的程序!
2.移植好QT库的开发板
刚开始学,只需要移植最基本的几个库就行了!触摸屏的、鼠标的、键盘的以后再说!分别是:libQtGui.so libQtCore.so libQtNetwork.so 以及fonts下的字库
为了防止错误,我一并把他们的相关链接文件so.4、 so.4.7、 so.4.7.2 都移植过去了!
移植方法你可以使用nfs !U盘!我用nfs速度太慢,非常不方便,索性用U盘拷过去了!因为这几个库小的不到1M,大的13M,U盘拷的还是很快的!比较让我费劲的是虚拟机不支持把链接文件拖拽到xp环境下!我只要在虚拟机里用邮件发到我的邮箱里,再在xp环境下把这些东西下下来,再通过U盘拷贝!曲折啊。。。我的虚拟机U盘不识别!
1)从哪儿移植呢?
从你虚拟机里编译安装arm版的QT库里面拷!..arm/lib下
2)移植过去放在哪儿呢?
最好是跟你在虚拟机里面的arm版QT所在目录一样,方便操作!看我的
分别在开发板下新建目录:home/fengchao/qtenv/arm/lib
home/fengchao/qtenv/arm/bin
home/fengchao/qtenv/arm/lib/fonts
把那些.so文件放到lib里面,把字库放到fonts里面!
3.最重要的一步,设置环境变量!
在开发板的根目录下执行:
$ vi /etc/profile
然后输入
export QTDIR=/home/fengchao/qtenv/arm
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
保存退出! ok !
vi使用:打开文件之后,输入i,进入编辑模式,再按ESC退出编辑模式进入命令模式,输入:键入命令wq即保存退出,q退出
4.然后把你编译好的hello这个可执行文件放到你的开发板上,随便哪儿吧
然后执行
./hello -qws
然后你就可以看见开发板上有显示了!但是可能文字较小,如果有中文可能还是乱码,没事,咱一步步往下来。。。
5.错误分析
1)提示没有链接到字库
QFontDatabase: Cannot find font directory /home/fengchao/qtenv/arm/lib/fonts - is Qt installed correctly?
这个就是你没装好字库,好好检查一下,修改过来!
2)提示没有QtGui.so no such file of directory
也是因为你没有移植好这个库或者跟他链接的文件,再或者环境变量有误!
在线编程如何运行编程代码
在线编程如何运行编程代码,下面简单介绍
工具/原料电脑方法/步骤1我们有时候身边没有自己的电脑,但是需要使用编写代码,我们可以随便找一台可以联网的电脑进行编程。
2我们可以直接在浏览器找到在线编程的网站。
3点击进入网站中,我们根据自己的需要找到编程语言,在网站的左上角。
4我们找到要编写的语言,这里都是有代码示例的,我们可以快速的编写。
5不同编程语言的编程环境也是可以选择的,不需要我们再另行配置。
6编写完成可以在网站右上角点击运行,查看编写结果。