From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14292 invoked by alias); 8 Jul 2013 11:32:58 -0000 Mailing-List: contact ecos-maintainers-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: ecos-maintainers-owner@ecos.sourceware.org Received: (qmail 14281 invoked by uid 89); 8 Jul 2013 11:32:58 -0000 X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_50,FREEMAIL_FROM,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,SPF_PASS,TW_GT,TW_WX,TW_XG autolearn=ham version=3.3.1 Received: from mail-pa0-f47.google.com (HELO mail-pa0-f47.google.com) (209.85.220.47) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Mon, 08 Jul 2013 11:32:56 +0000 Received: by mail-pa0-f47.google.com with SMTP id kl14so4230468pab.20 for ; Mon, 08 Jul 2013 04:32:54 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.68.213.5 with SMTP id no5mr20860962pbc.185.1373283174612; Mon, 08 Jul 2013 04:32:54 -0700 (PDT) Received: by 10.70.127.234 with HTTP; Mon, 8 Jul 2013 04:32:54 -0700 (PDT) In-Reply-To: <4FE4CA79.7020809@dallaway.org.uk> References: <4FE4C8BC.80600@dallaway.org.uk> <4FE4CA79.7020809@dallaway.org.uk> Date: Mon, 08 Jul 2013 11:32:00 -0000 Message-ID: Subject: Fwd: configtool for linux building problems. From: David Fernandez To: ecos-maintainers@ecos.sourceware.org Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2013-07/txt/msg00000.txt.bz2 Hi there, I've been trying to look for this email chain in your mailing list archives, as I had to rbuild configtool, but funnily enough, the search returned 0 results all the time, I've tried several ways, my name+surname, the subject line, etc. I guess that will cause several repeated questions to go into the list, so you might want to look into this. Just searching with the subject "configtool for linux building problems" in ecos-discuss archives, like (http://sourceware.org/cgi-bin/search.cgi?wm=3Dwrd&form=3Dextended&m=3Dall&= s=3DD&ul=3D%2Fml%2Fecos-discuss%2F%25&q=3Dconfigtool%20for%20linux%20buildi= ng%20problems) gives nothing. Luckyly, this time I could salvage it from my local email archives. Regards. David Fernandez Forwarded conversation Subject: configtool for linux building problems. ------------------------ From: David Fernandez Date: Wed, Jun 20, 2012 at 5:21 PM To: ecos-discuss@ecos.sourceware.org Hi there, This is probably a deja-vu, as I think I run into this the last time I try it some time ago... I have wxGTK-devel 2.8.12 from my Fedora 15 distribution... I get the following output: $ sudo make -f ${ECOSTOOLSPREFIX}/src/tools/configtool/standalone/wxwin/mak= efile.gnu install WXDIR=3D/usr INSTALLDIR=3D$ECOSTOOLSPREFIX OSTYPE=3Dlinux-gnu c++ -O2 -c -ITCLDIR_use_system/include -I/usr/local/include -I/usr/local/src/tools/configtool/common/common -I/usr/local/src/tools/Utils/common -I/usr/local/src/tools/ecostest/common -DecUSE_EXPERIMENTAL_CODE=3D1 `/usr/bin/wx-config --cppflags` -o /home/wifi/builds/ecos-wxwin/aboutdlg.o /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp In file included from /usr/local/src/tools/Utils/common/eCosStd.h:122:0, from /usr/local/src/tools/Utils/common/Collections.h:55, from /usr/local/src/tools/ecostest/common/eCosTest.h:48, from /usr/local/src/tools/configtool/standalone/wxwin/appsettings.h:49, from /usr/local/src/tools/configtool/standalone/wxwin/configtool.h:57, from /usr/local/src/tools/configtool/standalone/wxwin/ecpch.h:69, from /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:47: /usr/local/src/tools/Utils/common/wcharunix.h:289:0: warning: "_T" redefined [enabled by default] /usr/include/wx-2.8/wx/wxchar.h:271:0: note: this is the location of the previous definition In file included from /usr/local/src/tools/configtool/standalone/wxwin/appsettings.h:47:0, from /usr/local/src/tools/configtool/standalone/wxwin/configtool.h:57, from /usr/local/src/tools/configtool/standalone/wxwin/ecpch.h:69, from /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:47: /usr/local/src/tools/configtool/standalone/wxwin/filename.h: In constructor =91ecFileName::ecFileName(const unsigned char*)=92: /usr/local/src/tools/configtool/standalone/wxwin/filename.h:87:54: error: call of overloaded =91wxString(const unsigned char*&)=92 is ambiguous /usr/local/src/tools/configtool/standalone/wxwin/filename.h:87:54: note: candidates are: /usr/include/wx-2.8/wx/string.h:722:3: note: wxString::wxString(const wxWCharBuffer&) /usr/include/wx-2.8/wx/string.h:722:3: note: no known conversion for argument 1 from =91const unsigned char*=92 to =91const wxWCharBuffer&=92 /usr/include/wx-2.8/wx/string.h:692:3: note: wxString::wxString(wxChar, size_t) /usr/include/wx-2.8/wx/string.h:692:3: note: no known conversion for argument 1 from =91const unsigned char*=92 to =91wxChar {aka wchar_t}=92 /usr/include/wx-2.8/wx/string.h:690:3: note: wxString::wxString(const wxString&) /usr/include/wx-2.8/wx/string.h:690:3: note: no known conversion for argument 1 from =91const unsigned char*=92 to =91const wxString&=92 /usr/include/wx-2.8/wx/string.h:682:3: note: wxString::wxString(int) /usr/include/wx-2.8/wx/string.h:682:3: note: no known conversion for argument 1 from =91const unsigned char*=92 to =91int=92 /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp: In member function =91bool ecAboutDialog::AddControls(wxWindow*)=92: /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:94:53: error: cannot convert =91wxChar* {aka wchar_t*}=92 to =91char*=92 in initialization /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:107:68: error: no matching function for call to =91wxString::Replace(const wchar_t [10], const char [6])=92 /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:107:68: note: candidate is: /usr/include/wx-2.8/wx/string.h:1173:10: note: size_t wxString::Replace(const wxChar*, const wxChar*, bool) /usr/include/wx-2.8/wx/string.h:1173:10: note: no known conversion for argument 2 from =91const char [6]=92 to =91const wxChar* {aka const wchar_t*}=92 /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:108:45: error: no matching function for call to =91wxString::Replace(const wchar_t [7], const char [12])=92 /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:108:45: note: candidate is: /usr/include/wx-2.8/wx/string.h:1173:10: note: size_t wxString::Replace(const wxChar*, const wxChar*, bool) /usr/include/wx-2.8/wx/string.h:1173:10: note: no known conversion for argument 2 from =91const char [12]=92 to =91const wxChar* {aka const wchar_t*}=92 /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:132:101: error: conversion from =91const char [4]=92 to =91const wxString=92 is ambiguous /usr/local/src/tools/configtool/standalone/wxwin/aboutdlg.cpp:132:101: note: candidates are: /usr/include/wx-2.8/wx/string.h:692:3: note: wxString::wxString(wxChar, size_t) /usr/include/wx-2.8/wx/string.h:692:3: note: no known conversion for argument 1 from =91const char [4]=92 to =91wxChar {aka wchar_t}=92 /usr/include/wx-2.8/wx/string.h:682:3: note: wxString::wxString(int) /usr/include/wx-2.8/wx/string.h:682:3: note: no known conversion for argument 1 from =91const char [4]=92 to =91int=92 /usr/include/wx-2.8/wx/gtk/button.h:21:5: error: initializing argument 3 of =91wxButton::wxButton(wxWindow*, wxWindowID, const wxString&, const wxPoint&, const wxSize&, long int, const wxValidator&, const wxString&)=92 make: *** [/home/wifi/builds/ecos-wxwin/aboutdlg.o] Error 1 Sure you know what is wrong, as I couldn't get a reasonable search set from the list archives. Cheers ---------- From: David Fernandez Date: Wed, Jun 20, 2012 at 8:59 PM To: ecos-discuss@ecos.sourceware.org Using the linked wxGTK-2.8.8 in the ecoscentric web site, the problem is: $ su -c 'make -f /home/davidfc/ecos/host/tools/configtool/standalone/wxwin/makefile.gnu install WXDIR=3D/usr/local ECOSSRCDIR=3D/home/davidfc/ecos/host INSTALLDIR=3D/usr/local' Password: c++ -O2 -c -ITCLDIR_use_system/include -I/usr/local/include -I/home/davidfc/ecos/host/tools/configtool/common/common -I/home/davidfc/ecos/host/tools/Utils/common -I/home/davidfc/ecos/host/tools/ecostest/common -DecUSE_EXPERIMENTAL_CODE=3D1 `/usr/local/bin/wx-config --cppflags` -o /home/davidfc/rpmbuild/BUILDROOT/ecos/configtool/aboutdlg.o /home/davidfc/ecos/host/tools/configtool/standalone/wxwin/aboutdlg.cpp In file included from /home/davidfc/ecos/host/tools/configtool/standalone/wxwin/ecpch.h:69:0, from /home/davidfc/ecos/host/tools/configtool/standalone/wxwin/aboutdlg.cpp:47: /home/davidfc/ecos/host/tools/configtool/standalone/wxwin/configtool.h:55:3= 3: fatal error: wx/gizmos/splittree.h: No such file or directory compilation terminated. make: *** [/home/davidfc/rpmbuild/BUILDROOT/ecos/configtool/aboutdlg.o] Error 1 The folder "gizmos" does not exist inside /usr/local/include/wx-2.8/wx/, that leaves me quite confused :( When this problem gets solved, something should definitely be put in the ecos.sourceware.org web about it... Cheers ---------- From: David Fernandez Date: Thu, Jun 21, 2012 at 11:57 PM To: ecos-discuss@ecos.sourceware.org As people is quite busy these days, I eventually find the answer myself: The best ecos help page for configtool and host tools in general is http://www.ecoscentric.com/devzone/configtool.shtml, the README.txt in ecos/host/tools/configtool/standalone/wxwin gives a make recipe that is less flexible then the one indicated in the web page. 1.- The link to wxGTK-2.8.8 sources in the above, or any other wxGTK-2.8.x sources are ok, but require a few tricks. After configuring, building, and installing, as indicated in the eCosCentric web page for configtool, while in the wxGTK build folder (not the sources one) do: cd contrib/src/gizmos make sudo make install This should get the gizmos library and headers installed, which do not seem to install by default. 2.- Edit the makefile.gnu in ecos/host/tools/configtool/standalone, and add to the line EXTRALDFLAGS, at the end, after leaving a space, -lX11 3.- Build configtool as indicated in http://www.ecoscentric.com/devzone/configtool.shtml sudo make -f /ecos/host/tools/configtool/standalone/wxwin/makefile.gnu \ install WXDIR=3D ECOSSRCDIR=3D/ecos/host \ INSTALLDIR=3D The makefile.gnu has the full possible options, but if your tcl is properly installed, only the ones shown above will be necessary. N.B. wxGTK-2.9 has either integrated gizmos into normal wxGTK source folders, or moved part of it to "wxCode" (perhaps an additional package to configure --with-wxcode, but not sure). Hopefully I'll be able to find this the next time... Although it would be good to update the ecos.sourceware.org pages with this info, perhaps the eCosCentric ones too. By the way, if John Dallaway, or any other maintainer for configtool could confirm its maintenance status, and if what I've put above is the best way to solve the configtool build problems, that would be great. Cheers ---------- From: John Dallaway Date: Fri, Jun 22, 2012 at 8:54 AM To: David Fernandez Cc: eCos Discussion Hi David On 21/06/12 23:57, David Fernandez wrote: > 1.- The link to wxGTK-2.8.8 sources in the above, or any other > wxGTK-2.8.x sources are ok, but require a few tricks. After configuring, > building, and installing, as indicated in the eCosCentric web page for > configtool, while in the wxGTK build folder (not the sources one) do: > cd contrib/src/gizmos > make > sudo make install > This should get the gizmos library and headers installed, which do not > seem to install by default. That is what I do to install gizmos. > 2.- Edit the makefile.gnu in ecos/host/tools/configtool/standalone, and > add to the line EXTRALDFLAGS, at the end, after leaving a space, -lX11 I have not found -lX11 to be necessary. The invocation of wx-config within makefile.gnu should return all the flags necessary to link with the X window system. Which Linux distro and version are you using? Can you forward the link-time error you observe without this change (including all the command-line arguments) please? John Dallaway eCos maintainer http://www.dallaway.org.uk/john ---------- From: Alex Schuilenburg Date: Fri, Jun 22, 2012 at 10:18 AM To: David Fernandez Cc: ecos-discuss@ecos.sourceware.org Hi David, On 2012-06-21 23:57, David Fernandez wrote: > As people is quite busy these days, I eventually find the answer myself: > > The best ecos help page for configtool and host tools in general is > http://www.ecoscentric.com/devzone/configtool.shtml, the README.txt in > ecos/host/tools/configtool/standalone/wxwin gives a make recipe that is > less flexible then the one indicated in the web page. > > 1.- The link to wxGTK-2.8.8 sources in the above, or any other > wxGTK-2.8.x sources are ok, but require a few tricks. After configuring, Just a word of warning. If you use versions of wxGTK above 2.8.8, including the 2.9.x series (although I have not tried the latest 2.9.3 yet), you will find that there are a few things which are broken within the configtool. As far as I am aware, there has been no work within anoncvs to move the configtool to newer wxGTK libraries and unfortunately, as you mentioned, we have been too busy to contribute our updates to the configtool for this and 64 bit support (we have local unrelated customizations and MinGW native windows support). We therefore recommend that you stick with wxGTK 2.8.8 until the configtool is updated in anoncvs. -- Alex ---------- From: David Fernandez Date: Fri, Jun 22, 2012 at 7:26 PM To: John Dallaway Cc: eCos Discussion >> 2.- Edit the makefile.gnu in ecos/host/tools/configtool/standalone, and >> add to the line EXTRALDFLAGS, at the end, after leaving a space, -lX11 > I have not found -lX11 to be necessary. The invocation of wx-config > within makefile.gnu should return all the flags necessary to link with > the X window system. Which Linux distro and version are you using? Can > you forward the link-time error you observe without this change > (including all the command-line arguments) please? > > Hi John, This is the "simplified" output: c++ -o configtool -LTCLDIR_use_system/lib -L/usr/local/l= ib -l... -ltcl `/usr/local/bin/wx-config --libs std,gizmos` /usr/bin/ld: /usr/local/lib/libwx_gtk2_core-2.8.a(corelib_utilsx11.o): undefined reference to symbol 'XGetWindowAttributes' /usr/bin/ld: note: 'XGetWindowAttributes' is defined in DSO /usr/lib/libX11.so.6 so try adding it to the linker command line /usr/lib/libX11.so.6: could not read symbols: Invalid operation collect2: ld returned 1 exit status make: *** [/] Error 1 I compiled this in Fedora14+wxGTK-2.8.12 and Fedora15+wxGTK-2.8.8, and I get the same problem in both of them (both wxGTK were compiled from sources and installed in /usr/local, I know that /usr/local/bin is in the PATH, but my LD_LIBRARY_PATH is empty, as I rely in the config scripts for wx and tcl). If you want the full link command (two or three screens), let me know, and I'll recompile. Cheers ---------- From: John Dallaway Date: Fri, Jun 22, 2012 at 8:34 PM To: David Fernandez Hi David On 22/06/12 19:26, David Fernandez wrote: >>> 2.- Edit the makefile.gnu in ecos/host/tools/configtool/standalone, and >>> add to the line EXTRALDFLAGS, at the end, after leaving a space, -lX11 >>> >> I have not found -lX11 to be necessary. The invocation of wx-config >> within makefile.gnu should return all the flags necessary to link with >> the X window system. Which Linux distro and version are you using? Can >> you forward the link-time error you observe without this change >> (including all the command-line arguments) please? > > This is the "simplified" output: > > c++ -o configtool -LTCLDIR_use_system/lib -L/usr/local= /lib > -l... -ltcl `/usr/local/bin/wx-config --libs std,gizmos` > /usr/bin/ld: /usr/local/lib/libwx_gtk2_core-2.8.a(corelib_utilsx11.o): > undefined reference to symbol 'XGetWindowAttributes' > /usr/bin/ld: note: 'XGetWindowAttributes' is defined in DSO > /usr/lib/libX11.so.6 so try adding it to the linker command line > /usr/lib/libX11.so.6: could not read symbols: Invalid operation > collect2: ld returned 1 exit status > make: *** [/] Error 1 > > I compiled this in Fedora14+wxGTK-2.8.12 and Fedora15+wxGTK-2.8.8, and I > get the same problem in both of them (both wxGTK were compiled from > sources and installed in /usr/local, I know that /usr/local/bin is in > the PATH, but my LD_LIBRARY_PATH is empty, as I rely in the config > scripts for wx and tcl). This is almost certainly due to recent Fedora builds of GNU ld using different DSO-linking semanics. Ref: http://fedoraproject.org/wiki/Features/ChangeInImplicitDSOLinking Specifying -lX11 explictly for Linux builds seems reasonable and should be safe for other users. I've attached a patch at: http://bugs.ecos.sourceware.org/show_bug.cgi?id=3D1001613 Thank you for reporting this. ---------- From: John Dallaway Date: Fri, Jun 22, 2012 at 8:41 PM To: David Fernandez Cc: eCos Discussion