如何解决包含boost标题g ++
我正在尝试使用c ++进行Boost高精度的简单示例,而无需将其安装在计算机上(仅使用标头)。
//func.cpp
#include <boost/multiprecision/cpp_int.hpp>
#include <iostream>
int main()
{
using namespace boost::multiprecision;
int128_t v = 1;
// Do some fixed precision arithmetic:
for(unsigned i = 1; i <= 20; ++i)
v *= i;
std::cout << v << std::endl; // prints 20!
// Repeat at arbitrary precision:
cpp_int u = 1;
for(unsigned i = 1; i <= 100; ++i)
u *= i;
std::cout << u << std::endl; // prints 100!
return 0;
}
我正在运行ubuntu,并且已将boost文件夹复制到要在其中运行func.cpp的主文件夹中。然后运行:
g++ -I/boost/ -o func func.cpp
我得到了错误
In file included from func.cpp:28:
boost/multiprecision/cpp_int.hpp:11:10: Fatal error: boost/cstdint.hpp: No such file or directory
11 | #include <boost/cstdint.hpp>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
看来cpp_int.hpp是#include-header,位于它上面的一个目录中(在我复制进来的boost文件夹内,我已经检查过了,在那儿)。我可能会缺少一些基本知识,因为在尝试使用其他软件包时会遇到相同类型的错误。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。