静态库把目标文件集合起来,使用ar (archive)程序创建。静态库的二进制文件以”a”拓展名结束。静态库让用户可以连接程序,而不需重新编辑代码,从而节省了编辑时间。
本文介绍了如何创建静态文件,将它们与你的程序连接起来,在你的程序中使用它们的方法。(推荐阅读:在bada程序中使用共享库)
创建静态库
为了创建静态库,你必须首先在bad IDE中为库创建一个项目,然后为不同的连编配置定义不同的属性。然后,你必须应以库的API,***,你必须构建库二进制。如需了解更多信息,请参阅以下部分:
创建一个库项目
为了创建静态库:
◆在bada IDE中,选择 File > New > bada Application Project.
如果bada Application Project选项不可见,确保你使用的是bada C++.
◆输入项目名称,选择bada Static Library项目类型;
◆点击完成Finish
图:创建静态库
设置C/C++ Build 属性
你必须为新的静态库设定build artifact设置。这些设置与Simulator和目标连编配置的设置一样。
为了设置build artifact:
◆在bada IDE Project Explorer中,右击静态库项目,选择Properties。
◆在Properties窗口,选择C/C++ Build > Settings
◆在Build Artifact键上,检查输出前缀是否为lib,artifact 拓展名是否为a。
◆点击OK。
库文件命名为 lib
图:在build artifact中的设置
定义库API
你必须在头文件中宣布库API,在相应的.cpp文件中定义它们。
下面的代码段显示如何为你的程序发布库API。
- // This method is archived in libStatLib.a
- int StatLibMethod(void);
- // User-defined class archived in libStatLib.a
- class MyClass {
- public:
- MyClass();
- virtual ~MyClass();
- void PrintMessage(void);
- };
注:准备归档的库方法和类必须宣布为一般的C++ declarations。
构建库
你必须构建一个库项目以生成库二进制文件。为了为每个连编配置构建项目,在bada IDE里,选择Project > Build Project。
如果连编成功,每个配置会生成相应的二进制文件,如下所示(libStatLib.a)。二进制文件位于项目的工作空间文件夹中。如, C:\bada\1.0.0\IDE\workspace\StatLib\.Target-Debug\libStatLib.a。
图:生成库二进制文件
将静态库连接到你的程序上
为了在你的bada程序中使用库的方法,你必须将库与程序连接起来,把相应的头文件防止在程序的.cpp文件中。此外,你必须定义库和在程序项目属性中通往其位置的搜索路径。
为了设定在程序项目属性中的库和搜索路径:
◆在bada IDE Project Explorer中,右击程序项目,选定Properties;
◆在Properties窗口中,选定C/C++ Build > Settings;
◆从Configuration的下拉菜单中,选定恰当的连编配置。
◆在Tool Settings 键中,选定bada C++ Linker > Miscellaneous.
◆添加在Other objects下使用的静态库,包括带库名称的路径细节。
◆点击Apply。
◆为其他连编配置重复步骤3-6.
◆保存设置,点击OK.
图:程序项目中的库设置
使用静态库方法
将静态库连接到程序后,你可以使用程序中的库API中定义的方法。
下面的代码段显示了使用静态库的方法。
- // Using the static library methods
- MyClass* obj = new MyClass;
- obj->PrintMessage();
- delete obj;
【编辑推荐】