10

我已经构建并安装了一个名为OhNet的库。make install框架对应的头文件安装在usr/local/include/ohNet. 现在我想在我的 C++ 项目中使用库(我正在使用 eclipse)但是当我尝试包含一些头文件时,eclipse 无法找到这些文件。据我所知,eclipse默认应该在这些目录(/usr/include,/usr/local/include,...)中搜索头文件......我需要做什么才能使用这个库?我对 C++ 很陌生,以前没有使用过第三方资源。

谢谢你。

--EDIT-- 我只是想编写一个简单的“helloworld”程序来验证我是否正确地包含了框架。为了做到这一点,我想建立班级OpenHome::Net::DvDeviceStdStandard。参见:ohNet C++ 参考

我现在可以使用以下方法包含头文件: #include <ohNet/OpenHome/Net/Core/DvDevice.h>效果很好。但是我怎样才能创建一个类型的对象OpenHome::Net::DvDeviceStdStandard呢?现在?Eclipse 说这种类型无法解析。:(

#include <iostream>
#include <ohNet/OpenHome/Net/Core/DvDevice.h>

using namespace std;

int main() {

    OpenHome::Net::DvDeviceStdStandard device; //type cannot be resolved
    cout << "!!!Hello World!!!" << endl;
    return 0;
}
4

2 回答 2

12
  1. 使用-I编译器选项指向第 3 方库目录 ( -I/usr/local/include/ohNet)
  2. #include "[whatever you need from oHNet].h"根据需要在头文件和编译单元中使用(注意您可能需要在此处为​​第 3 方包含路径树中的子目录放置相对前缀路径!)
  3. 使用-L链接器选项指定您需要的第 3 方库的路径(-L/usr/local/lib可能)
  4. 使用-l链接器选项指定您需要的任何具体的第三个库(-l[oHNet]可能)

查看目录中实际安装的内容,以确定要放置的内容[whatever you need from oHNet].h[oHNet],s.th。喜欢liboHNet.a后者。

您没有在此处显式标记 [tag:Eclipse CDT],而是转到 Project->Properties->C++ Builder->Settings 对话框并查找 C/C++ Includes and Linker Options。

于 2013-07-26T17:34:31.777 回答
0

您必须将要使用的头文件放在项目文件夹中,然后在 .cpp 文件中使用#include,就像对任何其他头文件所做的那样。

于 2013-07-26T17:20:32.837 回答