compile "mpi" charm++ on amd64

From: Xiaoqing Wang (namdwxq_at_126.com)
Date: Mon May 09 2005 - 22:09:32 CDT

Dear all,

  I compiled charm-5.8 on amd64 with command
"./build charm++ mpi-linux opteron". But it failed to compile charm++
shared library. The problem maybe arised from my "libmpich.a". How can
I solve this problem?
  The compile logfile is as follows
---------------------------------------------------------------
[xqwang_at_master charm-5.8]$ ./build charm++ mpi-linux opteron
Selected Compiler:
Selected Options: opteron
Creating dir: mpi-linux-opteron
Creating dir: mpi-linux-opteron/tmp
Copying src/scripts/Makefile to mpi-linux-opteron/tmp
Soft-linking over bin
Soft-linking over lib
Soft-linking over lib_so
Soft-linking over include
Soft-linking over tmp
Generating mpi-linux-opteron/tmp/conv-mach-pre.sh
Generating mpi-linux-opteron/tmp/conv-mach-opt.h, conv-mach-opt.sh
Performing 'make charm++ OPTS=' in mpi-linux-opteron/tmp
rm -f .gdir
(cd .. ; basename "`pwd`" | sed -e 's_at_-.*@@') > .gdir
pwd
/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp
find . -type l -exec rm {} \;
rm -rf QuickThreads
rm -rf libs
rm -rf ../bin ; mkdir ../bin
rm -rf ../lib ; mkdir ../lib
rm -rf ../lib_so ; mkdir ../lib_so; touch ../lib_so/.charmso
rm -rf ../pgms
rm -rf ../doc ; ln -s ../doc ../doc
../../src/scripts/gatherflat ../../src/scripts .
./gatherflat ../../src/conv-core .
./gatherflat ../../src/conv-ldb .
./gatherflat ../../src/conv-ccs .
./gatherflat ../../src/conv-perf .
./gatherflat ../../src/ck-core .
./gatherflat ../../src/util .
./gatherflat ../../src/ck-perf .
./gatherflat ../../src/ck-ldb .
./gatherflat ../../src/langs/simplemsg .
./gatherflat ../../src/langs/pvmc .
./gatherflat ../../src/langs/bluegene .
./gatherflat ../../src/langs/f90charm .
./gatherflat ../../src/xlat-i .
./gatherflat ../../src/xlatcpm .
./gathertree ../../src/QuickThreads QuickThreads
./gathertree ../../src/libs libs
./gathertree ../../src/arch/util .
./gathertree ../../src/langs langs
./gathertree ../../src/arch/common .
./gathertree ../../src/arch/`cat .gdir` .
./gatherflat ../../src/arch/`cat .vdir` .
./gathertree ../../pgms ../pgms
rm -f ../bin/dep.pl ; cp dep.pl ../bin/
chmod +x charmc
./system_ln ../tmp/charmc ../bin/
./system_ln ../../java/bin charmjavabin
./system_ln ../../java/bin ../bin/charmjavabin
./system_ln charmjavabin/* ../bin/
./system_ln ../java ..
rm -f .gdir
rm -rf ../include ; mkdir ../include
./system_ln ../tmp/conv-*.*h ../include
./system_ln ../tmp/cc-*.*h ../include
if [ ! -f conv-common.h ] ; then ( touch conv-common.h ) ; fi
touch dirs+sources
make headerlinks
make[1]: Entering directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
./configure
checking machine name... mpi-linux-opteron
set C++ compiler as: mpiCC -fPIC
checking "whether C++ compiler works"... "ok"
checking "whether C++ bool works"... "ok"
checking "whether long long works"... "ok"
checking "whether __int64 works"... "no"
checking "whether long double works"... "ok"
checking "whether C++ class explicit keyword works"... "ok"
checking "whether C++ signed char and char differ"... "yes"
checking "whether C++ *_casts<> work"... "ok"
checking "whether templated member functions work"... "ok"
checking "whether including STL <foo> works"... "ok"
checking "whether the std:: names for STL work"... "ok"
checking "whether namespaces work"... "ok"
checking "whether typeinfo/typeid works"... "ok"
checking "whether operator delete can be overloaded in same class"...
"ok"
checking "whether GCC x86 assembly works"... "yes"
checking "whether GCC IA64 assembly works"... "no"
checking "whether the poll() syscall exists"... "yes"
checking "whether to use signal-safe system() "... "yes"
checking "whether dlopen links without -ldl"... "no"
checking "whether dlopen links with -ldl"... "yes"
checking "whether getProcAddress works"... "no"
checking "whether it has socklen_t"... "yes"
checking "whether the mmap() syscall exists"... "yes"
checking "whether mmap() accepts MAP_ANON"... "yes"
checking "whether glibc backtrace works"... "yes"
checking "whether it has zlib"... "yes"
checking "whether has values.h "... "yes"
checking "whether has elf.h "... "yes"
checking "whether has stdint.h "... "yes"
checking "whether PAPI exists"... "no"
checking "whether it can build shared library"... "yes"
checking subroutine name used by Fortran compiler... ALLCAPS
configure: creating ./config.status
config.status: creating conv-autoconfig.h
../bin/charmc -host xi-main.C
../bin/charmc -host xi-symbol.C
../bin/charmc -host xi-grammar.tab.C
../bin/charmc -host -I. -DYY_NEVER_INTERACTIVE xi-scan.C
../bin/charmc -host xi-util.C
../bin/charmc -host -c sdag-globals.C
../bin/charmc -host -c CSdagConstruct.C
../bin/charmc -host -c CEntry.C
../bin/charmc -host -language c++ -cp ../bin/ -o charmxi xi-main.o
xi-symbol.o xi-grammar.tab.o xi-scan.o xi-util.o sdag-globals.o
CSdagConstruct.o CEntry.o
../bin/charmc -intrinsic ckcallback.ci
../bin/charmc -intrinsic ckmarshall.ci
../bin/charmc -intrinsic ckarray.ci
../bin/charmc -intrinsic cklocation.ci
../bin/charmc -intrinsic ckreduction.ci
../bin/charmc -intrinsic ckarrayreductionmgr.ci
../bin/charmc -intrinsic tempo.ci
../bin/charmc -intrinsic waitqd.ci
../bin/charmc -intrinsic ckfutures.ci
../bin/charmc -intrinsic ckcheckpoint.ci
../bin/charmc -intrinsic ckmemcheckpoint.ci
../bin/charmc -intrinsic LBDatabase.ci
../bin/charmc -intrinsic CentralLB.ci
../bin/charmc -intrinsic ComboCentLB.ci
../bin/charmc -intrinsic NullLB.ci
../bin/charmc -intrinsic RandCentLB.ci
../bin/charmc -intrinsic RecBisectBfLB.ci
../bin/charmc -intrinsic BaseLB.ci
../bin/charmc -intrinsic MetisLB.ci
../bin/charmc -intrinsic DummyLB.ci
../bin/charmc -intrinsic RefineLB.ci
../bin/charmc -intrinsic RefineCommLB.ci
../bin/charmc -intrinsic OrbLB.ci
../bin/charmc -intrinsic GreedyLB.ci
../bin/charmc -intrinsic NborBaseLB.ci
../bin/charmc -intrinsic NeighborLB.ci
../bin/charmc -intrinsic NeighborCommLB.ci
../bin/charmc -intrinsic WSLB.ci
../bin/charmc -intrinsic GreedyRefLB.ci
../bin/charmc -intrinsic RandRefLB.ci
../bin/charmc -intrinsic GreedyCommLB.ci
../bin/charmc -intrinsic Comm1LB.ci
../bin/charmc -intrinsic EveryLB.ci
../bin/charmc -intrinsic charisma.ci
../bin/charmc -intrinsic trace-summary.ci
../bin/charmc -intrinsic BlueGene.ci
Soft-linking headers...
touch headerlinks
make[1]: Leaving directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
touch basics
make charm-target
make[1]: Entering directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
make headerlinks
make[2]: Entering directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
make[2]: `headerlinks' is up to date.
make[2]: Leaving directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
touch basics
make QuickThreads/libqt.a
make[2]: Entering directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
cd QuickThreads;./configure
rm -f QuickThreads/libqt.a
cd QuickThreads ; make qt OPTS=''
make[3]: Entering directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp/QuickThreads'
rm -f qtmd.h
../system_ln md/setjmp_d.h qtmd.h
../../bin/charmc -seq -I. -c -o qt.o qt.c
../../bin/charmc -seq -I. -c -o qtmds.o md/setjmp64.c
md/setjmp64.c: In function `qt_args_1':
md/setjmp64.c:53: warning: passing arg 1 of `longjmp' from incompatible
pointer type
md/setjmp64.c: In function `qt_block':
md/setjmp64.c:88: warning: passing arg 1 of `longjmp' from incompatible
pointer type
md/setjmp64.c: In function `qt_abort':
md/setjmp64.c:101: warning: passing arg 1 of `longjmp' from incompatible
pointer type
ar q libqt.a qt.o qtmds.o
ar: creating libqt.a
../../bin/charmc -seq -I. -shared -o libqt.so qt.o qtmds.o
Warning: creating libqt.so
make[3]: Leaving directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp/QuickThreads'
cp QuickThreads/libqt.a ../lib/libckqt.a
(CHARMINC=.; . ./conv-config.sh; \
  test -d ../lib_so && \
  cp QuickThreads/libqt.$CMK_SHARED_SUF ../lib_so && \
  cp QuickThreads/libqt.$CMK_SHARED_SUF
../lib_so/libckqt.$CMK_SHARED_SUF)
make[2]: Leaving directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
make converse-target
make[2]: Entering directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
../bin/charmc -c -I. convcore.c
../bin/charmc -c -I. conv-conds.c
../bin/charmc -c -I. queueing.c
../bin/charmc -c -I. msgmgr.c
../bin/charmc -c -I. cpm.c
../bin/charmc -c -I. cpthreads.c
cpthreads.c: In function `Cpthread_start_main':
cpthreads.c:608: warning: cast to pointer from integer of different size
../bin/charmc -c -I. futures.c
../bin/charmc -c -I. cldb.c
../bin/charmc -c -I. topology.C
../bin/charmc -c -I. random.c
../bin/charmc -c -I. debug-conv.c
../bin/charmc -c -I. generate.c
../bin/charmc -c -I. edgelist.c
../bin/charmc -c -I. conv-ccs.c
../bin/charmc -c -I. ccs-builtins.C
../bin/charmc -c -I. traceCore.C
../bin/charmc -c -I. traceCoreCommon.C
../bin/charmc -c -I. converseProjections.C
../bin/charmc -c -I. machineProjections.C
../bin/charmc -c -I. quiescence.c
../bin/charmc -c -I. isomalloc.c
../bin/charmc -c -I. global-nop.c
../bin/charmc -o ../lib/libconv-core.a convcore.o conv-conds.o
queueing.o msgmgr.o cpm.o cpthreads.o futures.o cldb.o topology.o
random.o debug-conv.o generate.o edgelist.o conv-ccs.o ccs-builtins.o
traceCore.o traceCoreCommon.o converseProjections.o machineProjections.o
quiescence.o isomalloc.o global-nop.o
Warning: creating ../lib_so/libconv-core.so
ar: creating ../lib/libconv-core.a
../bin/charmc -o ../lib/libconv-cplus-y.a -DFOR_CPLUS=1 machine.c
machine.c: In function `CmiAsyncBroadcastFn':
machine.c:914: warning: cast to pointer from integer of different size
machine.c: In function `CmiAsyncBroadcastAllFn':
machine.c:957: warning: cast to pointer from integer of different size
Warning: creating ../lib_so/libconv-cplus-y.so
/usr/bin/ld: /usr/local/mpich_pg/lib/libmpich.a(isend.o): relocation
R_X86_64_32 can not be used when making a shared object; recompile with
-fPIC
/usr/local/mpich_pg/lib/libmpich.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! Failed to compile Charm++ shared library !!
!! compile Charm++ again with -no-build-shared option !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Fatal Error by charmc in directory
/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp
   Command mpicc -rdynamic -o ../lib_so/libconv-cplus-y.so
-shared
-L/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/lib_so
machine.o returned error code 1
charmc exiting...
make[2]: *** [../lib/libconv-cplus-n.a] Error 1
make[2]: Leaving directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
make[1]: *** [converse] Error 2
make[1]: Leaving directory
`/home/xqwang/namd/NAMD_2.5_Source/charm-5.8/mpi-linux-opteron/tmp'
make: *** [charm++] Error 2
-------------------------------------------------
Charm++ NOT BUILT. Either cd into mpi-linux-opteron/tmp and try
to resolve the problems yourself, visit
    http://charm.cs.uiuc.edu/
for more information. Otherwise, email the developers at ppl_at_cs.uiuc.edu

This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 15:40:44 CST