elfmz / far2l

Linux port of FAR v2
GNU General Public License v2.0
1.76k stars 173 forks source link

CMake configuration should check if wxwidgets version >= 3.0 #260

Open suhr opened 7 years ago

suhr commented 7 years ago
[166/654] Building CXX object WinPort/CMakeFiles/WinPort.dir/src/APIClipboard.cpp.o
FAILED: WinPort/CMakeFiles/WinPort.dir/src/APIClipboard.cpp.o 
/usr/bin/c++   -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -I/home/suhr/far2l/utils/include -isystem /usr/lib64/wx/include/gtk2-unicode-release-2.8 -isystem /usr/include/wx-2.8 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/suhr/far2l/WinPort/. -I/home/suhr/far2l/WinPort/src/UI -I/home/suhr/far2l/WinPort/src -Wall -std=c++11 -fPIC -Wno-unused-function -Wno-c++11-narrowing -D_FILE_OFFSET_BITS=64 -pthread  -Wall -std=c++11 -fPIC -Wno-unused-function -Wno-c++11-narrowing -D_FILE_OFFSET_BITS=64 -O2 -fvisibility=hidden -MMD -MT WinPort/CMakeFiles/WinPort.dir/src/APIClipboard.cpp.o -MF WinPort/CMakeFiles/WinPort.dir/src/APIClipboard.cpp.o.d -o WinPort/CMakeFiles/WinPort.dir/src/APIClipboard.cpp.o -c /home/suhr/far2l/WinPort/src/APIClipboard.cpp
In file included from /home/suhr/far2l/WinPort/src/APIClipboard.cpp:24:0:
/home/suhr/far2l/WinPort/src/CallInMain.h: В функции-члене «RV InMainCaller<RV, FN>::Do()»:
/home/suhr/far2l/WinPort/src/CallInMain.h:31:48: ошибка: «class wxEvtHandler» has no member named «CallAfter»
   wxTheApp->GetTopWindow()->GetEventHandler()->CallAfter(std::bind(&InMainCaller::Callback, this));
                                                ^
/home/suhr/far2l/WinPort/src/APIClipboard.cpp: В функции «void* WINPORT_SetClipboardData(UINT, HANDLE)»:
/home/suhr/far2l/WinPort/src/APIClipboard.cpp:239:67: ошибка: преобразование из «const char*» в «const wxString» неоднозначно
    g_data_to_clipboard->Add(new wxTextDataObject((const char *)mem));
                                                                   ^
/home/suhr/far2l/WinPort/src/APIClipboard.cpp:239:67: замечание: candidates are:
In file included from /usr/include/wx-2.8/wx/memory.h:16:0,
                 from /usr/include/wx-2.8/wx/object.h:20,
                 from /usr/include/wx-2.8/wx/wx.h:16,
                 from /home/suhr/far2l/WinPort/src/APIClipboard.cpp:16:
/usr/include/wx-2.8/wx/string.h:692:3: замечание: wxString::wxString(wxChar, size_t) <near match>
   wxString(wxChar ch, size_t nRepeat = 1)
   ^
/usr/include/wx-2.8/wx/string.h:692:3: замечание:   no known conversion for argument 1 from «const char*» to «wxChar {aka wchar_t}»
/usr/include/wx-2.8/wx/string.h:682:3: замечание: wxString::wxString(int) <near match>
   wxString(int);
   ^
/usr/include/wx-2.8/wx/string.h:682:3: замечание:   no known conversion for argument 1 from «const char*» to «int»
In file included from /usr/include/wx-2.8/wx/wx.h:66:0,
                 from /home/suhr/far2l/WinPort/src/APIClipboard.cpp:16:
/usr/include/wx-2.8/wx/dataobj.h:332:5: замечание: initializing argument 1 of «wxTextDataObject::wxTextDataObject(const wxString&)»
     wxTextDataObject(const wxString& text = wxEmptyString)
     ^
At global scope:
cc1plus: предупреждение: некорректный ключ "-Wno-c++11-narrowing"
cc1plus: предупреждение: некорректный ключ "-Wno-c++11-narrowing"
[168/654] Building CXX object WinPort/CMakeFiles/WinPort.dir/src/APIFSNotify.cpp.o
ninja: build stopped: subcommand failed.
elfmz commented 7 years ago

it requires wxwidgets >= 3.0, but from build log you seems to have 2.8

suhr commented 7 years ago

Indeed. I guess, there should be an additional check in cmake.