Menu

build error - octaviz

Help
2008-08-04
2013-04-22
  • Bruce Labitt

    Bruce Labitt - 2008-08-04

    Hi all,
    I'm trying to get octaviz-0.4.7 to build on my system.  I have installed vtk through vtk-5.0.4-19.fc8.src.rpm.  The install seemed to go ok.  I am running Scientific Linux 5.2 (RHEL5.2 clone).

    I am getting the following CMake error:

    CMake Error: Error in cmake code at
    :7:
    LOAD_COMMAND Attempt to load command failed from file "libcmVTK_WRAP_TCL2.so"
    Current CMake stack:
    /home/BDLabitt/octaviz/CMakeLists.txt;/usr/share/cmake-2.4/Modules/CMakeCInformation.cmake;/usr/share/cmake-2.4/Modules/CMakeCXX
    Information.cmake;/usr/local/lib/vtk-5.0/UseVTK.cmake

    CMake Error: Error in cmake code at
    /usr/local/lib/vtk-5.0/UseVTK.cmake:35:
    A command failed during the invocation of macro "VTK_LOAD_SINGLE_CMAKE_EXTENSION".

    CMake Error: Error in cmake code at
    :27:
    VTK_LOAD_SINGLE_CMAKE_EXTENSION unknown error.
    Current CMake stack:
    /home/BDLabitt/octaviz/CMakeLists.txt;/usr/share/cmake-2.4/Modules/CMakeCInformation.cmake;/usr/share/cmake-2.4/Modules/CMakeCXX
    Information.cmake;/usr/local/lib/vtk-5.0/UseVTK.cmake

    CMake Error: Error in cmake code at
    /usr/local/lib/vtk-5.0/UseVTK.cmake:35:
    A command failed during the invocation of macro "VTK_LOAD_CMAKE_EXTENSIONS".

    CMake Error: Error in cmake code at
    /usr/local/lib/vtk-5.0/UseVTK.cmake:35:
    VTK_LOAD_CMAKE_EXTENSIONS unknown error.
    Current CMake stack:
    /home/BDLabitt/octaviz/CMakeLists.txt;/usr/share/cmake-2.4/Modules/CMakeCInformation.cmake;/usr/share/cmake-2.4/Modules/CMakeCXX
    Information.cmake;/usr/local/lib/vtk-5.0/UseVTK.cmake

    The end of a CMakeLists file was reached with an IF statement that was not closed properly.
    Within the directory: /home/BDLabitt/octaviz
    The arguments are: VTK_NEED_LOADED_COMMANDS

    The end of a CMakeLists file was reached with an IF statement that was not closed properly.
    Within the directory: /home/BDLabitt/octaviz
    The arguments are: COMMAND VTK_WRAP_TCL2

    The end of a CMakeLists file was reached with an IF statement that was not closed properly.
    Within the directory: /home/BDLabitt/octaviz
    The arguments are: VTK_NEED_LOADED_COMMANDS

    The end of a CMakeLists file was reached with an IF statement that was not closed properly.
    Within the directory: /home/BDLabitt/octaviz
    The arguments are: COMMAND VTK_WRAP_TCL2

    I am using the vtk-5.0.4-19-fc8.src.rpm which has the following for the vtk.spec file:

    %bcond_without OSMesa
    %bcond_with qt4
    %bcond_with java

    %{!?python_sitearch:%global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}

    Summary: The Visualization Toolkit - A high level 3D visualization library
    Name: vtk
    Version: 5.0.4
    Release: 19%{?dist}
    License: BSD-like
    Group: System Environment/Libraries
    Source: http://www.vtk.org/files/release/5.0/%\{name}-%{version}.tar.gz
    Patch0: vtk-5.0.0-pythondestdir.patch
    URL: http://vtk.org/
    BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
    BuildRequires: cmake >= 2.0.4
    BuildRequires: gcc-c++
    %{?with_java:BuildRequires: java-devel}
    BuildRequires: libX11-devel, libXt-devel, libXext-devel
    BuildRequires: libICE-devel, libGL-devel
    %{?with_OSMesa:BuildRequires: mesa-libOSMesa-devel}
    BuildRequires: tk-devel, tcl-devel
    BuildRequires: python-devel
    BuildRequires: expat-devel, freetype-devel, libjpeg-devel, libpng-devel
    BuildRequires: libtiff-devel, zlib-devel
    BuildRequires: qt-devel
    %{?with_qt4:BuildRequires: qt4-devel}
    BuildRequires: chrpath
    BuildRequires: doxygen, graphviz

    %description
    VTK is an open-source software system for image processing, 3D
    graphics, volume rendering and visualization. VTK includes many
    advanced algorithms (e.g., surface reconstruction, implicit modelling,
    decimation) and rendering techniques (e.g., hardware-accelerated
    volume rendering, LOD control).

    %package devel
    Summary: VTK header files for building C++ code
    Requires: vtk = %{version}-%{release}
    Group: Development/Libraries

    %description devel
    This provides the VTK header files required to compile C++ programs that
    use VTK to do 3D visualisation.

    %package tcl
    Summary: Tcl bindings for VTK
    Requires: vtk = %{version}-%{release}
    Group: System Environment/Libraries

    %description tcl
    tcl bindings for VTK

    %package python
    Summary: Python bindings for VTK
    Requires: vtk = %{version}-%{release}
    Group: System Environment/Libraries

    %description python
    python bindings for VTK

    %if %{with java}
    %package java
    Summary: Java bindings for VTK
    Requires: vtk = %{version}-%{release}
    Group: System Environment/Libraries

    %description java
    Java bindings for VTK
    %endif

    %package qt
    Summary: Qt bindings for VTK
    Requires: vtk = %{version}-%{release}
    Group: System Environment/Libraries

    %description qt
    Qt bindings for VTK

    %package testing
    Summary: Testing programs for VTK
    Requires: vtk = %{version}-%{release}, vtkdata = %{version}
    Group: Applications/Engineering

    %description testing
    Testing programs for VTK

    %package examples
    Summary: Examples for VTK
    Requires: vtk = %{version}-%{release}, vtkdata = %{version}
    Group: Applications/Engineering

    %description examples
    This package contains many well-commented examples showing how to use
    VTK. Examples are available in the C++, Tcl, Python and Java
    programming languages.

    %prep
    %setup -q -n VTK
    %patch0 -p1

    # Replace relative path ../../../VTKData with %{_datadir}/vtkdata-%{version}
    # otherwise it will break on symlinks.
    grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs \   perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/vtkdata-%{version},g'

    # Remove executable bits from sources
    find . -name \*.c -or -name \*.cxx -or -name \*.h | xargs chmod -x

    # Save an unbuilt copy of the Example's sources for %doc
    mkdir vtk-examples-5.0
    cp -a Examples vtk-examples-5.0
    find vtk-examples-5.0 -type f | xargs chmod -R a-x

    %build
    export CFLAGS="%{optflags} -D_UNICODE"
    export CXXFLAGS="%{optflags} -D_UNICODE"
    %if %{with java}
    export JAVA_HOME=/usr/lib/jvm/java
    %endif
    %if %{with qt4}
    unset QTINC QTLIB QTPATH_LRELEASE QMAKESPEC
    export QTDIR=%{_libdir}/qt4
    %endif

    tmpinstall=`pwd`/tmpinstall

    cmake_command="cmake . \ -DBUILD_SHARED_LIBS:BOOL=ON \ -DBUILD_DOCUMENTATION:BOOL=ON \ -DBUILD_EXAMPLES:BOOL=ON \ -DBUILD_TESTING:BOOL=ON \ -DCMAKE_INSTALL_PREFIX:PATH=$tmpinstall \ -DVTK_INSTALL_BIN_DIR:PATH=%{_bindir} \ -DVTK_INSTALL_INCLUDE_DIR:PATH=%{_includedir}/vtk \ -DVTK_INSTALL_LIB_DIR:PATH=%{_libdir} \ -DVTK_DATA_ROOT:PATH=%{_datadir}/vtkdata-%{version} \ -DTK_INTERNAL_PATH:PATH=/usr/include/tk-private/generic \ %if %{with OSMesa}
    -DVTK_OPENGL_HAS_OSMESA:BOOL=ON \ %endif
    -DVTK_WRAP_PYTHON:BOOL=ON \ %if %{with java}
    -DVTK_WRAP_JAVA:BOOL=ON \ -DJAVA_INCLUDE_PATH:PATH=$JAVA_HOME/include \ -DJAVA_INCLUDE_PATH2:PATH=$JAVA_HOME/include/linux \ -DJAVA_AWT_INCLUDE_PATH:PATH=$JAVA_HOME/include \ %else
    -DVTK_WRAP_JAVA:BOOL=OFF \ %endif
    -DVTK_WRAP_TCL:BOOL=ON \ -DVTK_USE_GL2PS:BOOL=ON \ -DVTK_USE_GUISUPPORT:BOOL=ON \ -DVTK_USE_PARALLEL:BOOL=ON \ -DVTK_USE_SYSTEM_EXPAT=ON \ -DVTK_USE_SYSTEM_FREETYPE=ON \ -DVTK_USE_SYSTEM_JPEG=ON \ -DVTK_USE_SYSTEM_PNG=ON \ -DVTK_USE_SYSTEM_TIFF=ON \ -DVTK_USE_SYSTEM_ZLIB=ON \ -DVTK_USE_QVTK=ON \ %if %{with qt4}
    -DDESIRED_QT_VERSION=4 \ -DQT_MOC_EXECUTABLE=%{_libdir}/qt4/bin/moc \ -DVTK_INSTALL_QT_DIR=`qmake-qt4 -query QT_INSTALL_PREFIX`/plugins/designer \ %else
    -DVTK_INSTALL_QT_DIR=`qmake -query QT_INSTALL_PREFIX`/plugins/designer \ %endif
    "
    # Second cmake is neccessary for vtk
    eval $cmake_command
    eval $cmake_command

    # Commented old flags in case we'd like to reactive some of them
    # -DVTK_USE_DISPLAY:BOOL=OFF \ # This prevents building of graphics tests
    # -DVTK_USE_HYBRID:BOOL=ON \ # -DVTK_USE_PATENTED:BOOL=ON \ # -DVTK_USE_RENDERING:BOOL=ON \ # -DVTK_USE_MPI:BOOL=OFF \ # -DVTK_USE_X:BOOL=ON \ # -DOPENGL_INCLUDE_DIR:PATH=/usr/include/GL \

    make

    %install
    rm -rf %{buildroot}
    mkdir -p %{buildroot}
    make install
    mv tmpinstall/* %{buildroot}/

    if [ "%{_lib}" != lib -a "`ls %{buildroot}%{_prefix}/lib/*`" != "" ]; then
      mkdir -p %{buildroot}%{_libdir}
      mv %{buildroot}%{_prefix}/lib/* %{buildroot}%{_libdir}/
    fi

    # Gather list of non-python/tcl libraries
    ls %{buildroot}%{_libdir}/*.so.* \   | grep -Ev '(Java|QVTK|PythonD|TCL)' | sed -e's,^%{buildroot},,' > libs.list

    mkdir -p %{buildroot}%{_libdir}/vtk-examples-5.0 \          %{buildroot}%{_libdir}/vtk-testing-5.0

    # List of executable utilities
    cat > utils.list << EOF
    vtkParseOGLExt
    vtkVREncodeString
    EOF

    # List of executable examples
    cat > examples.list << EOF
    HierarchicalBoxPipeline
    MultiBlock
    Arrays
    Cube
    RGrid
    SGrid
    Medical1
    Medical2
    Medical3
    finance
    AmbientSpheres
    Cylinder
    DiffuseSpheres
    SpecularSpheres
    Cone
    Cone2
    Cone3
    Cone4
    Cone5
    Cone6
    EOF

    # List of executable test binaries
    cat > testing.list << EOF
    CommonCxxTests
    TestCxxFeatures
    TestInstantiator
    FilteringCxxTests
    GraphicsCxxTests
    GenericFilteringCxxTests
    ImagingCxxTests
    IOCxxTests
    RenderingCxxTests
    VTKBenchMark
    VolumeRenderingCxxTests
    WidgetsCxxTests
    SocketClient
    SocketServer
    EOF

    # Install utils/examples/testing, too
    for filelist in utils.list examples.list testing.list; do
      for file in `cat $filelist`; do
        install -p bin/$file %{buildroot}%{_bindir}
      done
      perl -pi -e's,^,%{_bindir}/,' $filelist
    done

    # Remove any remnants of rpaths
    for file in `cat examples.list`; do
      chrpath -d %{buildroot}$file
    done

    # Main package contains utils and core libs
    cat libs.list utils.list > main.list

    # Make shared libs and scripts executable
    chmod a+x %{buildroot}%{_libdir}/lib*.so.*
    chmod a+x %{buildroot}%{_libdir}/vtk-5.0/doxygen/*.pl
    chmod a+x %{buildroot}%{_libdir}/vtk-5.0/testing/*.{py,tcl}

    # Remove exec bit from non-scripts and %%doc
    for file in `find %{buildroot} -type f -perm 0755 \   | xargs -r file | grep ASCII | awk -F: '{print $1}'`; do
      head -1 $file | grep '^#!' > /dev/null && continue
      chmod 0644 $file
    done
    find Utilities/Upgrading -type f | xargs chmod -x

    # Add exec bits to shared libs ...
    chmod 0755 %{buildroot}%{_libdir}/vtk-5.0/CMake/*.so

    %check || :
    #LD_LIBARARY_PATH=`pwd`/bin ctest -V

    %clean
    rm -rf %{buildroot}

    %post -p /sbin/ldconfig

    %postun -p /sbin/ldconfig

    %post tcl -p /sbin/ldconfig

    %postun tcl -p /sbin/ldconfig

    %post python -p /sbin/ldconfig

    %postun python -p /sbin/ldconfig

    %if %{with java}
    %post java -p /sbin/ldconfig

    %postun java -p /sbin/ldconfig
    %endif

    %post qt -p /sbin/ldconfig

    %postun qt -p /sbin/ldconfig

    %files -f main.list
    %defattr(-,root,root,-)
    %doc --parents Copyright.txt README.html vtkLogo.jpg vtkBanner.gif Wrapping/*/README*

    %files devel
    %defattr(-,root,root,-)
    %doc Utilities/Upgrading
    %{_libdir}/vtk-5.0/doxygen
    %{_includedir}/vtk
    %{_libdir}/*.so
    %{_libdir}/vtk-5.0/CMake
    %{_libdir}/vtk-5.0/*.cmake
    %{_libdir}/vtk-5.0/hints

    %files tcl
    %defattr(-,root,root,-)
    %{_libdir}/*TCL.so.*
    %{_bindir}/vtk
    %{_bindir}/vtkWrapTcl
    %{_bindir}/vtkWrapTclInit
    %{_libdir}/vtk-5.0/pkgIndex.tcl
    %{_libdir}/vtk-5.0/tcl

    %files python
    %defattr(-,root,root,-)
    #%{python_sitearch}/vtk
    %{python_sitearch}/*
    %{_libdir}/*PythonD.so.*
    %{_bindir}/vtkpython
    %{_bindir}/vtkWrapPython
    %{_bindir}/vtkWrapPythonInit

    %if %{with java}
    %files java
    %defattr(-,root,root,-)
    %{_libdir}/*Java.so.*
    %{_bindir}/vtkParseJava
    %{_bindir}/vtkWrapJava
    %endif

    %files qt
    %defattr(-,root,root,-)
    %{_libdir}/libQVTK.so.*
    %{_libdir}/qt*/plugins/designer/libQVTKWidgetPlugin.so

    %files testing -f testing.list
    %defattr(-,root,root,-)
    %{_libdir}/vtk-5.0/testing
    %{_libdir}/vtk-testing-5.0

    %files examples -f examples.list
    %defattr(-,root,root,-)
    %doc vtk-examples-5.0/Examples
    %{_libdir}/vtk-examples-5.0

    %changelog
    * Sat Feb 23 2008 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.4-19
    - Update to 5.0.4.

    * Mon May 28 2007 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.3-18
    - Move headers to %%{_includedir}/vtk.
    - Remove executable bit from sources.

    * Mon Apr 16 2007 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.3-17
    - Make java build conditional.
    - Add ldconfig %%post/%%postun for java/qt subpackages.

    * Sun Apr 15 2007 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.3-16
    - Remove %%ghosting pyc/pyo.

    * Wed Apr 04 2007 Paulo Roma <roma@lcg.ufrj.br> - 5.0.3-15
    - Update to 5.0.4.
    - Added support for qt4 plugin.

    * Wed Feb  7 2007 Orion Poplawski <orion@cora.nwra.com> - 5.0.2-14
    - Enable Java, Qt, GL2PS, OSMESA

    * Mon Sep 11 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.2-13
    - Update to 5.0.2.

    * Sun Aug  6 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.1-12
    - cmake needs to be >= 2.0.4.

    * Fri Aug  4 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.1-11
    - Fix some python issues including pyo management.

    * Sun Jul 23 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.1-10
    - Embed feedback from bug 199405 comment 5.
    - Fix some Group entries.
    - Remove redundant dependencies.
    - Use system libs.
    - Comment specfile more.
    - Change buildroot handling with CMAKE_INSTALL_PREFIX.
    - Enable qt designer plugin.

    * Wed Jul 19 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.1-7
    - Fix some permissions for rpmlint and debuginfo.

    * Sun Jul 16 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.1-7
    - Remove rpath and some further rpmlint warnings.

    * Thu Jul 13 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 5.0.1-6
    - Update to 5.0.1.

    * Wed May 31 2006 Axel Thimm <Axel.Thimm@ATrpms.net>
    - Update to 5.0.

    * Mon Apr 04 2004 Intrinsic Spin <spin@freakbait.com> 2.mr
    - built on a machine with a stock libGL.so

    * Sun Apr 04 2004 Intrinsic Spin <spin@freakbait.com>
    - little cleanups
    - Built for FC1

    * Sun Jan 11 2004 Intrinsic Spin <spin@freakbait.com>
    - Built against a reasonably good (according to dashboard) CVS version so-as
    to get GL2PS support.
    - Rearranged. Cleaned up. Added some comments.

    * Sat Jan 10 2004 Intrinsic Spin <spin@freakbait.com>
    - Blatently stole this spec file for my own nefarious purposes.
    - Removed Java (for now). Merged the Python and Tcl stuff into
    the main rpm.

    * Fri Dec 05 2003 Fabrice Bellet <Fabrice.Bellet@creatis.insa-lyon.fr>
    - (See Fabrice's RPMs for any more comments --Spin)

    It appeared that vtk installed correctly.  What can I do to get octaviz to install?  If there is more info that I need to provide, please let me know and I will post it.

    TIA,
    Bruce

     
    • Jonathan Stickel

      Sorry I missed this post.  Maybe a more recent version of CMake would help.  Please post an updated status if you are still having trouble.

      Jonathan

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.