Talk:Microsoft Visual C++ Guide

From WxWiki
Jump to: navigation, search

The "What is Unicode?" section at https://docs.wxwidgets.org/stable/overview_unicode.html is technically not correct.

You have to distinguish between Unicode characters and Unicode encoding. You can encode a Unicode string using UTF-8, UTF-16 or UTF-32. The UTF-8 encoding uses a byte stream, but one Unicode character being represented possibly by multiple bytes. This means, an application can fully support Unicode but still using 8-bit strings. UTF-16 (as used by teh Unicode support of wxWidgets) uses a stream of 16-bit integers. But also here one Unicode character may be represented multiple bytes. ("Surrogates").

  • If you feel this is really a problem in the official documentation, please either submit a bug on the bug tracker, or submit an actual patch to the documentation fixing this error. Your comment here won't help to resolve the problem. --Tierra 14:13, 2 March 2007 (PST)

wx_dll only for dynamic libraries

Will the project compiled with a solution file converted from wx_dll.dsw really just work properly for dynamic libraries? According to the documentation the only difference to wx.dsw is the added dependencies, so I see no reason why this could interfere with the build process for static libraries.

  • You're right, it doesn't. You could use wx_dll.dsw for either static or dynamic libs without any issues, and maybe some point in the future, it will finally be narrowed down to just using wx.dsw with the dependency information, but the separation was needed in the past, and it doesn't hurt to be like this for now (except for those building dynamic libs that fail to read the documentation and try building it with wx.dsw, but that's their own fault since it's mentioned in multiple guides including this one and the official docs). It's possible that it also continues to be this way just because of the way that Bakefile generates the Visual C++ project files. --Tierra 14:55, 28 August 2007 (PDT)

Building Single Configurations can be automated

If I understand correctly the wiki suggests that for building single configuration one has to build each library by hand in given order. However if you look into Solution -> Properties -> Common Properties -> Project Dependencies you can set it to compile libraries in correct order using Build Solution command. It could be set that way in VC solution attached to wxWidgets distribution. --Sfider 00:22, 18 December 2009 (UTC)

Building Problems in VC2010 Express: development snapshot 2.9.0

Building in certain projects can fail with the error:

C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6001: Invalid command line switch for "cmd.exe". The path is not of a legal form.


I've found that, once converted from wx_vc9.sln, at the end of vx_vc9_wxregex.vcxproj, there's a section at the end that looks like:

 <ItemGroup>
   <CustomBuild Include="..\..\include\wx\msw\genrcdefs.h">
     ...
   </CustomBuild>
   <CustomBuild Include="..\..\include\wx\univ\setup.h">
     ...
   </CustomBuild>
   <CustomBuild Include="..\..\include\wx\msw\setup.h">
     ...
   </CustomBuild>
 </ItemGroup>

In these sections, for the last two custom builds (for both setup.h files), there are lines that go:

     <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Universal Release|Win32'">$(INTDIR) $(OUTDIR);%(AdditionalInputs)</AdditionalInputs>

These cause problems for me, and if I remove them, the project builds.

Also, for the Universal releases, you have to have setup.h in include/wx/univ, and it's not there.

This is what worked for me, don't know if it'll work for everyone. If nothing else, removing the entire ItemGroup should also work, I think. I also don't know what effects doing this might cause. -71.204.78.183 08:46, 18 July 2010 (UTC)

wxWidgets 2.8 compiles under VC10

I have successfully complied wxWidgets under VC10 without any problems. I wonder why it says it isn't supported.

Xiaomao 12:34, 14 July 2011 (MDT)