Therion compiling error (Loch, lxGUI)
Good evening, I am trying to compile Therion on an openSuse 13.2 64bit, and had no success so far. After some research (including the mailing list, of course) I noticed it seems to be hanging on Loch compiling, as you maybe would have guessed:). I used the patch of detrito (29.12.2015 10:56, many thanks for that, by the way!) and set C_INCLUDE_PATH=/usr/include/vtk-6.1, and also CPLUS_INCLUDE_PATH=/usr/include/vtk-6.1 (a link from /usr/include/vtk --> vtk-6.1 would have also sufficed, perhaps, after I saw I"/usr/include/vtk/" in the compiling messages. But now it hangs at: c++ -c -Wall -D_GNU_SOURCE -DLOCH -DLXLINUX -I/usr/lib64/wx/include/gtk2- unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -DWXUSINGDLL -D__WXGTK__ -pthread -Wno-deprecated -I/usr/include/freetype2 -I"/usr/include/vtk/" -O2 -o lxGUI.o lxGUI.cxx lxGUI.cxx: In member function ‘int lxFrame::GetFileType(wxString)’: lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t; ^ lxGUI.cxx:518:3: note: in expansion of macro ‘matchtype’ matchtype(".lox",1); ^ lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t; ^ lxGUI.cxx:519:3: note: in expansion of macro ‘matchtype’ matchtype(".LOX",1); ^ lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t; ^ lxGUI.cxx:520:3: note: in expansion of macro ‘matchtype’ matchtype(".plt",2); ^ lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t; ^ lxGUI.cxx:521:3: note: in expansion of macro ‘matchtype’ matchtype(".PLT",2); ^ lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t; ^ lxGUI.cxx:522:3: note: in expansion of macro ‘matchtype’ matchtype(".3d",3); ^ lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t; ^ lxGUI.cxx:523:3: note: in expansion of macro ‘matchtype’ matchtype(".3D",3); ^ Makefile:129: recipe for target 'lxGUI.o' failed make[1]: *** [lxGUI.o] Error 1 make[1]: Leaving directory '/home/chr/downloads/frisch/therion/loch' Makefile:182: recipe for target 'loch/loch' failed make: *** [loch/loch] Error 2 …and I do not know how to get over this error. I would very much like to use Therion again. Has anyona a hint for me how to cope with this error, please? Best regards, Christian
Am Montag, 2. Mai 2016, 23:10:06 schrieb Christian Rößler (Roessler): Hallo everyone,
I am trying to compile Therion on an openSuse 13.2 64bit, and had no success so far. After some research (including the mailing list, of course) I noticed it seems to be hanging on Loch compiling, as you maybe would have guessed:). I used the patch of detrito (29.12.2015 10:56, many thanks for that, by the way!) and set C_INCLUDE_PATH=/usr/include/vtk-6.1, and also CPLUS_INCLUDE_PATH=/usr/include/vtk-6.1 (a link from /usr/include/vtk --> vtk-6.1 would have also sufficed, perhaps, after I saw I"/usr/include/vtk/" in the compiling messages.
But now it hangs at:
lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t;
[Martin Sluka, Re: [Therion] exporting gif file in xvia Message-id: <8E703DB0-B0AF-4E09-B75E-1B3695E95E86@mac.com>]
There is a repository of therion on github: https://github.com/therion/test I spoke today with Martin Budaj and coerced him to change the status of this repository from test to regular.
well, after reading the hint to that repository, I downloaded it at once, and read in file changes: VTK 6.0 support. So I compiled it anew, as working in a virtual machine is sometimes a bit bothersone. But it hangs at the exactly same point while compiling as mentioned above. So I would like to ask if there is a solution on the horizon, so to say? Just curious… Best regards, Christian
+++ Christian Rößler [2016-05-13 23:32 +0200]:
Am Montag, 2. Mai 2016, 23:10:06 schrieb Christian Rößler (Roessler):
Hallo everyone,
I am trying to compile Therion on an openSuse 13.2 64bit, and had no success so far.
But now it hangs at:
lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t;
well, after reading the hint to that repository, I downloaded it at once, and read in file changes: VTK 6.0 support. So I compiled it anew, as working in a virtual machine is sometimes a bit bothersone. But it hangs at the exactly same point while compiling as mentioned above. So I would like to ask if there is a solution on the horizon, so to say?
You might have more joy with the Debian package which is patched to fix various such build-time issues: http://httpredir.debian.org/debian/pool/main/t/therion/therion_5.3.16-10.dsc and the corresponding .orig.tar.gz and .debian.tar.gz That's built against vtk6.2 This one is built against vtk6.1: http://httpredir.debian.org/debian/pool/main/t/therion/therion_5.3.15-2.dsc The debian vtk packaging layouts may not exactly match the Suse ones but you will probably find clues. Or you can look online here (although I don't see anything much that looks relevant): https://sources.debian.net/src/therion/5.3.16-10/debian/patches/ Wookey -- Principal hats: Linaro, Debian, Wookware, ARM http://wookware.org/
On Sat, May 14, 2016 at 03:14:59AM +0100, Wookey wrote:
+++ Christian Rößler [2016-05-13 23:32 +0200]:
Am Montag, 2. Mai 2016, 23:10:06 schrieb Christian Rößler (Roessler):
I am trying to compile Therion on an openSuse 13.2 64bit, and had no success so far.
But now it hangs at:
lxGUI.cxx:517:73: error: invalid cast from type ‘wxString’ to type ‘const wxChar* {aka const wchar_t*}’ #define matchtype(w,t) if (fName.EndsWith((const wxChar *)wxString(_T(w)))) return t;
well, after reading the hint to that repository, I downloaded it at once, and read in file changes: VTK 6.0 support. So I compiled it anew, as working in a virtual machine is sometimes a bit bothersone. But it hangs at the exactly same point while compiling as mentioned above. So I would like to ask if there is a solution on the horizon, so to say?
You might have more joy with the Debian package which is patched to fix various such build-time issues: http://httpredir.debian.org/debian/pool/main/t/therion/therion_5.3.16-10.dsc and the corresponding .orig.tar.gz and .debian.tar.gz That's built against vtk6.2
This one is built against vtk6.1: http://httpredir.debian.org/debian/pool/main/t/therion/therion_5.3.15-2.dsc
The debian vtk packaging layouts may not exactly match the Suse ones but you will probably find clues. Or you can look online here (although I don't see anything much that looks relevant): https://sources.debian.net/src/therion/5.3.16-10/debian/patches/
The above error sounds like a wx issue not a vtk one, but indeed not one we seem to have hit in the debian package. I don't understand why there's a cast to (const wxChar*) there - I'd try removing that, since that's what's causing the error - i.e. make that line (loch/lxGUI.cxx line 517): #define matchtype(w,t) if (fName.EndsWith(wxString(_T(w)))) return t; Cheers, Olly
participants (4)
-
Christian Rößler -
Christian Rößler (Roessler) -
Olly Betts -
Wookey