Ah-ha...RedHat's 32bit/64bit library versioning strikes again...It looks
like this is due to having both the i386 and x86_64 libraries/headers
installed at the same time. The wxGTK libraries are provided via the
EPEL repository BTW.
The following steps allow for successful compilation...it's messy but
1) yum erase wxGTK-devel-2.8.12-1.el5.i386 wxGTK-2.8.12-1.el5.i386
This removes /usr/bin/wx-config as well, which is present in both 32 and
64 bit devel packages, so:
2) yum reinstall wxGTK-devel.x86_64
3) ./configure && make && make install
...and in case anything else was already linked against the 32 bit libs....
4) yum install wxGTK.i386
There is probably a cleaner way of doing this, but since wx-config is
installed with both sets of libraries it looks like the devel packages
can not co-exist on a machine, (yum install wxGTK* somehow installs them
all, but 'yum install wxGTK-devel.i386' when wxGTK-devel.x86_64 is
already installed fails...
Thanks for the pointers - it got me on the right track.
On 03/06/2013 01:28 PM, Dan Lawson wrote:
> This could be related to:
> which is marked as a duplicate of
> also discussed at:
> with the conclusion being that:
> a) the underlying problem is a version conflict (64/32 bit)
> b) there is a workaround by modifying a single line in the wxwidgets code
> c) Somewhere post 2010 the bug was fixed, but I'm not 100% sure about
> what that fix was.
> d) It might be possible to avoid the bug by using wxGTK types
> explicitly, rather than native, but I don't know how I'd go about
> implementing that.
> It may or may not be informative to know if you can a) compile the
> chromopainter/chromocombine GUIs, or b) compile other wxwidgets code.
> PS The depcomp/missing issue will be addressed in the next release,
> which will be when we solve this problem.
> On 06/03/13 10:27, James Abbott wrote:
>> I'm having trouble compiling the filestructure GUI under CentOS 5.6.
>> The compiler/library versions are as follows:
>> g++44 (GCC) 4.4.7 20120313 (Red Hat 4.4.7-1)
>> wxGTK: 2.8.12 (wxGTK and wxGTK-devel RPMSs installed)
>> gsl: 1.13 (gsl and gsl-devel RPMS installed)
>> Firstly, the 'depcomp' and 'missing' scripts are missing from
>> finestructure-0.0.3/gui/config (but this is easily solved by borrowing
>> copies from finestructure-0.0.3/config...). The commandline version
>> compiles fine, however the gui fails with:
>> source='reorderall.cpp' object='finegui-reorderall.o' libtool=no \
>> DEPDIR=.deps depmode=none /bin/sh ./config/depcomp \
>> /usr/bin/g++44 -DHAVE_CONFIG_H -I.
>> -I/usr/lib/wx/include/gtk2-unicode-release-2.8 -I/usr/include/wx-2.8
>> -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -O3 -Wall
>> -Wno-write-strings -mfpmath=sse -msse -msse2 -funroll-loops
>> -fomit-frame-pointer -ftree-vectorize -funsafe-math-optimizations -I
>> ../eigen/ -Wall `wx-config --libs` -g -O2 -c -o finegui-reorderall.o
>> `test -f 'reorderall.cpp' || echo './'`reorderall.cpp
>> In file included from inputdata.h:8,
>> from reorderall.h:11,
>> from reorderall.cpp:6:
>> /usr/include/wx-2.8/wx/filename.h: In static member function ‘static
>> wxChar wxFileName::GetPathSeparator(wxPathFormat)’:
>> /usr/include/wx-2.8/wx/filename.h:393: error: ambiguous overload for
>> ‘operator’ in ‘wxFileName::GetPathSeparators(wxPathFormat)()[0u]’
>> /usr/include/wx-2.8/wx/filename.h:393: note: candidates are:
>> operator(const wxChar*, long int) <built-in>
>> /usr/include/wx-2.8/wx/string.h:822: note: wxChar&
>> /usr/include/wx-2.8/wx/string.h:824: note: wxChar&
>> Do you have any suggestions as to how to get round this problem?
>> Many thanks,
Dr. James Abbott
Bioinformatics Support Service
Imperial College, London