谷歌快速搜索这个问题表明它很常见,我不能为我的生活找到解决方案.
我直接从wxWidgets网站直接安装wxWidgets 2.8.8 for Windows.
每当我尝试编译任何东西时(例如"wxWidgets的第一个程序"中描述的示例应用程序 - http://zetcode.com/tutorials/wxwidgetstutorial/firstprograms/),我得到:
wx/setup.h:没有这样的文件或目录
我在我的编译器搜索列表中包含了C:\ wxWidgets-2.8.8\include和C:\ wxWidgets-2.8.8\include\wx.
应该很简单 - 但事实并非如此!:(
如果我尝试使用与wxWidgets集成的IDE(例如Code :: Blocks),同样的事情就会发生 - 而且,我想,这样就可以解决这个问题......
所以,请帮忙...为什么找不到setup.h?
当您"安装"wxMSW安装程序时,wxWidgets不会内置到可用库中.这是因为有很多可配置元素,这正是您所指的setup.h所针对的.
如果您只想尽快使用默认选项构建它并继续前进,请按以下步骤操作:
启动"Visual Studio命令提示符".您可以在"Microsoft Visual Studio - > Visual Studio工具"下的开始菜单中找到它.
切换到文件夹:[WXWIN root]\build\msw
构建默认调试配置: nmake -f makefile.vc BUILD=debug
构建默认发布配置: nmake -f makefile.vc BUILD=release
确保DLL在您的PATH中.它们将在[WXWIN root]\lib\_vc_dll中找到
在上面提到的DLL文件夹下,您将找到每个构建变体的子文件夹(上面的说明有两个,调试和发布.)在每个变体文件夹中,您将找到一个包含'setup.h'文件的'wx'文件夹.我会看到每个构建变体的setup.h文件实际上是不同的.这些是你需要添加到项目构建配置中的文件夹包含路径,每个构建变体一个.所以,例如,你要添加[WXWIN root ]\lib\_ vc_dll\mswud到您的调试版本的包含路径,[WXWIN root]\lib\vc_dll\mswu用于您的发布版本.
可以构建许多其他变体组合:静态库,单片单库,非Unicode等.有关更广泛的说明,请参阅[WXWIN root]\docs\msw\install.txt.
构建wxWidgets时,它会为构建的每个构建配置动态创建setup.h文件.生成的setup.h文件存储在lib文件夹下的文件夹中(例如Windows上的Visual Studio):
c:\wxWidgets-2.9.2\lib\vc_lib\mswu
要成功构建基于wxWidgets的项目,必须使用自己的Additional Include Directory设置项目中的每个构建配置,该目录指向lib下相应的wxWidgets构建文件夹,例如上面列出的那个.
此外,项目中所有构建配置通用的附加包含目录必须设置为指向wxWidget的主包含文件夹.此文件夹通常设置在可在任何项目中使用的用户属性表中.例如:
c:\wxWidgets-2.9.2\include
对于链接,设置所有构建配置通用的附加库目录以指向wxWidgets lib文件夹.例如:
c:\wxWidgets-2.9.2\lib\vc_lib
然后,特定于每个构建配置,附加依赖项条目被设置为包括相应wxWidgets库的库.例如,对于Unicode,Debug构建(u = Unicode,d = Debug):
wxbase29ud.lib
然后,要在项目中使用wxWidgets,首先要包括生成的setup.h文件:
#include "wx/setup.h"
然后包含特定wxWidgets功能的标头.例如:
#include#include #include