Netgen 5.1 fail to run on Debian : invalid command name "Ng_STLDoctor"

2013-09-19
2013-10-21
  • Hi,
    I'm trying to update Debian package to latest release.
    While I manage to build the package I end up with an error
    when trying to run netgen (-V option):

    NETGEN-5.1
    Developed by Joachim Schoeberl at
    2010-xxxx Vienna University of Technology
    2006-2010 RWTH Aachen University
    1996-2006 Johannes Kepler University Linz
    optfile ./ng.opt does not exist - using default values
    Error in Tcl-Script:
    result = invalid command name "Ng_STLDoctor"

    Make sure to set environment variable NETGENDIR to directory containing
    ng.tcl

    The NETGENDIR actually points to /usr/share/netgen where are locate the
    newest tcl files.

    A simple "grep -r Ng_STLDoctor" in the source tarball gives me:
    libsrc/stlgeom/stlpkg.cpp
    ng/ng.tcl
    ng/dialog.tcl

    Ng_STLDoctor is not defined in ng/ngpkg.cpp (even as a "fake" routine"
    as mentionned in a previous discussion about 5.0) as it should be I
    guess.

    Moreover Ng_STLDoctor is defined in "libstlvis.la" which is not linked
    with netgen executable?

    Could you please tell me how to work around this issue?
    Best regards

    C

    Christophe TROPHIME
    Research Engineer

    LNCMI
    CNRS - LNCMI
    25, rue des Martyrs
    BP 166
    38042 GRENOBLE Cedex 9
    FRANCE
    CNRS

    Tel : +33 (0)4 76 88 90 02
    Fax : +33 (0) 4 76 88 10 01
    Office U 19
    M@il : christophe.trophime@lncmi.cnrs.fr


     
  • Hi Christophe,

    thanks for taking care of the debian netgen package !

    Now, most of the staff related to certain geometries (STL, OCC, CSG) is moved to the corresponding directories / shared libraries.
    So, the Ng_STLDoctor C - function is now in libsrc/stl/stlpkg.cpp
    It goes into an own shared library.

    libstl.so ... contains pure c++ code
    libstlvis.so ... contains the additional opengl visualization + gui functionality

    Best,
    Joachim

     
  • boy007
    boy007
    2013-10-21

    I got 5.1 working as earlyer,... even old bug exist,..
    Fatal error in MPI_Bsend: Invalid buffer pointer

    Below is my compilation script, I use self made (compiled)
    metis, parmetis , mpich3 and BLAS is from AMD,...

    =====

    !/bin/bash

    JPK-Integration for Ubuntu 12.4 LTS

    https://sites.google.com/site/jpsdatareviewstheboy007/ubuntu-lts-12-4-companion-whit-ltsp-mpich2-elmer-openfoam

    source $JPK_MPI_DIR/B3/flag

    export LDFLAGS="-L/usr/lib -L/lib/x86_64-linux-gnu -ldl -lm -lpthread -L/usr/lib/x86_64-linux-gnu -lX11 -lXtst -lltdl -lgomp -lgfortran -L$JPK_MPICH2/lib -lmpich -lmpichf90 -lmpichcxx -lopa -lmpl -L$BLAS32/lib -lacml_mp -L$JPK_LMETISDIR5/lib -lparmetis -lmetis"

    export LDFLAGS="-L$JPK_MPICH2/lib -lmpich -lmpichf90 -lmpichcxx -lopa -lmpl -L$BLAS32/lib -lacml_mp -L$JPK_LMETISDIR5/lib -lparmetis -lmetis"

    export LIBS="-lm -ldl -lpthread -lltdl -lgomp -lgfortran -lparmetis "

    export CPPFLAGS="-I$JPK_MPICH2/include -I$JPK_LMETISDIR5/include $CPPFLAGS"

    export CFLAGS="$CFLAGS -D_OCC64 -I$JPK_MPICH2/include -I$JPK_LMETISDIR5/include -I/usr/include/oce -I/usr/include/opencascade/ -Wl,-r/usr/lib/x86_64-linux-gnu -Wl,-r/usr/lib"

    export MPICH2LIB_CFLAGS="$LDFLAGS"

    CLEAN

    if [ "$1" == "c" ]; then
    cd /$JPK_NETGEN_S
    make distclean
    fi
    ./
    echo "N E T G E N"

    cd "$JPK_NETGEN_S"

    ./configure --prefix=$JPK_NETGEN --enable-occ --enable-jpeglib --enable-ffmpeg --enable-parallel=yes --with-metis=$JPK_LMETISDIR5

    --enable-parallel=yes --with-metis=$JPK_LMETISDIR/lib --enable-jpeglib --enable-ffmpeg --with-gnu-ld

    make
    make install

    JPK-integration end

    cd $JPK_MPI_DIR