From: <p.d...@gm...> - 2016-12-10 15:48:48
|
Hi Laurent So those errors seem to be caused by unicode issues. The native windows functions have ansi versions which accept 8bit strings and unicode versions which accept 16 bit wide strings. There is also a generic form of each which uses #ifdefs which call the ansi or unicode versions depending on whether _UNICODE is #defined. You can see from the w suffix that the wide version is being used, however 8bit strings appear to be being passed in from wxWidgets. This is really rather surprising. wxWidgets hasn't really used ansi strings since v2.8. I have a feeling there may be a legacy option to build with ansi strings, but I haven't tried this, nor do i know how well it works. Is it possible you have built or attempted to build the ansi version of wxWidgets and somewhere it is getting confused? Phil Sent from my Windows 10 phone From: Laurent Berger Sent: 10 December 2016 14:58 To: Phil Rosenberg Cc: PLplot development list Subject: Re: [Plplot-devel] build plplot using CMAKE using MSYS makefiles onwindows 10 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 >> |