无法使用 nana 库
Posted
技术标签:
【中文标题】无法使用 nana 库【英文标题】:Cannot use nana library 【发布时间】:2015-11-05 11:43:26 【问题描述】:我尝试将 Nana 库与 Code::Block IDE 一起使用。我进行了所有设置,例如here
并添加 -std=C++11 标志和 Boost 包含路径,但它会在构建时打印下一个错误:
nana/include/nana/paint/graphics.hpp|143|error: 'unsigned int nana::paint::graphics::bidi_string(const nana::point&, const char*, std::size_t)' 不能超载| nana/include/nana/paint/graphics.hpp|142|错误: 与‘无符号 int nana::paint::graphics::bidi_string(const nana::point&, const char_t*, std::size_t)’|
我只开始研究 C++ 11 标准和 Nana GUI 库,无法理解这些错误。
【问题讨论】:
看来你已经删除了config.hpp中定义的NANA_UNICODE 我不更改库中的文件,只是下载并解压到文件夹中 【参考方案1】:我遇到了同样的问题。
为了解决问题,我看看nana
它是如何通过编译nana
和make VERBOSE=1
来解决这个问题的,
并从中获取定义。
所以编译示例:
#include<nana/gui.hpp>
int main()
using namespace nana;
form fm;
drawingfm.draw([](paint::graphics& graph)
graph.string(10, 10, L"Hello, world!", colors::red);
);
fm.events().click(API::exit);
fm.show();
exec();
来自 nana 网站(http://nanapro.org/en-us/) 我使用这样的命令行:
g++ -DNANA_ENABLE_PNG -DNANA_LIBPNG -DNANA_LINUX -DNANA_UNICODE \
-DNANA_X11 -DPLATFORM_SPEC_HPP="<nana/detail/linux_X11/platform_spec.hpp>" \
-DSTD_CODECVT_NOT_SUPPORTED -std=c++11 -I nana/include/ \
test.cpp build/libnana.a -lX11 -lXft -lpthread -lpng
【讨论】:
以上是关于无法使用 nana 库的主要内容,如果未能解决你的问题,请参考以下文章