Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/131.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用第三方库(sbpl)_C++_Linux_Shared Libraries - Fatal编程技术网

C++ 使用第三方库(sbpl)

C++ 使用第三方库(sbpl),c++,linux,shared-libraries,C++,Linux,Shared Libraries,我已经构建并安装了一个名为linux\ubuntu的库。安装后,我有以下文件: usr/local/include/sbpl在这里有一组文件,包括headers.h文件 usr/local/lib有一个libsbpl.so文件 现在我在编译一个简单的程序时遇到了一些问题: yus.cpp 如何正确编译和链接库 将枚举环境类型的定义从main.cpp移到headers.h,然后运行g++yus.cpp-I/usr/local/include-L/usr/local/lib-lsbpl试试g++yu

我已经构建并安装了一个名为linux\ubuntu的库。安装后,我有以下文件:

usr/local/include/sbpl在这里有一组文件,包括headers.h文件

usr/local/lib有一个libsbpl.so文件

现在我在编译一个简单的程序时遇到了一些问题:

yus.cpp


如何正确编译和链接库

将枚举环境类型的定义从main.cpp移到headers.h,然后运行g++yus.cpp-I/usr/local/include-L/usr/local/lib-lsbpl

试试g++yus.cpp-I/usr/local/include-L/usr/local/lib-lsbplStill会给我相同的错误:是/usr/local/include/还是usr/local/include?如果它的usr/local/include try g++yus.cpp-Iusr/local/include-Lusr/local/lib-lsbplAnd是头文件中定义的EnvironmentType?我不太相信这个测试文件中的一次:EnvironmentType是在主文件中定义的
#include <iostream>
#include <sbpl/headers.h> 

int main()
{
  EnvironmentType type;
  return 0;
}
$ g++ yus.cpp -Iusr/local/include/sbpl   gives the following error 
"error: 'EnvironmentType' was not declared in this scope"

$ g++ yus.cpp -L.-lsbpl   gives the same error as above