Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 91499 - No wxrc generated when compiling the wxGTK-2.4.2-r2
Summary: No wxrc generated when compiling the wxGTK-2.4.2-r2
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo wxWidgets project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-04 17:03 UTC by Igor Korot
Modified: 2006-10-03 17:51 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Igor Korot 2005-05-04 17:03:14 UTC
When I try to emerge wxGTK-2.4.2-r2, the packet is installed, but resource compiler is nowhere to be found.
The USE-flags used are: "odbc unicode -opengl debug gtk2 -no_wxgtk1"
Gentoo version is: 2004.3
This is a standard "emerge wxGTK".

Reproducible: Always
Steps to Reproduce:
1. Login as root
2. Change the USE-flags for the x11-libs/wxGTK-2.4.2-r2
3. Type "emerge x11-libs/wxGTK-2.4.2-r2"

Actual Results:  
the wxWindows/wxGTK will be compiled and set up. The resource compiler 
libraries will be compiled, but not setup.

Expected Results:  
Compile and install wxGTK libraries and the resource compiler along with the 
libraries.
Comment 1 Igor Korot 2005-05-04 17:06:30 UTC
Also, when configuring and compiling, the options "--enable-resources" and "--enable-xresources" are turned off by default.
Comment 2 Jonathan Smith (RETIRED) gentoo-dev 2005-05-04 17:12:45 UTC
why is this a documents question?

if it isn't, please resassign to bug-wranglers@gentoo.org
Comment 3 SpanKY gentoo-dev 2005-05-04 17:44:30 UTC
it isnt
Comment 4 Igor Korot 2005-05-04 20:55:49 UTC
Turning on the "--enable-resources" producing following errors, when building the UNICODE version:

In file included from ../src/common/resource.cpp:82:
../include/wx/wxexpr.h:85: error: invalid type `const char[1]' for default
   argument to `const wxString&'
../include/wx/wxexpr.h: In member function `bool
   wxExprDatabase::ReadPrologFromString(char*)':
../include/wx/wxexpr.h:247: error: call of overloaded `wxString(char*&)' is
   ambiguous
../include/wx/string.h:323: error: candidates are: wxString::wxString(const
   wxWCharBuffer&) <near match>
../include/wx/string.h:306: error:                 wxString::wxString(wchar_t,
   unsigned int) <near match>
../include/wx/string.h:291: error:                 wxString::wxString(const
   wxString&) <near match>
../include/wx/string.h:284: error:                 wxString::wxString(int)
   <near match>
../src/common/resource.cpp: In function `void wxLogWarning(char*)':
../src/common/resource.cpp:124: error: invalid initialization of reference of
   type 'const wxString&' from expression of type 'char*'
../include/wx/msgdlg.h:30: error: in passing argument 1 of `int
   wxMessageBox(const wxString&, const wxString&, long int, wxWindow*, int,
   int)'
../src/common/resource.cpp: In constructor `wxItemResource::wxItemResource()':
../src/common/resource.cpp:132: error: ambiguous overload for 'operator=' in '
   this->wxItemResource::m_itemType = ""'
../include/wx/string.h:278: error: candidates are: wxString&
   wxString::operator=(int) <near match>
../include/wx/string.h:519: error:                 wxString&
   wxString::operator=(const wxString&) <near match>
../include/wx/string.h:521: error:                 wxString&
   wxString::operator=(wchar_t) <near match>
../include/wx/string.h:527: error:                 wxString&
   wxString::operator=(const wxWCharBuffer&) <near match>
../src/common/resource.cpp:133: error: ambiguous overload for 'operator=' in '
   this->wxItemResource::m_title = ""'
../include/wx/string.h:278: error: candidates are: wxString&
   wxString::operator=(int) <near match>
../include/wx/string.h:519: error:                 wxString&
   wxString::operator=(const wxString&) <near match>
../include/wx/string.h:521: error:                 wxString&
   wxString::operator=(wchar_t) <near match>
../include/wx/string.h:527: error:                 wxString&
   wxString::operator=(const wxWCharBuffer&) <near match>
../src/common/resource.cpp:134: error: ambiguous overload for 'operator=' in '
   this->wxItemResource::m_name = ""'
../include/wx/string.h:278: error: candidates are: wxString&
   wxString::operator=(int) <near match>
../include/wx/string.h:519: error:                 wxString&
   wxString::operator=(const wxString&) <near match>
../include/wx/string.h:521: error:                 wxString&
   wxString::operator=(wchar_t) <near match>
../include/wx/string.h:527: error:                 wxString&
   wxString::operator=(const wxWCharBuffer&) <near match>
../src/common/resource.cpp:138: error: ambiguous overload for 'operator=' in '
   this->wxItemResource::m_value4 = ""'
../include/wx/string.h:278: error: candidates are: wxString&
   wxString::operator=(int) <near match>
../include/wx/string.h:519: error:                 wxString&
   wxString::operator=(const wxString&) <near match>
../include/wx/string.h:521: error:                 wxString&
   wxString::operator=(wchar_t) <near match>
../include/wx/string.h:527: error:                 wxString&
   wxString::operator=(const wxWCharBuffer&) <near match>
../src/common/resource.cpp: In member function `virtual wxControl*
   wxResourceTable::CreateItem(wxWindow*, const wxItemResource*, const
   wxItemResource*) const':
