Project

General

Profile

Actions

Bug #15663

closed

build failed on ppc ubuntu

Added by min fang almost 8 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

my kernel version is:
Linux redpower-ceph-01 4.2.0-16-generic #19-Ubuntu SMP Thu Oct 8 14:49:47 UTC 2015 ppc64le ppc64le ppc64le GNU/Linux

I cloned the ceph master branch to my local machine on 4/29

run make -j20 and see the following errors:

Compiling rados.pyx because it changed.
[1/1] Cythonizing rados.pyx
/usr/bin/ld: cannot find -lcurl
running build
running build_ext
building 'rados' extension
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min/clone
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min/clone/ceph
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min/clone/ceph/src
creating /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min/clone/ceph/src/build
gcc -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -iquote /home/min/clone/ceph/src/include -Wall -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith -Werror=format-security -fno-strict-aliasing -fsigned-char -rdynamic -O2 -g -pipe -Wall -Wp,-U_FORTIFY_SOURCE -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -fPIE -fstack-protector-strong -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -I/usr/include/python2.7 -I/usr/include/powerpc64le-linux-gnu/python2.7 -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -iquote /home/min/clone/ceph/src/include -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -D_GNU_SOURCE -DCEPH_LIBDIR=/usr/local/lib -DCEPH_PKGLIBDIR=/usr/local/lib/ceph -DGTEST_USE_OWN_TR1_TUPLE=0 -D_REENTRANT -fPIC -I/usr/include/python2.7 -c /home/min/clone/ceph/src/build/rados.c -o /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min/clone/ceph/src/build/rados.o
collect2: error: ld returned 1 exit status
Makefile:15721: recipe for target 'ceph-dencoder' failed
make2: * [ceph-dencoder] Error 1
make2:
Waiting for unfinished jobs....
ar: `u' modifier ignored since `D' is the default (see `U')
creating /home/min/clone/ceph/src/build/lib.linux-ppc64le-2.7
gcc -shared -L/home/min/clone/ceph/src/.libs -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -latomic_ops -L/usr/lib/python2.7/config-powerpc64le-linux-gnu -L/usr/lib -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -iquote /home/min/clone/ceph/src/include -Wall -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith -Werror=format-security -fno-strict-aliasing -fsigned-char -rdynamic -O2 -g -pipe -Wall -Wp,-U_FORTIFY_SOURCE -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -fPIE -fstack-protector-strong -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -I/usr/include/python2.7 -I/usr/include/powerpc64le-linux-gnu/python2.7 -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -iquote /home/min/clone/ceph/src/include -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -D_GNU_SOURCE -DCEPH_LIBDIR=/usr/local/lib -DCEPH_PKGLIBDIR=/usr/local/lib/ceph -DGTEST_USE_OWN_TR1_TUPLE=0 -D_REENTRANT /home/min/clone/ceph/src/build/temp.linux-ppc64le-2.7/home/min/clone/ceph/src/build/rados.o -lrados -o /home/min/clone/ceph/src/build/lib.linux-ppc64le-2.7/rados.so
copying selected object files to avoid basename conflicts...
ar: `u' modifier ignored since `D' is the default (see `U')
make2: Leaving directory '/home/min/clone/ceph/src'
Makefile:30638: recipe for target 'all-recursive' failed
make1:
[all-recursive] Error 1
make1: Leaving directory '/home/min/clone/ceph/src'
Makefile:12519: recipe for target 'all' failed
make: *
[all] Error 2

Actions #1

Updated by min fang almost 8 years ago

install curl4 openssl by apt-get install libcurl4-openssl-dev, but still can see the following errors:

make2: Entering directory '/home/min/clone/ceph/src/java'
make all-am
make3: Entering directory '/home/min/clone/ceph/src/java'
make3: Nothing to be done for 'all-am'.
make3: Leaving directory '/home/min/clone/ceph/src/java'
make2: Leaving directory '/home/min/clone/ceph/src/java'
make2: Entering directory '/home/min/clone/ceph/src'
./make_version -g ./.git_version
if [ -n "$NO_VERSION" ] ; then \
./make_version -g ./.git_version -c ./ceph_ver.h -n ; \
else \
./make_version -g ./.git_version -c ./ceph_ver.h ; \
fi
CXXLD ceph-dencoder
rgw/ceph_dencoder-rgw_dencoder.o:(.toc+0x0): undefined reference to `vtable for RGWZoneGroup'
rgw/ceph_dencoder-rgw_dencoder.o:(.toc+0x8): undefined reference to `vtable for RGWZoneParams'
rgw/ceph_dencoder-rgw_json_enc.o:(.toc+0x28): undefined reference to `vtable for RGWZoneGroup'
rgw/ceph_dencoder-rgw_json_enc.o:(.toc+0x30): undefined reference to `vtable for RGWSystemMetaObj'
collect2: error: ld returned 1 exit status
Makefile:15721: recipe for target 'ceph-dencoder' failed
make2: * [ceph-dencoder] Error 1
make2: Leaving directory '/home/min/clone/ceph/src'
Makefile:30638: recipe for target 'all-recursive' failed
make1:
[all-recursive] Error 1
make1: Leaving directory '/home/min/clone/ceph/src'
Makefile:12519: recipe for target 'all' failed
make: *
* [all] Error 2

vtable undefined reference issues have been reported before, such as http://www.spinics.net/lists/ceph-devel/msg29050.html

following the suggestion, run ./configure with --with-radosgw and install fcgi-devel package.

now the build can pass.

So summary said, there are two bugs in the makefile or the configure:

1) the configure need check libcurl4-openssl-dev and fcgi-devel installed or not if need be used.
2) I do not think it is acceptable that build failed without set --with-radosgw, there must be something wrong in linking rgw.

thanks.

Actions #2

Updated by Greg Farnum almost 7 years ago

  • Status changed from New to Closed

Not sure if this is working right now, but I know we've had PPC fix patches come in so it's building somewhere in the world.
If we ever get lab hardware for it then this'll pop back up right quick, anyway.

Actions

Also available in: Atom PDF