bedotalha / b-tk

Automatically exported from code.google.com/p/b-tk
0 stars 0 forks source link

vtkCommon - btk with BTK_USE_VISSUPPORT and vtk6.0 doesn't compile #71

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1.cmake 2.8.11-2 on 
2.btk from https://code.google.com/p/b-tk.core/
3.vtk build from git://vtk.org/VTK.git 

What is the expected output? What do you see instead?
btk - cmake configuration (unix) with BTK_USE_VISSUPPORT

What version of the product are you using? On what operating system?
mac 10.8.5; xCode 5

Please provide any additional information below.

when using 'make' i get following error:

Linking CXX shared library ../../../bin/libBTKVTK.dylib
ld: library not found for -lvtkCommon
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [bin/libBTKVTK.0.3dev.0.dylib] Error 1
make[1]: *** [Code/VisSupport/VTK/CMakeFiles/BTKVTK.dir/all] Error 2

i am not sure but is it because of the changes in vtk-6 
(http://www.vtk.org/Wiki/VTK/Build_System_Migration)?

i looked and i don't have vtkCommon but only vtkCommonCore; i am total newbie 
and not sure how to go around this; any suggestions will be very much 
appreciated.

thank you very much!

Original issue reported on code.google.com by nika...@gmail.com on 30 Oct 2013 at 5:39

GoogleCodeExporter commented 8 years ago
Thanks for the report. I'm still trying to have the support of both VTK 5.x and 
VTK 6, but I did not pay attention to the linking errors with VTK 6. The 
difference in the libraries' name for VTK 6 is indeed the reason of the linker 
error. 

Original comment by arnaud.barre on 31 Oct 2013 at 7:28

GoogleCodeExporter commented 8 years ago
Thanks for your reply. I used in cmakelists file for vtk VTK_LIBRARIES instead 
of the old libs. So now 'make' fails to find 'numpy/arrayobject.h' but 
otherwise errors that i get seem to be just couple of old functions that have 
to be changed for vtk-6. I am not sure you will find it helpful but just in 
case i attached the log.
thanks

Original comment by nika...@gmail.com on 1 Nov 2013 at 1:20

Attachments:

GoogleCodeExporter commented 8 years ago
Thanks for the error log. This is very useful.
 - Regarding the numpy error: which version of numpy is installed on your computer? I have no problem to compile the Python bindings with the version embedded in MacOS 10.8.5 as well as under Ubuntu 12.04.
 - Regarding VTK errors: Are you using the development version of VTK? It seems you use VTK 6.1 but the last version released is VTK 6.0. The legacy errors (and linker error) could come from this.

Original comment by arnaud.barre on 1 Nov 2013 at 4:26

GoogleCodeExporter commented 8 years ago
Revisions 624f99814ab4, 4e5abb6f6ccd, and 5637fa0801db should fix all the 
reported errors. Compared to the issue #65, most of the errors in this issue 
are due to the configuration of VTK 6.0 with the option VTK_LEGACY_REMOVE. The 
code in BTK is now adapted to take the use of this option.

WARNING: If you want to compile also Mokka, you have to know that the code was 
never tested with VTK 6.x. Therefore, some display issues could happen or even 
linker errors.

Original comment by arnaud.barre on 1 Nov 2013 at 9:16

GoogleCodeExporter commented 8 years ago
thanks for your quick reply. You are right, i accidentally install vtk from 
master branch; numpy was my mistake as well - i have it in 'unusual' location 
and had to insert version and include directory manually in cmake but instead 
of pointing to numpy-core folder pointed to numpy folder. 

I reinstall vtk (is 6.0.0 now) and updated btk. Manually changed QVTK lib to 
VTK_LIBRARIES in cmakelists for mokka; setinput and DATA_TIME_STEPS to 
setinputdata and DATA_TIME_STEP in Mokka/ChartWidget.cpp and 
MultiViewWidget.cpp. 

All good but now i get Undefined symbols for architecture x86_64 with 
QVTKWidget and i don't understand what it means; nm  -arch x86_64 doesn't 
complain. I think i leave it. and thanks again. 

Original comment by nika...@gmail.com on 2 Nov 2013 at 2:20

Attachments:

GoogleCodeExporter commented 8 years ago
The linker errors with QVTKWidget is due to the way VTK 6 includes or not 
selected modules in the CMAKE variable VTK_LIBRARIES.  If you include the 
module vtkGUISupportQt in the command FIND_PACKAGE(VTK 6.0 …) [1], this 
should fix the problem. 

The errors reported in your second log file will be fixed later when I will 
work on Mokka. You may know, but the source code of Mokka will be removed of 
BTKCore to have its own git repository.

[1] 
https://code.google.com/p/b-tk/source/browse/CMakeLists.txt?repo=core&r=0c5e4f69
b6ed374a414ff34c67db362625c9359d#70

Original comment by arnaud.barre on 2 Nov 2013 at 3:45

GoogleCodeExporter commented 8 years ago
Thanks, adding vtkGUISupportQt and vtkViewsContext2D fixed it but there is an 
issue with bundle by installation. It's really good that you want to separate 
Mokka from btk; looking forward and deactivate visuals for now.

CMake Error at /Applications/CMake 
2.8-11.app/Contents/share/cmake-2.8/Modules/BundleUtilities.cmake:668 (message):
  error: fixup_bundle: not a valid bundle
Call Stack (most recent call first):
  /Developer/Applications/B-TK/b-tk.core/CMake/DeployQt4.cmake:168 (fixup_bundle)

Original comment by nika...@gmail.com on 2 Nov 2013 at 3:13