From: Greg J. <gv...@gm...> - 2016-12-13 06:18:42
|
I recognize one aspect of your problems in that winundef.h is imperfectly written and will fail in the case of using the unicode wxwidgets without explicitly already being unicode through-and-through - which is what winundef tries to do. Attached is a fixed version of that file from wx-3.0/wx/msw/ - I haven't gone to 3.1 yet, it is probably the same for that. Greg On Sat, Dec 10, 2016 at 6:58 AM, Laurent Berger < lau...@un...> wrote: > Hi phil, > > Thanks for your answer. > > I have try to solve problem in a bad way : > > I have changed some lines in pkg-config.cmake : line298--305 are now : > > if(_list_element STREQUAL "-l${_list_element1}") > set(_library_pathname "_library_pathname-NOTFOUND") > find_library( > _library_pathname > ${_list_element1} > PATHS ${_link_directory_list} "f:/lib/wxWidgets-3.1.0/lib" > "F:/mingw-w64/x86_64-6.2.0-posix-sjlj-rt_v5-rev1/mingw64/ > x86_64-w64-mingw32/lib32" > NO_DEFAULT_PATH > ) > > > I can start build plplot using MSYS-mingw64. Now I have some compilation > errors and try to understand it.... > > $ make > [ 3%] Built target csirocsa > [ 6%] Built target deltaT-gen > [ 7%] Built target deltaT.h_built > [ 9%] Built target tai-utc-gen > [ 10%] Built target tai-utc.h_built > [ 15%] Built target qsastime > [ 16%] Built target plhershey-unicode-gen > [ 18%] Built target plhershey-unicode.h_built > [ 19%] Building CXX object > src/CMakeFiles/plplot.dir/__/drivers/wxwidgets_comms.cpp.obj > In file included from > F:/mingw-w64/x86_64-6.2.0-posix-sjlj-rt_v5-rev1/mingw64/ > x86_64-w64-mingw32/include/Windows.h:72:0, > from G:/Lib/plplot/drivers/wxwidgets_comms.h:25, > from G:/Lib/plplot/drivers/wxwidgets_comms.cpp:20: > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function 'HWND__* > CreateDialog(HINSTANCE, LPCTSTR, HWND, DLGPROC)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:38:20: error: cannot > convert 'LPCTSTR {aka const char*}' to 'LPCWSTR {aka const wchar_t*}' > for argument '2' to 'HWND__* CreateDialogParamW(HINSTANCE, LPCWSTR, > HWND, DLGPROC, LPARAM)' > return CreateDialogW(hInstance, pTemplate, hwndParent, > pDlgProc); > ^ > In file included from F:/lib/wxWidgets-3.1.0/include/wx/defs.h:3302:0, > from F:/lib/wxWidgets-3.1.0/include/wx/font.h:18, > from G:/Lib/plplot/drivers/wxwidgets_comms.h:34, > from G:/Lib/plplot/drivers/wxwidgets_comms.cpp:20: > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function 'HFONT__* > CreateFont(int, int, int, int, int, DWORD, DWORD, DWORD, DWORD, DWORD, > DWORD, DWORD, DWORD, LPCTSTR)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:69:48: error: cannot > convert 'LPCTSTR {aka const char*}' to 'LPCWSTR {aka const wchar_t*}' > for argument '14' to 'HFONT__* CreateFontW(int, int, int, int, int, > DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPCWSTR)' > family, facename); > ^ > In file included from > F:/mingw-w64/x86_64-6.2.0-posix-sjlj-rt_v5-rev1/mingw64/ > x86_64-w64-mingw32/include/Windows.h:72:0, > from G:/Lib/plplot/drivers/wxwidgets_comms.h:25, > from G:/Lib/plplot/drivers/wxwidgets_comms.cpp:20: > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function 'HWND__* > CreateWindow(LPCTSTR, LPCTSTR, DWORD, int, int, int, int, HWND, HMENU, > HINSTANCE, LPVOID)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:94:20: error: cannot > convert 'LPCTSTR {aka const char*}' to 'LPCWSTR {aka const wchar_t*}' > for argument '2' to 'HWND__* CreateWindowExW(DWORD, LPCWSTR, LPCWSTR, > DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID)' > return CreateWindowW(lpClassName, lpWndClass, dwStyle, x, > y, w, h, > ^ > In file included from F:/lib/wxWidgets-3.1.0/include/wx/defs.h:3302:0, > from F:/lib/wxWidgets-3.1.0/include/wx/font.h:18, > from G:/Lib/plplot/drivers/wxwidgets_comms.h:34, > from G:/Lib/plplot/drivers/wxwidgets_comms.cpp:20: > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function 'HMENU__* > LoadMenu(HINSTANCE, LPCTSTR)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:111:44: error: cannot > convert 'LPCTSTR {aka const char*}' to 'LPCWSTR {aka const wchar_t*}' > for argument '2' to 'HMENU__* LoadMenuW(HINSTANCE, LPCWSTR)' > return LoadMenuW(instance, name); > ^ > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function 'HWND__* > FindText(LPFINDREPLACE)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:126:43: error: cannot > convert 'LPFINDREPLACE {aka tagFINDREPLACEA*}' to 'LPFINDREPLACEW {aka > tagFINDREPLACEW*}' for argument '1' to 'HWND__* FindTextW(LPFINDREPLACEW)' > return FindTextW(lpfindreplace); > ^ > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function 'HICON__* > LoadIcon(HINSTANCE, LPCTSTR)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:311:51: error: cannot > convert 'LPCTSTR {aka const char*}' to 'LPCWSTR {aka const wchar_t*}' > for argument '2' to 'HICON__* LoadIconW(HINSTANCE, LPCWSTR)' > return LoadIconW(hInstance, lpIconName); > ^ > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h: In function > 'HBITMAP__* LoadBitmap(HINSTANCE, LPCTSTR)': > F:/lib/wxWidgets-3.1.0/include/wx/msw/winundef.h:324:55: error: cannot > convert 'LPCTSTR {aka const char*}' to 'LPCWSTR {aka const wchar_t*}' > for argument '2' to 'HBITMAP__* LoadBitmapW(HINSTANCE, LPCWSTR)' > return LoadBitmapW(hInstance, lpBitmapName); > ^ > make[2]: *** [src/CMakeFiles/plplot.dir/build.make:1114: > src/CMakeFiles/plplot.dir/__/drivers/wxwidgets_comms.cpp.obj] Error 1 > make[1]: *** [CMakeFiles/Makefile2:546: src/CMakeFiles/plplot.dir/all] > Error 2 > make: *** [Makefile:150: all] Error 2 > > > > > > Le 10/12/2016 à 02:11, Phil Rosenberg a écrit : > > I'm sorry Laurent, but I think I am the main Windows user on the list > > and I have absolutely no experience with MSys. > > > > However, I believe we have now returned to the CMake default wxWidgets > > find module. Alan, can you comment on this and whether this looks like > > a bug in that module or a bug in our build system? > > > > On 8 December 2016 at 16:37, Laurent Berger > > <lau...@un...> wrote: > >> Hi, > >> > >> I want to buil plplot in static using MSYS makefiles on windows 10. > >> > >> In cmake GUI i have got an error that I cannot understand. wxWidgets is > >> found but there is cmake_link_flags WARNING. > >> > >> Any help would be appreciate. > >> > >> CMake version = 3.7.0-rc2 > >> > >> CMAKE_SYSTEM_NAME = Windows > >> > >> SH_EXECUTABLE = C:/Windows/System32/bash.exe.... > >> > >> Looking for gdi32 header and library > >> > >> Looking for gdi32 header and library - found > >> > >> wxWidgets_FOUND : TRUE > >> > >> wxWidgets_INCLUDE_DIRS : > >> F:/lib/wxWidgets-3.1.0/lib/wx/include/msw-unicode-static-3. > 1;F:/lib/wxWidgets-3.1.0/include > >> > >> wxWidgets_LIBRARY_DIRS : /f/lib/wxWidgets-3.1.0/lib > >> > >> wxWidgets_LIBRARIES : > >> -L/f/lib/wxWidgets-3.1.0/lib;;;-Wl,--subsystem,windows;- > mwindows;/f/lib/wxWidgets-3.1.0/lib/libwx_mswu_core-3.1.a;/ > f/lib/wxWidgets-3.1.0/lib/libwx_baseu-3.1.a;-lwxregexu- > 3.1;-lwxexpat-3.1;-lwxtiff-3.1;-lwxjpeg-3.1;-lwxpng-3.1;- > lz;-lrpcrt4;-loleaut32;-lole32;-luuid;-lwinspool;- > lwinmm;-lshell32;-lshlwapi;-lcomctl32;-lcomdlg32;- > ladvapi32;-lversion;-lwsock32;-lgdi32 > >> > >> wxWidgets_CXX_FLAGS : -I/f/lib/wxWidgets-3.1.0/include > >> > >> wxWidgets_USE_FILE : UsewxWidgets > >> > >> cmake_link_flags WARNING: (original link flags) = > >> -L/f/lib/wxWidgets-3.1.0/lib;;;-Wl,--subsystem,windows;- > mwindows;/f/lib/wxWidgets-3.1.0/lib/libwx_mswu_core-3.1.a;/ > f/lib/wxWidgets-3.1.0/lib/libwx_baseu-3.1.a;-lwxregexu- > 3.1;-lwxexpat-3.1;-lwxtiff-3.1;-lwxjpeg-3.1;-lwxpng-3.1;- > lz;-lrpcrt4;-loleaut32;-lole32;-luuid;-lwinspool;- > lwinmm;-lshell32;-lshlwapi;-lcomctl32;-lcomdlg32;- > ladvapi32;-lversion;-lwsock32;-lgdi32 > >> > >> cmake_link_flags WARNING: wxwidgets_LINK_FLAGS = > >> -Wl,--subsystem,windows;-mwindows;/f/lib/wxWidgets-3.1. > 0/lib/libwx_mswu_core-3.1.a;/f/lib/wxWidgets-3.1.0/lib/ > libwx_baseu-3.1.a;_library_pathname-NOTFOUND;_library_ > pathname-NOTFOUND;_library_pathname-NOTFOUND;_library_ > pathname-NOTFOUND;_library_pathname-NOTFOUND;F:/mingw- > w64/Strawberry/c/lib/libz.a;C:/Windows/System32/rpcrt4.dll; > C:/Windows/System32/oleaut32.dll;C:/Windows/System32/ole32. > dll;_library_pathname-NOTFOUND;_library_pathname- > NOTFOUND;C:/Windows/System32/winmm.dll;C:/Windows/System32/ > shell32.dll;C:/Windows/System32/shlwapi.dll;C:/ > Windows/System32/comctl32.dll;C:/Windows/System32/comdlg32. > dll;C:/Windows/System32/advapi32.dll;C:/Windows/System32/version.dll;C:/ > Windows/System32/wsock32.dll;C:/Windows/System32/gdi32.dll > >> > >> cmake_link_flags WARNING: wxwidgets_LINK_FLAGS is invalid so it is set > to > >> nothing to signal the failure of cmake_link_flags for the original link > >> flags printed out above. > >> > >> WARNING: wxWidgets or its libraries not found so setting all wxwidgets > >> devices to OFF. > >> > >> WARNING: ENABLE_wxwidgets is OFF so setting all wxwidgets devices to > OFF. > >> > >> > >> ------------------------------------------------------------ > ------------------ > >> Developer Access Program for Intel Xeon Phi Processors > >> Access to Intel Xeon Phi processor-based developer platforms. > >> With one year of Intel Parallel Studio XE. > >> Training and support from Colfax. > >> Order your platform today.http://sdm.link/xeonphi > >> _______________________________________________ > >> Plplot-devel mailing list > >> Plp...@li... > >> https://lists.sourceforge.net/lists/listinfo/plplot-devel > >> > > > ------------------------------------------------------------ > ------------------ > Developer Access Program for Intel Xeon Phi Processors > Access to Intel Xeon Phi processor-based developer platforms. > With one year of Intel Parallel Studio XE. > Training and support from Colfax. > Order your platform today.http://sdm.link/xeonphi > _______________________________________________ > Plplot-devel mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-devel > |