【问题标题】:How do I set the taglib character set on Windows to use unicode?如何在 Windows 上设置 taglib 字符集以使用 unicode?
【发布时间】:2011-09-26 03:26:55
【问题描述】:

TagLib 使用 CMake 构建系统来创建 Visual Studio 2010 解决方案和项目文件。

生成项目的唯一问题是字符集设置为 MBCS,而我希望它是 Unicode。

有没有办法通过 CMake 设置这个选项?

我目前正在使用它在 VS2010 命令提示符下在 Windows 上构建 taglib:

cmake -DWITH_MP4=ON -DENABLE_STATIC=ON .

【问题讨论】:

    标签: unicode build-automation cmake taglib


    【解决方案1】:

    除了安德烈的回答,您可以通过

    在 CMakeLists.txt 文件中指定字符集
    target_compile_definitions (TargetName PRIVATE -D_UNICODE -DUNICODE
                                                         <additional defines>)
    

    【讨论】:

    • 我们应该更好地在 cmake projet 上还是在 cmake 目标上设置 unicode?在多目标项目(比如 lib + exe)上,好的做法是什么? Unicode主要是接口的问题(cmd、屏幕、文件、网络...),我们应该在哪里设置这个约束?
    【解决方案2】:

    以下命令应该可以完成这项工作:

    cmake -DCMAKE_CXX_FLAGS=/D_UNICODE ..
    

    如果定义了_UNICODE 宏,cmake 会自动打开 Visual Studio 项目中的 Unicode 字符集。

    【讨论】:

    • Makw 确保同时定义 UNICODE 和 _UNICODE。一个影响 Win API,另一个影响 CRT 函数
    猜你喜欢
    • 1970-01-01
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-26
    • 2021-08-28
    • 1970-01-01
    相关资源
    最近更新 更多