可执行文件怎么编译
1. 如何编译arm上运行的qt2可执行文件
编译好的QT的程序,一般会有几个.CPP\.h文件,这么多的文件我们要怎么样编译。首先,我们需要安装QT版本的库,一定要注意,这个库文件一定和开发板上的是同一个库。我们假设这个库名字叫qtembed450-arm。以下步骤一定要注意:
1.安装目录一定要在“/usr/local/”下;
2.安装成功后,这步非常关键,一定要设置环境变量,而且,我们要设置三个环境变量,这样做有三个目的:①可以在任何路径下用库里的命令②编译时候可以指定编译规则为arm-linux-g++③编译时候可以指定到所需要的库文件。那么安装后,输入一下命令:gedit /root/.bashrc.这个命令执行后就进入到设置环境变量的地方,我们要加入以下三个环境变量的设置:
export PATH=$PATH:/usr/local/qtembed450-arm/bin
export LD_LIBRARY_PATH=$LD_LTBRARY_PATH:/usr/local/qtembed450-arm/lib
export QMAKESPEC=/usr/local/qtembed450-arm/mkspecs/default
以上设置非常的重要,非常的关键。呵呵,先照着设置,具体原因我会细谈。注意,我编译用的很重要的qmake-arm 命令,就在/usr/local/qtembed450-arm/bin下,可以打开看看哦!环境变量设置好后,用which qmake-arm 命令来确认下是否成功,呵呵。
3.准备工作做到这里,算是进行一半了,哎,真累啊!还要接着写呢。接下来我们要把我们的编译好的QT程序的文件夹打开,把里面的 .CPP/.h文件拷贝出来,新建立一个文件夹;
4.把以上的文件里的.cpp .h文件复制后新建立一个文件夹。
5.新文件夹建立后,在linux终端中进入到该文件夹所在目录下,执行这个命令:qmake-arm -project命令,千万注意,-project 和arm之间一定要有空格啊!该命令执行后,会生成一个.pro文件,紧接着呢,执行qmake-arm命令,该命令执行后呢,会生成一个Makefile文件,这步很关键哦,没有这步就不会有Makefile文件,一般在这步会出现很多错误,就是库没有发现之类,这个时候,一定要检查前面的步骤,仔细检查看是否是错误。我们这个时候打开Makefile文件看一下,会发现,里面的编译已经变成arm-linux-g++。这个时候,就踏实,接下来怎么办?还用问吗,直接make下就好了,哈哈,简单吧!看到上面的qtmyjpg文件了吗?这个是可以在开发板上运行的哦!接下来不用我说了吧,直接发送到开发板上执行,可以看到图片喽!
6.下到开发板上之后呢,通常会发现没有权限,执行chmod +x qtmyjpg 就可以了,但是注意,要执行这个qtmyjpg文件,一定要这样输入命令:./qtmyjpg -qws为什么需要加这个参数呢?很简单,你不加执行时会出现错误原因,自己看下吧,哈哈!
7.一般这个时候触摸屏需要矫正。进入“/usr/tslib/bin/”,查看里面的文件,有一个“ts-calibrate”文件,执行这个文件,./ts-calibrate 后,可以看到LCD屏幕上出现十字点,用触摸笔点一下就可以,至此,整个QT在LCD上显示整理完毕,花了我半下午时间加上对曹老师的请教,终于完成,嘿嘿!赶紧试试哦!
2. c语言如何把c程序编译成可执行的exe文件
1、编写一段简单的代码,如下图所示,编辑一段简单的输出语句。
3. windows下怎么编译成可执行文件
源代码需要在对应的开发环境中进行编译才能生成可执行文件。可用记事本打开并查看源代码,确定其开发语言,然后安装对应的开发软件进行编译。供参考!
4. 如何把一个程序编译成可执行文件
先改下你的代码:include<stdio.h> /*包含stdio.h文件,因为有个printf函数要执行*/int mian() /*虽然void mian也行,但建议这样*/float r,area; /*你这里错了,folat改成float*/r=10;area=3.14159*r*r; return 0;}去网上下载一个DEV-C++,然后自己学会安装,编译,网上应该有教程。
5. C++中怎样将程序编译成为可以执行的exe文件
这个问题我也遇到到,按F6就可以自动生成。然后在
调试--最下面的属性----在生成里面-----输出---输出路径---里面自己设置一个路径----EXE文件就在bin\Debug\文件夹里面。
有问题就追问·
6. c语言编译流程(c语言是如何变成可执行文件的)
1.预编译,把源代码中的宏展开并把包含的文件的源代码插入程序的源代码中.
2.编译,把源代码编译成二进制的目标文件.但是此时目标文件还是不可执行的.
3.汇编,这一步主要是处理源代码中的汇编代码
4.连接,把目标代码和二进制的库文件以及其它内容合并成最终的可执行文件.
7. iar使用makefile编译
要编译出在 iar开发板上运行的可执行文件,需要使用到交叉编译器 iar-linux-gnueabihf-gcc 来编译,在终端中输入如下命令:
iar-linux-gnueabihf-gcc -g -c led.s -o led.o
上述命令就是将 led.s 编译为 led.o,其中“-g”选项是产生调试信息,GDB 能够使用这些
调试信息进行代码调试。“-c”选项是编译源文件,但是不链接。“-o”选项是指定编译产生的文
件名字,这里我们指定 led.s 编译完成以后的文件名字为 led.o。执行上述命令以后就会编译生
成一个 led.o 文件
2 、arm-linux-gnueabihf-ld 链接文件
arm-linux-gnueabihf-ld 用来将众多的.o 文件链接到一个指定的链接位置。我们在学习SMT32 的时候基本就没有听过“链接”这个词,我们一般用 MDK 编写好代码,然后点击“编
译”,MDK 或者 IAR 就会自动帮我们编译好整个工程,最后再点击“下载”就可以将代码下载
到开发板中。这是因为链接这个操作 MDK 或者 IAR 已经帮你做好了,因此我们现在需要做的就是确定一下本试验最终的可执行文件其运行起始地址,也就是链接地址。这里我们要区分“存储地址”和“运行地址”这两个概念,“存储地址”就是可执行文件存储在哪里,可执行文件的存储地址可以随意选择。“运行地址”就是代码运行的时候所处的地址,这个我们在链接的时候就已经确定好了,代码要运行,那就必须处于运行地址处,否则代码肯定运行出错。比如设备支持 SD 卡、EMMC、NAND 启动,因此代码可以存储到 SD 卡、EMMC 或者 NAND 中,但是要运行的话就必须将代码从 SD 卡、EMMC 或者NAND 中拷贝到其运行地址(链接地址)处,“存储地址”和“运行地址”可以一样,比如STM32 的存储起始地址和运行起始地址都是 0X08000000,输入如下命令
arm-linux-gnueabihf-ld -Ttext 0X87800000 led.o -o led.elf
上述命令中-Ttext 就是指定链接地址,“-o”选项指定链接生成的 elf 文件名,这里我们命名
为 led.elf