小编gee*_*owl的帖子

得到错误'char16_t和char32_t未声明'

我正在Linux上用C++开发一个程序.gcc版本是4.5.1 20100924.我想在我的程序中使用std :: atomic_int.我已经包含了原子头如下:

include <atomic>
Run Code Online (Sandbox Code Playgroud)

当我编译程序时,我得到以下错误:

In file included from /usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomic_base.h:87:0,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/atomic:41,
                 from ../Source/Main.h:33:
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomicfwd_cxx.h:107:25: error: ‘char16_t’ was not declared in this scope
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomicfwd_cxx.h:107:33: error: template argument 1 is invalid
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomicfwd_cxx.h:107:53: error: invalid type in declaration before ‘;’ token
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomicfwd_cxx.h:110:25: error: ‘char32_t’ was not declared in this scope
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomicfwd_cxx.h:110:33: error: template argument 1 is invalid
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/atomicfwd_cxx.h:110:53: error: invalid type in declaration before ‘;’ token
Run Code Online (Sandbox Code Playgroud)

如果我包含<cstdint>,我会得到相同的错误.我的系统上没有标头uchar.h和cuchar.h.如何解决编译错误?

先感谢您.

c++ linux gcc g++ std

8
推荐指数
2
解决办法
1万
查看次数

Cygwin 中的 vim 在打开文件时将第一个字符替换为“g”

我在 Cygwin 终端中使用 vim。一切正常。最近,我在 Cygwin 中添加了一个包,导致 vim 和其他一些组件的更新。现在,当我在 vim 中打开任何文件时,文件中的第一个字符将被替换为字符“g”。

我尝试删除 .vimrc 以及我的主文件夹中 .vim 文件夹中的所有文件。但问题仍然存在。

为了理解这个问题,我使用“vim -E”打开了一个文件。打开后,我在窗口底部看到以下内容:

Entering Ex mode. Type "visual" to go to Normal mode.
:]11;rgb:0000/0000/0000\
Run Code Online (Sandbox Code Playgroud)

vim 中的键序列 rgb 会将第一个字符替换为 'g'。

这个问题似乎与xterm配置有关。但我无法弄清楚。

我该如何解决这个问题?

预先感谢您的帮助。

更新:

我在 ~/.vimrc 中添加了以下行:

配色方案默认值

这解决了问题。

vi vim cygwin xterm

5
推荐指数
1
解决办法
1917
查看次数

在FFmpeg configure命令中启用MP4分路器

我想启用MP4多路复用和多路分解,H264解码和MJPEG编码,并禁用FFmpeg configure命令中的所有其他功能.

我知道我可以使用--disable-everything选项并启用所需的组件.当我列出使用--list-demuxers--list-decoders选项的解复用器和解码器时,我没有看到MP4解复用器或解码器.我确实在多路复用器列表中看到了MP4 muxer.

我应该使用什么选项在FFmpeg configure命令中启用MP4分路器?

预先感谢您的帮助.

ffmpeg configure

4
推荐指数
1
解决办法
4834
查看次数

标签 统计

c++ ×1

configure ×1

cygwin ×1

ffmpeg ×1

g++ ×1

gcc ×1

linux ×1

std ×1

vi ×1

vim ×1

xterm ×1