码迷,mamicode.com
首页 > 其他好文 > 详细

SylixOS IDE工具使用

时间:2018-01-12 17:44:13      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:示例   return   text   1.5   parent   ext   虚拟   for   重定位   

       1. 问题描述

        使用RealEvo-IDE(以下简称IDE)开发程序时,误操作输入错误的函数名称时,编译器不会报错,输入错误的函数名示例代码如程序清单 1.1所示。

程序清单 1.1 示例代码

#include <stdio.h>
 
int main (int argc, char **argv)
{
    print("Hello World!\n");
 
    return  (0);
}

       控制台输出编译结果如 1.1所示。

技术分享图片

 图 1.1 编译结果

在虚拟机上运行该示例程序,运行结果如 1.2所示。

技术分享图片

图 1.2 运行结果

2. 问题分析

1.1可知IDE附带的编译器默认使用的参数为:

-nostdlib -Wl,-shared -fPIC -shared

   其中参数“-Shared”,表示生成共享目标文件,通常在建立共享库时用到。链接器可以使用这种文件跟其它的可重定位文件和共享目标文件链接,产生新的目标文件。

      3. 示例验证

Linux环境下,测试用例如程序清单 1.1所示。

通过“gcc”编译器编译,添加“-Shared”参数编译时会报警告,编译结果如 3.1所示。

技术分享图片

图3.1 使用shared参数编译结果

不使用“-Shared”参数编译会出现错误,编译结果如 3.2所示。

技术分享图片

图3.2 不使用shared参数编译结果


SylixOS IDE工具使用

标签:示例   return   text   1.5   parent   ext   虚拟   for   重定位   

原文地址:http://blog.51cto.com/12558126/2060322

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!