Files
2021-01-04 02:34:28 -06:00

2.5 KiB

layout, title, grand_parent, parent, nav_order, date, original
layout title grand_parent parent nav_order date original
forum Re: A few suggestions Forum Posts Bitcoin Forum 19 2009-12-14 17:15:56 UTC https://bitcointalk.org/index.php?topic=12.msg50#msg50

Re: A few suggestions


Re: A few suggestions
December 14, 2009, 05:15:56 PM

Quote from: madhatter2 on December 14, 2009, 03:01:39 PM Can anyone shed some light here? g++ -c -O0 -Wno-invalid-offsetof -Wformat -g -D__WXMAC__ -DNOPCH -DBUILD_MACOSX -I"/usr/include" -I"/usr/local/include/wx-2.8" -I"/usr/local/include" -I"/usr/local/boost_1_41_0" -I"/sw/include/db4" -I"/usr/local/ssl/include" -I"/usr/local/lib/wx/include/mac-ansi-release-2.8" -o headers.h.gch headers.h ... ui.h:430: error: no matching function for call to 'wxTextCtrl::SetValue(const std::basic_string<char, std::char_traits, std::allocator >&)' /usr/local/include/wx-2.8/wx/textctrl.h:303: note: candidates are: virtual void wxTextCtrlBase::SetValue(const wxString&)

It looks like the implicit conversion from std::string to wxString isn't working. That's used everywhere, the conversion needs to work.

wxString is complicated by supporting win32's 16-bit wchar and 8-bit ansi dual-compile. You can get that problem on Windows if the "unicode" (meaning wchar) build is used, so that wxString is wchar and std::string is char.

It's probably some wxWidgets compile defines or build configuration. What "configure" options did you use?

I'm not sure WXMAC is the right define. It may be the Mac Classic support that's complicating wxString, and we only want OSX. Try WXOSX (or see below)

http://docs.wxwidgets.org/stable/wx_cppconst.html "There are two wxWidgets ports to Mac OS. One of them, wxMac, exists in two versions: Classic and Carbon. The Classic version is the only one to work on Mac OS version 8. The Carbon version may be built either as CFM or Mach-O (binary format, like ELF) and the former may run under OS 9 while the latter only runs under OS X. Finally, there is a new Cocoa port which can only be used under OS X. To summarize:

* If you want to test for all Mac platforms, classic and OS X, you should test both __WXMAC__ and __WXCOCOA__.
* If you want to test for any GUI Mac port under OS X, use __WXOSX__.
* If you want to test for any port under Mac OS X, including, for example, wxGTK and also wxBase, use __DARWIN__"</div>