../src/common/resource.cpp:344: error: conversion from `const char[10]' to `
   const wxString' is ambiguous
../include/wx/string.h:306: error: candidates are: wxString::wxString(wchar_t,
   unsigned int) <near match>
../include/wx/string.h:284: error:                 wxString::wxString(int)
   <near match>
make: *** [resource.o] Error 1
make: *** Waiting for unfinished jobs....

!!! ERROR: x11-libs/wxGTK-2.4.2-r2 failed.
!!! Function src_compile, Line 116, Exitcode 2
!!! make unicode failed
!!! If you need support, post the topmost build error, NOT this status message.
Comment 5 Rob Cakebread (RETIRED) gentoo-dev 2005-05-11 12:27:40 UTC
"--enable-resources" and "--enable-xresources" are deprecated and won't affect anything.

The problem is that wxrc isn't built by default like it is in 2.6.0. I've got it building now, but it doesn't link properly. You can see this doing a make in contrib/utils/wxrc
Comment 6 Igor Korot 2005-05-11 12:39:54 UTC
OK, but the problem with this approach is that after compiling the library the code will be stripped. So there is no way build it.
You need to either change the ebuild to make it build automatically by default or not strip the code initially, asking whether you want to build the resource compiler.

Thank you.
Comment 7 Igor Korot 2005-05-11 13:05:08 UTC
Also, even though they are deprecated, which I don't think they are, turning them shouldn't give the compilation errors!
There is a mention of those options on the wxWindows.org, and in ./configure --help. They are not mentioned as deprecated.
Also the errors appears only when compiling the UNICODE version of wxGTK...
Comment 8 Rob Cakebread (RETIRED) gentoo-dev 2005-05-11 13:35:02 UTC
I got that info from a developer on their mailing list.
Many of the options to configure are deprecated but not noted as deprecated in configure --help.  Look for --enable-xresources in 2.6.0, its gone, for example.

Having the ebuild build wxrc doesn't help. It runs fine in the directory its built, but once it gets moved it will fail, and enabling xresources or resources does nothing to fix that. (You'll notice resources aren't enabled in 2.6.0 and wxrc works fine).

So its a matter of getting it to link correctly:
ldd ./wxrc
        ../../../lib/libwx_gtk2_xrc-2.4.so => not found
        ../../../lib/libwx_gtk2-2.4.so.0.1.1 => not found


Comment 9 Igor Korot 2005-05-11 14:38:27 UTC
I understand that it's gone in 2.6.0. But I am not talking about 2.6.0 here. Also, I understand that it might be deprecated in the 2.4.2. The problem is that it still shows up in the configure (.configure --help) as NOT deprecated, as well as in the www.wxWindows.org installation manual for wxGTK 2.4.2 (http://easynews.dl.sourceforge.net/sourceforge/wxwindows/install-gtk-2.4.2.txt - part Feature Options).
Now, even though it has been deprecated, the ebuild ACCEPTED IT, and during compilation is giving a lot of errors on UNICODE build. This is confusing. At the very least it suppose to report to user, that this 2 options are deprecated!!!
Also for some reason the compilation part of wxGTK for gtk2 and ANSI compiles fine with those options turned ON!
Comment 10 Rob Cakebread (RETIRED) gentoo-dev 2005-05-11 14:58:08 UTC
Read comment #1. The ebuild does not enable either resources or xresources, so why are you bringing up errors with them? Report them upstream if you'd like, but we've never enabled them and it has nothing to do with wxrc. 
Comment 11 Rob Cakebread (RETIRED) gentoo-dev 2005-05-11 15:27:45 UTC
I mailed the author of xrc in wxwidgets, Vaclav Slavik, about this. Hes a Gentoo user, so we can get an authoritative answer.
Comment 12 Igor Korot 2005-05-11 16:08:43 UTC
2Rob Cakebread #10:
Thank you. After you explanation everything is put on it's place. Now, I guess we need to remove them or tell the user that they should be removed from the build. See comment #9. If the ebuild for it receives such options turned on, user has to be warned and the option itself suppose to be turned OFF. Also I agree that after this explanation it has nothing to do with wxrc.

