开源GIS实验田

OpenSource GIS Space

  • 内容导航

    Creative Commons
    本站文章全部原创
    转载请遵循创作共用协议
  • 最新评论

    • zhaiduo: 期待GO的web应用...
    • zdnet: 您好!去年8月您参加过我们ZDNET的优秀...
    • oschina: hi,此文已转贴到开源中国社区,网...
    • YUCHENG HU: MarkLogic 已经开始为各大出版机构进行...
    • Gao Ang: DITA的学习成本的确偏高,仅下载翻阅...
  • 热门主题

  • 随机阅读

    • September 2010
      M T W T F S S
      « Aug    
       12345
      6789101112
      13141516171819
      20212223242526
      27282930  
    • Gao Ang

      GaoMiao's Portrait
      有了理想
      就不要寻找放弃的理由

      站点搜索

      • 6 Users Online
    • 只言片语

      “It’s kind of fun to do the impossible.”-Walt Disney (1901-1966)
    • 年轻人终归是年轻人。 ——比克斯塔夫

    Linux下的编译开发

    27th December 2006

    作者: Gao Ang 可以转载,请以超链接标明原始出处和作者信息及版权声明
    网址: http://www.gaoang.com/archives/32

    在Linux环境下的编程实践不是很多,使用C语言开发跨平台的应用对自己来说是件有些挑战的事情,需要慢慢积累很多相关的知识和经验。

    首先,程序使用跨平台的图形库,Troll Technologies公司的Qt图形库是很不错的选择。包括QGIS、Tora、Terraview等平时会用到的开源GIS项目都是使用基于Qt的图形库实现,还有大名鼎鼎的KDE桌面和Google Earth也是基于Qt构建。Linux下常用的跨平台图形库还有wxWidgets,在Gtk+或X11界面上都可以运行,Linux上流行的Gnome桌面就是基于Gtk+开发,还有日常会使用到的GIMP 和Gaim也是使用Gtk+的图形库。

    Qt提供Designer设计器,可以图形化设计UI界面文件,然后导入到开发环境Visual Studio或KDevelop里面编译为本地界面代码,Qt提供的跨平台C++类库图形库,可以编译运行在Unix、Linux、Win32等多种操作系统平台之上。

    在Linux环境下由于使用GCC(GNU Compiler C)编译,配置依赖函数库的Makefile文件十分重要,使用make命令编译生成动态库so文件,还需要通过Mingw进行交叉编译生成Win32平台上运行的DLL动态链接库。如果使用VC调用,还要再增加一个步骤,首先把Mingw环境下生成的DLL动态库通过编译工具Dumpbin生成DEF定义文件,再用Lib命令生成VC可以调用的LIB库文件。

    MinGW即Minimalist GNU For Windows,是C++头文件和端口库的集合,在MinGW环境下可以不依赖第三方动态链接库情况下使用GCC产生Windows32 平台程序。并且MinGW允许GCC程序使用微软标准C运行时库(MSVCRT.DLL),同时还提供W32api函数库来使用Windows32 API包含的文件和端口库。与msvcrt.dll相结合,就可以充分使用CRT(C Runtime)以及Windows32 API提供的函数功能。

    至于Linux下C++的集成开发环境,还没有找到很中意的选择,Eclipse+CDT的功能组合局限性较大,而Linux下主流的开发调试环境KDevelopAnjuta的使用又还不太熟悉,项目代码还是使用传统的DDD(Data Display Debugger)进行错误跟踪。总的说来,Linux下的开发过程有着独有的优势和特点,尽管有时会感觉不像Win32平台下那样便捷,但最重要的是整个开发环境都是自由软件构成,而自由软件必定也是每一位开发者被赋予灵感与动力的源泉。

    5 Responses to “Linux下的编译开发”

    1. GaoAng Says:

      各位好。
      我是高苗。

      的朋友。
      很久没来了。
      发现更新了不少。
      原来还在GIS中。
      autodesk也有计划推一些网络图形产品。
      估计google earth 可能会有对手吧。
      是秘密计划。
      换手机了没。

    2. GaoAng Says:

      更新太慢。rss没用。

      看ip猜猜我是谁。

    3. GaoAng Says:

      There are a total of 4 用户 online now.

      Out of which, there are 1 Member, 1 Guest and 2 Bots.

      Most users ever online was 22 on 30th June 2006, 21:01

      1 Member Online Now
      #1 - GaoAng on 15.01.2007 @ 10:57
      网格GIS科学实验田 » Blog Archive » Linux下的编译开发 [url]

      1 Guest Online Now
      #1 - Guest on 15.01.2007 @ 10:57
      网格GIS科学实验田 [url]

      2 Bots Online Now
      #1 - Yahoo on 15.01.2007 @ 10:53
      网格GIS科学实验田 » 2006 » 八月 [url]

      #2 - MSN on 15.01.2007 @ 10:53
      网格GIS科学实验田 » About [url]

    4. GaoAng(原版) Says:

      RSS可以订阅的啊,我就用foxmail定的,地址是:
      http://www.gaoang.com/?feed=rss2
      手机还是原来的,也猜不出是谁来啊

    5. eric Says:

      专为嵌入式 gis开发的矢量渲染库发布linux版本。http://picasso-graphic.googlecode.com/files/picasso-0.8_pre_alpha.tar.bz2

    Leave a Reply

    XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>