[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

libtool, pgc++, and -nostdlib

From: Jonathan Perkins
Subject: libtool, pgc++, and -nostdlib
Date: Wed, 17 Jul 2013 16:13:11 -0400
User-agent: Mutt/1.5.21 (2010-09-15)

Hi all.  We found that the C++ compiler from PGI does not handle some of
the GNU options that libtool tries to use with it.

Our solution has been to make PGI turn their unknown switch errors into
warnings.  However this requires the users of our software to take
action and modify their installations.  I'm now looking for a "better"
or more correct solution.

What is the proper way to have libtool replace -nostdlib with
-Mnostdlib?  There may be other flags that need to be dropped, added, or
modified as well.

So far from looking at libtool.m4 it looks like we'll need to add an if
statement for setting ``archve_cmds'' and ``archive_expsym_cmds''
depending on whether pgc++ is used.  I'm not very certain if this is the
right direction or not.

For reference, we're using libtool 2.4.2.  Please let me know if you
need any further information.  Thanks.

make[2]: Entering directory `/tmp/perkinjo/mvapich2-1.9'
/bin/sh ./libtool  --tag=CXX   --mode=link pgc++  -DNDEBUG -DNVALGRIND 
-version-info 10:3:0 -L/usr/local/cuda/lib64 -L/usr/local/cuda/lib -L/lib 
-L/lib   -L/lib -Wl,-rpath,/lib -L/lib -Wl,-rpath,/lib -L/lib -L/lib -o 
lib/ -rpath /tmp/perkinjo/mvapich2-1.9/install/lib 
src/binding/cxx/initcxx.lo  -lcudart -lcuda -lrdmacm -libumad -libverbs -ldl 
-lrt -lpthread  
libtool: link: pgc++  -fPIC -DPIC -shared -nostdlib /usr/lib64/crti.o 
/opt/pgi/linux86-64/13.6/libso/initmp.o  src/binding/cxx/.libs/initcxx.o   
-L/usr/local/cuda/lib64 -L/usr/local/cuda/lib -L/lib -lcudart -lcuda -lrdmacm 
-libumad -libverbs -ldl -lrt -L/opt/pgi/linux86-64/13.6/libso 
-L/opt/pgi/linux86-64/13.6/lib -L/usr/lib64 
-L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -lpgatm -lgcc_s -lstdc++ -lpgmp -lnuma 
-lpthread -lnspgc -lpgc -lm -lc -lgcc 
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtendS.o /usr/lib64/crtn.o  -Wl,-rpath 
-Wl,/lib -Wl,-rpath -Wl,/lib   -Wl,-soname -Wl, -o 
pgc++-Error-Unknown switch: -nostdlib
make[2]: *** [lib/] Error 1

Jonathan Perkins

reply via email to

[Prev in Thread] Current Thread [Next in Thread]