Bug 1124402 - Missing wxrc-3.0 and few others issues
Summary: Missing wxrc-3.0 and few others issues
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: wxGTK3
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jeremy Newton
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-07-29 12:20 UTC by Nicolas Chauvet (kwizart)
Modified: 2014-11-30 19:18 UTC (History)
4 users (show)

Fixed In Version: wxGTK3-3.0.2-2.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-11-12 19:05:29 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Nicolas Chauvet (kwizart) 2014-07-29 12:20:50 UTC
Description of problem:
filezilla should be able to compile with wxGTK3, but fails because it cannot find the related wxrc for wxGTK3. This file is deleted despite still be mandatated by wxGTK3 upstream wxwin.m4

Version-Release number of selected component (if applicable):
wxGTK3-3.0.1-1

How reproducible:
always

Steps to Reproduce:
1. build filezilla from source
2.
3.

Actual results:
filezilla appropriately use wxwin.m4 from upstream wxGTK3, but this version doesn't allow to select an alternative name for wxrc, only an alternative path.
    
RPM build errors:
See: https://kojipkgs.fedoraproject.org//work/tasks/6730/7206730/build.log

checking for wx-config-3.0... /usr/bin/wx-config-3.0
checking for wxWidgets version >= 3.0.1 (--unicode=yes --universal=no)... yes (version 3.0.1)
checking for wxWidgets static library... no
...
checking for wxrc... no
configure: error: 
      wxrc could not be found. This program gets build together with wxWidgets.
      Please make sure wxrc is within your path.

Expected results:
It should find wxrc hence use an altenative path instead of an alternative name.
I would suggest to use /usr/libexec/wxGTK3/wxrc as done with webkitgtk3 and /usr/libexec/webkitgtk3/GtkLauncher.


Additional info:
Please don't forget to build an epel7 version.

Comment 1 Nicolas Chauvet (kwizart) 2014-07-29 12:37:33 UTC
I would also mention to avoid patching %{SOURCE10} in %prep.
That's because your original file will be modified.
Instead you have to copy the file in %prep, then modify it.
FYI, %{SOURCE10} expands to the RPM sourcedir directory, so it modified the original git file from the fedpkg clone as soon as you are not on an el6 host.

Comment 2 sheepdestroyer 2014-08-09 10:38:39 UTC
I have the same problem when trying to build dolphin emulator : wxGTK3-del is installed but could not find wxrc

Comment 3 Jeremy Newton 2014-08-09 14:59:37 UTC
Sorry for taking so long to respond, I need to discuss this with the wxgtk owner because I would rather avoid making wxgtk-devel and wxgtk3-devel conflict.

