快速业务通道

在NetBeans IDE中从现有代码创建项目并设置代码帮助 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16

在NetBeans IDE中从现有代码创建项目并设置代码帮助

时间:2011-07-20

要获取更多有关在 NetBeans IDE 中使用 C/C++ 应用程序的信息,请参见 NetBeans 网站上的 C/C++ 应用程序学习课程页。

教程需求

在继续前,请确保您重新检查了本节中的需求。

先决条件

本教程假设您已经有一些 C 和 C++ 的编程经验。

本教程所需的软件

在开始前,您需要安装 NetBeans 6.0。C/C++ 下载选项包括 NetBeans IDE 6.0 和 C/C++ 支持。

问题是什么?

IDE 的一项职责就是代码模型的构建。代码模性对 IDE 功能很重要,例如:

代码完成

超链接

导航

为了正确生成模型,IDE 需要关于项目的信息,例如:

编译的文件

使用哪个编译器

用户包含路径和每个编译的文件中的宏

使用的头文件

没有这些信息,IDE 无法生成恰当的模型,这将造成 IDE 的功能工作出错。

当然,所有这些信息都包含在 makefile 里。问题是由于以下原因,难以判断出必要的信息:

复杂的开源项目通常有一个层次文件结构,主 makefile 引用了子目录下的 makefile。

Makefile 常常使用外壳脚本命令。

有时候 make 实用工具的行为取决于它前面的操作;例如,基于前一步中所创建的文件的存在性。

Netbeans IDE 提供了另一种方法来获取模型的必要信息,它基于使用下列文件中的编译器注释或调试信息:

对象文件

静态或动态库

可执行文件

如果工作的?

让我们检查在为某个开源应用程序新建 Netbeans IDE 项目时的典型情况。

这种情况始于开始下载某个开源项目。我们使用 MySQL 项目。以下指令都假设我们已经载入了该开源项目并安装了必要的软件。现在我们来配置这个项目。

要保证编译器注释的完整,我们提供附加的编译标志:

./configure CFLAGS="-g3 -gdwarf-2" CXXFLAGS="-g3 -gdwarf-2"

在NetBeans IDE中从现有代码创建项目并设置代码帮助(2)

时间:2011-07-20

这些标志有什么用?

我相信 -g 标志广为人知。该标志告诉编译器在对象文件中包括调试信息。该标志的 -g3 变体使调试信息更完整。该标志使得能够获取用户宏的信息。

-gdwarf-2 标志告诉编译器使用版本 2 的 DWARF 调试信息格式。

我们用 make 命令生成应用程序。基本来说,我们必须确保应用程序用以上提到的标志来编译。

怎样告诉 make 实用工具去使用必要的标志取决于特定的开源项目。有时候有必要导出环境变量:

export CFLAGS="-g3 -gdwarf-2" export CXXFLAGS="-g3 -gdwarf-2"

对于不灵活的项目,有必要查看 makefile 的内容,以便了解怎样提供标志。

现在我们的开源项目已经成功生成。所以能够创建一个 NetBeans IDE 项目。

启动 NetBeans IDE。

通过选择“文件”>“新建项目”>“C/C++”>“基于现有代码的 C/C++ 项目”来新建一个项目。

让我们来看看“新建项目”向导的步骤。

在第二步的“生成工具”页,我们必须指明开源项目的主 makefile 的位置。指向正确的 makefile,才能从 IDE 生成应用程序。

第三步值得额外注意。在“生成操作”页,您可以指定应用程序的可执行文件(生成结果)的位置,这使得能够从 IDE 中启动应用程序。您可以稍后填写该字段。

在第五步的“代码帮助配置”页,向导会根据编译器注释,建议自动建立 IDE 项目。让我们看看这里面发生了什么。如果在第三步,您指定了生成结果的位置,向导就使用来自生成结果的编译器注释。否则,向导将使用来自开源项目文件夹中的所有对象文件、库和可执行文件中的编译器注释。向导使用从这些文件中获取的信息来建立 IDE 项目。

配置级别告诉向导怎样统合发现的用户包含目录和宏。对于每个编译的文件,编译器注释都包含用户包含目录和宏。但是为了 IDE 项目在以后维护的方便,也可以设置另外的配置级别。例如,如果您选择项目级别配置,那么所有的用户包含目录和宏将统合到项目属性中。

在最后一步,选择 IDE 项目的位置。缺省情况下,IDE 建议把项目放到您的主目录下,这样就能完全分离 IDE 项目和开源项目。由于版本控制系统,有时候这种分离很有用。但您完全可以使用开源项目本身中的一个文件夹。IDE 把关于 IDE 项目的所有信息放到一个叫做 nbproject. 的特殊文件夹里。

在 NetBeans IDE 项目创建的结尾,向导将在模型中只包括已编译的文件或被已编译的文件包含的文件。未使用的文件将被标为从代码帮助中排除。每个编译的文件都有正确的用户包含路径和宏。

最后是几个问题的解答

怎样编辑用户包含目录和宏?

在项目的属性、逻辑文件夹或文件(“属性”>“代码帮助”>“C 编译器”>“常规”,或者“属性”>“代码帮助”>“C++ 编译器”>“常规”)中。值得注意的是,属性可以从项目和文件所在的逻辑文件夹继承。文件具有 C 编译器或者 C++ 编译器的属性,这取决于文件的扩展名。项目和文件夹具有 C 编译器和 C++ 编译器的属性。

怎样检测出 IDE 项目的配置是错的?

通常此类 IDE 项目有未解析的包含目录。这些都显示在项目窗口中,并在项目节点的右上角用一个蓝背景的小问号标记。您可以查看未解析的引用目录列表,方法是右键单击项目节点,然后选择“代码帮助”>“显示失败的 #include 目录”。

可以配置一个现已存在的 IDE 项目吗?

可以。首先,用上面提到的必要标志生成开源项目。然后右键单击项目节点,选择“代码帮助”>“配置代码帮助”。“配置代码帮助”向导以两种模式工作:简易和高级。

简易模式重复新建项目向导的操作。

高级模式让您选择获取编译器注释的不同方法,并具有一个分析结果的预览。

有可能让一个 IDE 项目具备不同平台/设备相关的配置吗?

可以。您可以在项目属性中管理配置。对每个配置,您都可以启动“配置代码帮助”向导。在向导中指定不同平台/设备的生成结果。向导将设置当前的活动配置。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号