2Rob Cakebread #11:
Thank you for clarifying this with the author.
Comment 13 Igor Korot 2005-05-11 16:16:29 UTC
In addition:
Is it possible to receive an explanation of the USE flags for wxGTK, and what kind of feature options are not supported anymore for wxGTK-2.6.0. I don't want to confuse people around here with some bugs, that is not actually bugs.

Thank you.
Comment 14 Igor Korot 2005-05-11 16:16:53 UTC
In addition:
Is it possible to receive an explanation of the USE flags for wxGTK, and what kind of feature options are not supported anymore for wxGTK-2.6.0. I don't want to confuse people around here with some bugs, that is not actually bugs.

Thank you.
Comment 15 Rob Cakebread (RETIRED) gentoo-dev 2005-05-11 16:25:04 UTC
I just added a new 2.6 version (wxGTK-2.6.0-r1) a couple hours ago, which has some new messages on USE flags that should be more clear, if you haven't seent that yet.

Everything in the 2.4 versions is still in 2.6, but there are some new ones:

sdl - uses sdl for sound
gnome - uses gnome for print previewing instead of postscript
dmalloc - uses dmalloc package for debugging
joystick - enables joystick support, not sure

If that doesn't cover everything, let me know please and I'll add more einfo
Comment 16 Rob Cakebread (RETIRED) gentoo-dev 2005-05-11 17:38:52 UTC
Ok, good news and bad news. Vaklav has suggested a solution. wxGTK-2.4.2 needs to be compiled with configre --enable-soname for wxrc to link correctly. I tested it and wxrc works without being in the build directory now. The bad news is, I'm not sure if this will break any of the many packages that depend on wxGTK, so I'll probably put this in package.mask so we can test it without breaking everyone else's apps in portage. I'll test a few packages then put it in portage.
Comment 17 Igor Korot 2005-05-11 21:45:57 UTC
OK, sounds good. What about warning the user about "--enable-resources" option been deprecated in the ebuild?
Also there is a "zlib" USE flag? What is this for? And how many of the ./configure options are being deprecated in the 2.6.0?

Thank you.
Comment 18 Igor Korot 2005-05-11 21:51:22 UTC
In addition:
Is this configuration gonna be compiled in all gtk, gtk2 and UNICODE verions of the wxGTK?
Also, is it possible to create 2 builds based on the configuration submited: one for the debug, one - for release versions of the library? It will be like:
The ebuild detect if it's already installed, and create the release versions of the library in the release directory....
If this is already implemented, I apologize for flame...

Thank you.
Comment 19 RB 2005-08-30 20:07:46 UTC
Running into bug #102921, I think we've a related issue.  The audacity ebuild
refuses to run if it sees unicode support compiled into wxGTK.  The problem is,
regardless of whether I enable unicode for wxGTK or not, (using 2.6.1), it seems
to compile it in - wx-config --cppflags shows unicode support, according to
audacity, and if I force audacity around that check, it fails compilation, as
would be expected with wxGTK/unicode.

Any ideas?
Comment 20 RB 2005-08-30 20:09:31 UTC
Strike that last comment, wrong bug!
Comment 21 Mart Raudsepp gentoo-dev 2006-10-03 10:26:45 UTC
Latest stable version of wxGTK is 2.6.x, and 2.4 SLOT is on the way of being phased out as per bug 145032.
If something actually requires wxGTK-2.4* and wxrc for it, then it should be made to work with 2.6* instead - bugs for such cases welcome.
Latest stable wxGTK in 2.6 SLOT provides wxrc, so does latest unstable wxGTK.
In the light of ASAP removal of 2.4 series from the tree, I'm marking this bug as WONTFIX (due to no OUTDATED resolution type) as there is no point in using the time of wxwidgets herd on fixing a bug in a release series of wxGTK that is to be removed soon.
Comment 22 Igor Korot 2006-10-03 17:51:58 UTC
Thank you for "fixing" this.