Comment 4 Jeremy Newton 2014-08-09 15:04:18 UTC
(In reply to sheepdestroyer from comment #2)
> I have the same problem when trying to build dolphin emulator : wxGTK3-del
> is installed but could not find wxrc

Side note, I am the maintainer of dolphin in rpmfusion... I would like to build the latest but I'm blocked by rh#1069394. Please feel free to bug the owner of that because I can't make him budge on the issue.

Comment 5 Nicolas Chauvet (kwizart) 2014-08-09 15:18:51 UTC
@Jeremy.
Thx for answearing about this issue.

I don't think you will add any good using alternatives in this case.
Because it will result in non-reproductive build in case one or the other package trigger both wxGTK{,3} build dependencies into the buildroot;

Instead, I would recommand to use an alternate path for wxrc and wx-config (keeping the original name). So every package explicitely allowed to use wxGTK3 could use the prefix option allowed by upstream wxwin.m4 (also note that you are not allowed to fork this file).


If you think it worth to use alternative, this can be added as a later step.
but this is NOT a good idea IMO for the aforementioned reason.

At the very least, please provide a solution that is tested with another package.
(such a filezilla)

Comment 6 Jeremy Newton 2014-08-09 15:31:24 UTC
Hmm so what are you sugessting? Move the wxrc to a within a folder called usr/bin/wxgtk3? Or whatever? How or what command would someone run prior to build to get this to work? I'm not too familiar with prefixing, as I've only done t once in the past

Comment 7 Nicolas Chauvet (kwizart) 2014-08-09 15:48:10 UTC
(In reply to Jeremy Newton from comment #6)
> Hmm so what are you sugessting? Move the wxrc to a within a folder called
> usr/bin/wxgtk3? Or whatever? How or what command would someone run prior to
> build to get this to work? I'm not too familiar with prefixing, as I've only
> done t once in the past

I'm sorry, this is an insufficient answer. Please DO testing.
Prefixing is what is done by wxwin.m4 so should be implemented in every wxGTK* applications using autotools.

Comment 8 Jeremy Newton 2014-08-09 15:54:42 UTC
I'm sorry I misunderstand, but I get what you're saying. I'll look into it and figure it out. Though I still would like to consider alternatives.

Comment 9 sheepdestroyer 2014-08-09 16:52:05 UTC
I think this one is relevant too : https://code.google.com/p/dolphin-emu/issues/detail?id=7069

Comment 10 Jeremy Newton 2014-09-30 14:26:33 UTC
(In reply to sheepdestroyer from comment #9)
> I think this one is relevant too :
> https://code.google.com/p/dolphin-emu/issues/detail?id=7069

Indeed, I posted that.

I'll look into this issue this week, sorry for the delay

Comment 11 Jeremy Newton 2014-10-02 17:59:56 UTC
I'm currently building wxGTK-3.0.1-3 it in rawhide, please confirm if it is fixed if it builds successfully, and if so, I'll push to all other branches.

http://koji.fedoraproject.org/koji/taskinfo?taskID=7749140

Comment 12 sheepdestroyer 2014-10-03 02:26:57 UTC
I still can not build dolphin (even with your patche to cmakelist posted on dolphin site): 

-- Could NOT find wxWidgets (missing:  wxWidgets_FOUND) 
-- Could NOT find wxWidgets (missing:  wxWidgets_FOUND) 
Using static wxWidgets from Externals

Comment 13 sheepdestroyer 2014-10-03 02:27:58 UTC
note  : i did install wxGTK-3.0.1-3 from rawhide

Comment 14 Jeremy Newton 2014-10-03 02:39:26 UTC
For dolphin, you can include the -DwxWidgets_CONFIG_EXECUTABLE= flag to specify the location of the wx-config file. Fortunately dolphin isn't limited to just a directory change

You can build dolphin with something like this

cmake -DwxWidgets_CONFIG_EXECUTABLE=/usr/bin/wx-config-3.0 .
make
sudo make install

Note that /usr/bin/wx-config-3.0 will obviously change to

/usr/libexec/wxGTK3/wx-config

For this new version of wxGTK3 (current Rawhide)

Comment 15 sheepdestroyer 2014-10-03 03:14:47 UTC
so with cmake -DwxWidgets_CONFIG_EXECUTABLE=/usr/libexec/wxGTK3/wx-config

cmake now finds my shared libs

however build fails with :
/home/sheepdestroyer/Downloads/dolphin-master/Source/Core/DolphinWX/X11Utils.h:16:21: fatal error: gtk/gtk.h: No such file or directory
 #include <gtk/gtk.h>

error also reported on the previeous dolphin issue (I applied your patch to cmake files, the second part required a modification to apply)

Comment 16 Nicolas Chauvet (kwizart) 2014-10-03 21:46:58 UTC
It's still failing for me (filezilla).

I've pushed a version of the package that should be supposed to work (it's finding the wx-config utility in the appropriate path). But I guess it failed to find the related wxrc utility. 

According to wxwin.m4 it uses the following command:
/usr/libexec/wxGTK3/wx-config --utility=wxrc

Comment 17 Jeremy Newton 2014-10-04 04:27:09 UTC
(In reply to sheepdestroyer from comment #15)
> so with cmake -DwxWidgets_CONFIG_EXECUTABLE=/usr/libexec/wxGTK3/wx-config
> 
> cmake now finds my shared libs
> 
> however build fails with :
> /home/sheepdestroyer/Downloads/dolphin-master/Source/Core/DolphinWX/X11Utils.
> h:16:21: fatal error: gtk/gtk.h: No such file or directory
>  #include <gtk/gtk.h>
> 
> error also reported on the previous dolphin issue (I applied your patch to
> cmake files, the second part required a modification to apply)

Do you have gtk3-devel installed? Dolphin depends on some gtk libraries to build, also the fedora wxGTK3 package is built on gtk3-devel.

Make sure you have all of the build dependencies installed:

sudo yum install alsa-lib-devel bluez-libs-devel cmake cairo-devel glew-devel libao-devel libjpeg-turbo-devel libpng-devel libXrandr-devel lzo-devel mesa-libGLU-devel openal-soft-devel pulseaudio-libs-devel portaudio-devel SDL2-devel wxGTK3-devel gtk3-devel zlib-devel Cg scons compat-SFML16-devel SOIL-devel gettext desktop-file-utils bochs-devel opencl-utils-devel soundtouch-devel miniupnpc-devel libusb-devel

note the following bug (affects 4.0.2):

https://code.google.com/p/dolphin-emu/issues/detail?id=7074

which can be fixed with:

sed -i 's/soundtouch.h/SoundTouch.h/g' CMakeLists.txt

If you get build issues, it may be issues with other packages. Note that I've built Dolphin 4.0.2 on f20 rpmfusion just fine and should currently be in testing. F19 isn't working due to a weird SFML issues, which may not be fixed if it's a packaging issue due to 19's EOL coming up. Also there seems to be odd gcc 4.9 issues with F21/Rawhide, which I need to either look into and backport fixes, or switch to a git snapshot.

Comment 18 Jeremy Newton 2014-10-04 04:32:00 UTC
(In reply to Nicolas Chauvet (kwizart) from comment #16)
> It's still failing for me (filezilla).
> 
> I've pushed a version of the package that should be supposed to work (it's
> finding the wx-config utility in the appropriate path). But I guess it
> failed to find the related wxrc utility. 
> 
> According to wxwin.m4 it uses the following command:
> /usr/libexec/wxGTK3/wx-config --utility=wxrc

Alright thanks, I will definitely look into this and try to build this version to get it working. Can you link me to the SRPM? or can I get it off of Fedora git?

Comment 19 sheepdestroyer 2014-10-04 14:58:35 UTC
regarding dolphin, I checked and I already have gtk3-devel and all other dependancies. 
.
on my system I have the following files : 
/usr/include/gtk-1.2/gtk/gtk.h
/usr/include/gtk-2.0/gtk/gtk.h
/usr/include/gtk-3.0/gtk/gtk.h

But i still get the following error while compiling :
/home/sheepdestroyer/Downloads/dolphin-master/Source/Core/DolphinWX/X11Utils.h:16:21: fatal error: gtk/gtk.h: No such file or directory
 #include <gtk/gtk.h>

Comment 20 Nicolas Chauvet (kwizart) 2014-10-06 18:42:29 UTC
(In reply to Jeremy Newton from comment #18)
...
> Alright thanks, I will definitely look into this and try to build this
> version to get it working. Can you link me to the SRPM? or can I get it off
> of Fedora git?
Yeah, this is what I've already said here "I've pushed a version ...", so I've pushed it into rawhide despite I haven't done any build.

Comment 21 Nicolas Chauvet (kwizart) 2014-10-20 21:11:10 UTC
I've managed to workaround the issue in filezilla by using for f21:
export WXRC=%{_bindir}/wxrc-3.0

But filezilla is supposed to use the upstream wxwin.m4, so there is a need to ask upstream about how wxGTK3 and wxGTK(2) can be co-installed without mixing.

Basically wxconfig-3.0 --utility=wxrc correctly outputs /bin/wxrc-3.0 on f21 , once wxconfig-3.0 is requested.
I also note that I've removed the wxGTK-devel package to avoid selection of the wxrc binary from wxGTK instead of wxGTK3.


On f22, this is now broken, I don't know what what changed, but this was in the bad sense. Or Jeremy, can you explain ?

FYI:
filezilla from fedpkg master( same as f21) branch
f22 failed:
https://kojipkgs.fedoraproject.org//work/tasks/7783/7917783/build.log
f21 succeed:
http://koji.fedoraproject.org/koji/buildinfo?buildID=586832

In both cases, I'm using:
%build
# for wxGTK3 - needed to find wxrc
export WXRC=%{_bindir}/wxrc-3.0
%configure \
...
  --with-wx-config=wx-config-3.0 \

Comment 22 Marcin Juszkiewicz 2014-11-07 16:07:37 UTC
wxGTK3-devel 3.0.2-1 provides /usr/bin/wx-config not wx-config-3.0 so filezilla fails to build with current spec.

Comment 23 Jeremy Newton 2014-11-07 18:48:27 UTC
Indeed, I reverted back to the default files and readded the conflict with wxgtk-devel. This is the best solution until I can resolve switching to alternatives (there's a bug filed against wxgtk).

The non rawhide packages should be out of testing by next week. Please test!

Either way I'm going to close this after I push the updates, please reopen or make a new bug in the event theres a problem.

Comment 24 Nicolas Chauvet (kwizart) 2014-11-07 22:38:01 UTC
(In reply to Marcin Juszkiewicz from comment #22)
> wxGTK3-devel 3.0.2-1 provides /usr/bin/wx-config not wx-config-3.0 so
> filezilla fails to build with current spec.
right for devel, but it only worked for f21 (at that time, it was wxGTK-3.0.1-??)

I don't understand why a conflict would bring any goods ? filezilla can select the wxconfig filename (and path). as implemented by the upstream wxGTK's wxwin.m4.
Filezilla configure script will ask to wxconfig??? for the name of the wxrc utility...

... There it breaks. ( So I need the following hack:
# for wxGTK3 - needed to find wxrc
PATH=$PATH:%{_libexecdir}/wxGTK3/
)


Problem is still in the wxGTK3 packaging itself. Don't wait for anything to the wxGTK maintainer, there is no sane solution with alternatives.

Comment 25 Jeremy Newton 2014-11-08 02:11:42 UTC
(In reply to Nicolas Chauvet (kwizart) from comment #24)
> (In reply to Marcin Juszkiewicz from comment #22)
> > wxGTK3-devel 3.0.2-1 provides /usr/bin/wx-config not wx-config-3.0 so
> > filezilla fails to build with current spec.
> right for devel, but it only worked for f21 (at that time, it was
> wxGTK-3.0.1-??)
> 
> I don't understand why a conflict would bring any goods ? filezilla can
> select the wxconfig filename (and path). as implemented by the upstream
> wxGTK's wxwin.m4.
> Filezilla configure script will ask to wxconfig??? for the name of the wxrc
> utility...
> 
> ... There it breaks. ( So I need the following hack:
> # for wxGTK3 - needed to find wxrc
> PATH=$PATH:%{_libexecdir}/wxGTK3/
> )
> 
> 
> Problem is still in the wxGTK3 packaging itself. Don't wait for anything to
> the wxGTK maintainer, there is no sane solution with alternatives.

Ok Nicolas, I don't think I understand, what are you proposing?

I can put wx-config, wxrc and wxrc-3.0 in %{_libexecdir}/wxGTK3/, which I have no problem with. I can also provide a symlink in /usr/bin (which I would personally want to avoid confusion). But what do I do with the m4 file? I can't have it conflict with wxGTK's wxwin.m4.

I see two solutions:

/usr/share/aclocal/wxwin3.m4

 or 

/usr/share/aclocal/wxGTK3/wxwin.m4


I'm having trouble understanding what you want here. So please provide me with some sort of explanation so I can understand what you need to get things building correctly.


These are the three conflicts I need to deal with if it helps:

/usr/bin/wx-config
/usr/bin/wxrc
/usr/share/aclocal/wxwin.m4

Here is how I had it with 3.0.1:

/usr/bin/wx-config-3.0
/usr/bin/wxrc-3.0
/usr/share/aclocal/wxwin3.m4

This is what I think you want (but I need clarification):

/usr/libexec/wxGTK3/wx-config
/usr/libexec/wxGTK3/wxrc
/usr/share/aclocal/wxGTK3/wxwin.m4

plus I propose three symlinks of:

/usr/bin/wx-config-3.0        to   /usr/libexec/wxGTK3/wx-config
/usr/bin/wxrc-3.0             to   /usr/libexec/wxGTK3/wxrc
/usr/libexec/wxGTK3/wxrc-3.0  to   /usr/libexec/wxGTK3/wxrc

What works for you? How can I improve this?

Comment 26 Nicolas Chauvet (kwizart) 2014-11-11 09:19:22 UTC
Do you have that implemented somewhere ?

Comment 27 Jeremy Newton 2014-11-11 11:16:45 UTC
(In reply to Nicolas Chauvet (kwizart) from comment #26)
> Do you have that implemented somewhere ?

Not yet, let me make a koji build

Comment 28 Jeremy Newton 2014-11-11 12:48:17 UTC
I have a rawhide build going right now.
I'm not sure how long it takes for it to be pushed to rawhide servers after built, but here's the koji task:

http://koji.fedoraproject.org/koji/taskinfo?taskID=8095716

Note that I have not yet tested the symlinks and I dropped the /usr/libexec/wxGTK3/wxrc-3.0 symlink because, in hindsight, it seemed pointless.

Comment 29 Nicolas Chauvet (kwizart) 2014-11-12 16:53:55 UTC
This worked for rawhide (depsite I still need the path hack to find wxrc whereas it should have picked wxrc-3.0)
http://koji.fedoraproject.org/koji/buildinfo?buildID=592608

Can you basically tests others dependencies and schedule a backport to f21 ?

Comment 30 Nicolas Chauvet (kwizart) 2014-11-12 17:18:27 UTC
@Jeremy 
thx for your work btw !

Comment 31 Jeremy Newton 2014-11-12 18:53:15 UTC
(In reply to Nicolas Chauvet (kwizart) from comment #30)
> @Jeremy 
> thx for your work btw !

No problem, I'll backport this right away

(In reply to Nicolas Chauvet (kwizart) from comment #29)
> This worked for rawhide (depsite I still need the path hack to find wxrc
> whereas it should have picked wxrc-3.0)

Unfortunately I have no idea how to get around this without alternatives or a conflict, as it looks specifically for /usr/bin/wxrc. This should be fine, as almost all wx dependant sources have an equivalent option.


I'll tag this bug in the updates.

Comment 32 Fedora Update System 2014-11-12 19:24:52 UTC
wxGTK3-3.0.2-2.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/wxGTK3-3.0.2-2.fc19

Comment 33 Fedora Update System 2014-11-12 19:26:25 UTC
wxGTK3-3.0.2-2.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/wxGTK3-3.0.2-2.el6

Comment 34 Fedora Update System 2014-11-12 19:27:02 UTC
wxGTK3-3.0.2-2.el7 has been submitted as an update for Fedora EPEL 7.
https://admin.fedoraproject.org/updates/wxGTK3-3.0.2-2.el7

Comment 35 Fedora Update System 2014-11-12 19:47:57 UTC
wxGTK3-3.0.2-2.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/wxGTK3-3.0.2-2.fc20

Comment 36 Fedora Update System 2014-11-12 19:53:03 UTC
wxGTK3-3.0.2-2.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/wxGTK3-3.0.2-2.fc21

Comment 37 Fedora Update System 2014-11-16 14:40:10 UTC
wxGTK3-3.0.2-2.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 38 Fedora Update System 2014-11-22 12:35:41 UTC
wxGTK3-3.0.2-2.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 39 Fedora Update System 2014-11-22 12:45:41 UTC
wxGTK3-3.0.2-2.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 40 Fedora Update System 2014-11-30 19:16:06 UTC
wxGTK3-3.0.2-2.el7 has been pushed to the Fedora EPEL 7 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 41 Fedora Update System 2014-11-30 19:18:56 UTC
wxGTK3-3.0.2-2.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.