首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用gcc/g++ 11.1导入模块

如何使用gcc/g++ 11.1导入模块
EN

Stack Overflow用户
提问于 2021-10-08 22:49:18
回答 1查看 1.4K关注 0票数 2

不确定现在是否支持import <module_Name>;。当我试图运行一个程序,包括模块,它统计note: c++20 'import' only available with '-fmodules-ts'是像-std=c++20这样的编译器标志,或者是目前不支持的模块。下面是一个使用模块的示例程序:

代码语言:javascript
复制
#include<iostream>
import <numbers>;
import <format>;

int main()
{
    double pi {std::numbers::pi};
    std::cout << std::format("Pi is = to {}", pi);

}

我知道我可以使用#include <numbers>,但我正在试图找出模块是否工作。我不太确定是否可以使用<import>添加#include

编辑10/8/21: I编写了一个二级程序,删除<format>std::format(),使用-fmodules-ts标志测试import <numbers>;的实现,但仍然没有工作。请参阅下面的程序和终端。

节目:

代码语言:javascript
复制
#include<iostream>
import <numbers>;


int main()
{
    double pi {std::numbers::pi};
    std::cout << pi;
}

航站楼:

代码语言:javascript
复制
g++ randomCodeWhileReading.cpp -o main -std=c++2a -fmodules-ts
randomCodeWhileReading.cpp:2:1: error: unknown Compiled Module Interface: no such module
    2 | import <numbers>;
      | ^~~~~~
In module imported at randomCodeWhileReading.cpp:2:1:
/usr/include/c++/11/numbers: error: failed to read compiled module: Unknown CMI mapping
/usr/include/c++/11/numbers: note: imports must be built before being imported
/usr/include/c++/11/numbers: fatal error: returning to the gate for a mechanical issue
compilation terminated.
EN

回答 1

Stack Overflow用户

发布于 2022-09-08 03:55:48

@ExZerminator,你是对的。已完成:

代码语言:javascript
复制
# g++ -std=c++20 -fmodules-ts hello.cpp -o hello.exe -x c++-system-header iostream
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69502406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档