stuck with problem making tpp

81 views
Skip to first unread message

Malcolm Cook

unread,
Jun 8, 2022, 12:02:28 AM6/8/22
to spctools-discuss
Hi,

I am following &  adapting TPP 6.1.0: Installing on Ubuntu 20.04 LTS  for our centos 7 environment.

Here are some notes and problems I've encountered so far.

I am building as non privileged user, proceeding as follows:

# create environment for building
export LD_LIBRARY_PATH=/usr/lib64:${LD_LIBRARY_PATH} ## for {libc,libm,libpthreads} else error: "ld: cannot find -lc"

source /opt/rh/devtoolset-9/enable  # enable RED HAT DEVELOPER TOOLSET 9.1

I am compiling with:

make info
ARCH = x86_64
VENDOR = redhat
SYSTEM = linux
    OS = Linux

TPP_VERSION = 6.1.0
TPP_RELEASE = Parhelion
TPP_BUILDID = TPP v6.1.0 Parhelion, Build 202206071204-exported (Linux-x86_64)

    SRC_DIR = /n/sci/SCI-004255-ZFPROT/tpp/svn/trans_proteomic_pipeline
  BUILD_DIR = /n/sci/SCI-004255-ZFPROT/tpp/svn/trans_proteomic_pipeline/build/linux-x86_64-release
INSTALL_DIR = /usr/local/tpp

   TPP_HOME = /usr/local/tpp
TPP_DATADIR = /data/tpp
TPP_BASEURL = /tpp
TPP_DATAURL = /tpp/data

 MZ5_SUPPORT is not enabled


I found as advised that I had to call `make all` many times....

The first time created some directories and touch some files and them terminated with error:

make: *** No rule to make target '/n/sci/SCI-004255-ZFPROT/tpp/release_6-1-0/build/linux-x86_64-release/html/', needed by 'd3'.  Stop.

The second time halted without an error without compiling anything, finally printing:

### ...done unpacking Boost source

The 3rd through 6th time compile successively more,  though it produced a few warnings which were proceeded past, each of the form:

/bin/sh ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I..    -g -O2 -MT rowcol.lo -MD -MP -MF .deps/rowcol.Tpo -c -o rowcol.lo rowcol.c
warning: On gcc, DLLs can not be built with '<runtime-link>static'.
warning: It is suggested to use '<runtime-link>static' together with '<link>static'.

The 7th time terminated with error:

/bin/sh ./libtool --silent --mode=link gcc -I./lib -I. -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions  -DHAVE_EXPAT_CONFIG_H -no-undefined -version-info 6:2:5 -rpath /n/sci/SCI-004255-ZFPROT/tpp/release_6-1-0/build/linux-x86_64-release/lib  -o libexpat.la lib/xmlparse.lo lib/xmltok.lo lib/xmlrole.lo
libtool: link: `lib/xmlparse.lo' is not a valid libtool object

I called make an 8th time, this time as `make -k all` to "keep going" past errors and build as many targets as possible.  Many more programs were compiled successfully, though a few additional errors were picked up:

/bin/sh ../libtool --mode=link gcc -D_REENTRANT -g -O2 -version-info 2:0:0  -o libfloatfann.la -rpath /n/sci/SCI-004255-ZFPROT/tpp/release_6-1-0/build/linux-x86_64-release/lib  floatfann.lo  
libtool: link: `floatfann.lo' is not a valid libtool object

I'd be much obliged if anyone with more experience with tpp and gcc could comment or make any suggestions on moving forward with how to address any of the above errors.

Thanks,

Malcolm 

David Shteynberg

unread,
Jun 8, 2022, 9:12:08 AM6/8/22
to spctools-discuss
Dear Malcolm,

Sorry you are having trouble building the TPP on centos 7.  There are many ways you can use the TPP both on the cloud and locally in virtual machines which would not require you to build the tools from source.  Nevertheless, the latest release of the TPP has been updated to the c++14 standard yet older versions of gcc don't support this standard, which might be causing you problems.  Can you verify that your version of gcc supports c++14?

