你好,游客 登录 注册 搜索
背景:
阅读新闻

Windows与Linux编译器的区别

[日期:2007-05-15] 来源:Linux公社  作者:Linux [字体: ]
  移植工作开始后的第一步就是在目标平台Linux上进行编译,并链接源代码。由于需要移植的软件通常并未在Linux平台上编译过,编译的过程可能会遇到很大的困难。一般情况下,由类型声明引起的编译错误是比较容易修复的。比如Microsoft C/C++的头文件使用__declspec( dllimport/dllexport )来输入和输出DLL函数,在Linux上,把函数声明成extern “C”,或者再结合使用DEF文件,使用相应的链接命令就可以解决这些问题。但困难的地方在于编译器之间存在差异的部分,同时这也是可能引起很多运行时问题的重要因素,读者有必要在开始移植之前就充分了解。在此讲述一些容易被忽略而且后果比较严重的方面。

  以Visual C++ 2003和GCC 4.1.0为例。前者是Windows平台的主流编译器,兼容性良好,但是对C++标准的遵循并不严格。这意味着即使开发者写出不太符合标准的程序,编译器也可能能容忍。相反的是,GCC对标准的遵循相对严格得多,这样很容易造成在Windows运行良好的程序,在Linux上却引起意想不到的编译甚至运行时错误。linux
【内容导航】
第1页:Windows与Linux编译器的区别 第2页:Windows与Linux编译器的区别
第3页:Windows与Linux编译器的区别 第4页:Windows与Linux编译器的区别
相关资讯       windows  Linux编译器 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款