最喜欢的跨平台库...
Code::Blocks的帮助插件不支持可执行文件。比如我想使用我自己写的MSDN辅助查询软件,格式要求:
msdn.exe 要查询的内容
example: msdn.exe MessageBox
然后使用CB的帮助插件,最后显示的是“*”。
使用Visual C++ 2008 Express,创建了一个win32工程,准备修改成wxWidgets项目。但在我认为所有的设置都是正确的情况下却在Release版本中出现链接错误:
wxqp.lib(monolib_app.obj) : error LNK2001: unresolved external symbol __imp__InitCommonControls@0
wxqp.lib(monolib_statbr95.obj) : error LNK2001: unresolved external symbol __imp__CreateStatusWindowW@16
wxqp.lib(monolib_spinbutt.obj) : error LNK2001: unresolved external symbol __imp__CreateUpDownControl@48
wxqp.lib(monolib_listctrl.obj) : error LNK2001: unresolved external symbol __imp__ImageList_GetIconSize@12
wxqp.lib(monolib_imaglist.obj) : error LNK2001: unresolved external symbol __imp__ImageList_GetIconSize@12
...
wxWidgets作为一个界面库,如果编译调试版本的话,文件非常大,使用时链接起来比较慢。而作为wxWidgets库的使用者,对wxWidgets库本身的调试并没有多大价值。但如果直接在Debug版本程序中使用Release的wxWidgets库的话,会产生链接错误:
app.obj||error LNK2001: unresolved external symbol "public: virtual void __thiscall wxAppConsole::OnAssertFailure(wchar_t const *,int,wchar_t const *,wchar_t const *,wchar_t const *)" (?OnAssertFailure@wxAppConsole@@UAEXPB_WH000@Z)|
这个问题困扰我太长时间了:我静态编译wxWidgets,几个关键的配置:
SHARED = 0
BUILD = release
RUNTIME_LIBS = static
都明确的指出当我释放Release版本时,应该选择/MT选项。然而总是链接错误:
libcpmt.lib(string.obj)||error LNK2001: unresolved external symbol "void __cdecl operator delete(void *)" (??3@YAXPAX@Z)|
wxmsw28u.lib(monolib_dcprint.obj)||error LNK2001: unresolved external symbol "void __cdecl operator delete(void *)" (??3@YAXPAX@Z)|
Tags: ,
使用Code::Blocks(以下简称CB)半年多了,也将自己所有的项目都转到CB下,但代码仍是一行一行的编写,全手工操作。基于界面的繁琐,试用wxFormBuilder 3.0,其操作虽然方便,但有一个我无法接受的缺点:无法保存用户添加的代码!转用wxSmith:作为CB的插件,我竟然从来未曾试用过它。
结果意出乎我的意料:不但可以保留用户手工添加的代码,可能可以随意排版,原则上只要保留相应的宏即可!
相见恨晚!
分页: 1/4 第一页 1 2 3 4 下页 最后页 [ 显示模式: 摘要 | 列表 ]