Thank you,
-David


--
You received this message because you are subscribed to the Google Groups "spctools-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to spctools-discu...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/spctools-discuss/2c3b135e-3282-43eb-be81-6f89370ae1bcn%40googlegroups.com.

David Shteynberg

unread,
Jun 8, 2022, 9:21:28 AM6/8/22
to spctools-discuss
Also, I wouldn't recommend using make -k because then you get errors with linking of the sort you are seeing because prerequisite dependencies are not being built properly so downstream linking of applications to dependencies fails.

Can you send the actual errors that are generated when you run make all for the first time on a fresh source tree as those are likely to hold additional clues?  Also if you are able to provide access to the machine, or a cloud machine with the same configuration and compilation problem, so I can log in that would help me troubleshoot the issue.

Thanks!
-David

On Tue, Jun 7, 2022 at 9:02 PM Malcolm Cook <malcol...@gmail.com> wrote:
--

Malcolm Cook

unread,
Jun 8, 2022, 12:21:52 PM6/8/22
to spctools-discuss
Hi,

I think I am good as far as gcc version is concerned since I am compiling in an environment where I have enabled newer version using RED HAT DEVELOPER TOOLSET 9.1 - but to confirm...

gcc --version reports:
gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2)

According to  C++14 Support in GCC 
GCC has full support for the of the 2014 C++ standard.
This mode is the default in GCC 6.1 up until GCC 10 (including); it can be explicitly selected with the -std=c++14 command-line flag, or -std=gnu++14 to enable GNU extensions as well.

So I think this confirms it.

Malcolm Cook

unread,
Jun 8, 2022, 4:44:46 PM6/8/22
to spctools-discuss
I agree with you re using -k.  I only did it after make was terminating with an error in order to try and reveal any more errors.  But I appreciate the hazards in so doing.  Thanks for the reminder.

I have now rerun `make all` to completion without error.  I now believe the compile errors stemmed from my previously trying to perform a parallel build with `-j 6`

Thanks for coming to my assistance.  I do have a new problem but I'll raise that in a new email.

~Malcolm


Following are a few notes that might be useful to the next centos 7 installer:

# libs for centos7 
sudo yum install -y gd-devel
sudo yum install -y libpng-devel
sudo yum install -y bzip2-devel
sudo yum install -y subversion
sudo yum install -y build-essential
sudo yum install -y perl
sudo yum install -y zlib-devel
sudo yum install -y libghc-bzlib-devel
sudo yum install -y gnuplot
sudo yum install -y unzip
sudo yum install -y expat
sudo yum install -y expat-devel #-devel
sudo yum install -y libgd-devel
sudo yum install -y r-base

## extra libs not mentioned in Ubuntu recipe or BUILD_LINUX
sudo yum install -y devtoolset-9 # use newer build chain
sudo yum install -y glibc-devel
sudo yum install -y glibc-static # without which `g++ Comet.o -o comet.exe -static ...` (and others) fail with "cannot find {-lpthread,-lm,-lc} "
sudo yum install -y fann-devel

## more libs from taken from release_6-1-0/installer_linux/install-prerequisites-centos-5_2.sh - unclear if actually needed in centos 7 but hey
sudo yum install -y mcrypt
sudo yum install -y swig

## you will want to make in an environment with: 
export LD_LIBRARY_PATH=/usr/lib64:${LD_LIBRARY_PATH} ## for libc and libm else error: "/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: cannot find -lc"
source /opt/rh/devtoolset-9/enable  # use newer build chain
 
# make install should presumably be called by root
sudo make install

# need to pipe yes into the build of XML::Twig
yes | sudo cpan install XML::Twig

restarting apache is performed with `sudo apachectl restart`
Reply all
Reply to author
Forward
0 new messages