Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make vstart work with cmake out of tree builds #5457

Merged
merged 8 commits into from
Aug 11, 2015
Merged

Conversation

jcsp
Copy link
Contributor

@jcsp jcsp commented Aug 3, 2015

No description provided.

@jcsp jcsp changed the title Make vstart with with cmake out of tree builds Make vstart work with cmake out of tree builds Aug 4, 2015
@jcsp
Copy link
Contributor Author

jcsp commented Aug 4, 2015

I pushed updates to fix that first failure from loic-bot (it hasn't rebuilt though?). It's building on gitbuilders though.

@jcsp
Copy link
Contributor Author

jcsp commented Aug 4, 2015

@tchaikov since you were interested in the last cmake PR I wonder if you would have time to review this one too?

@jcsp
Copy link
Contributor Author

jcsp commented Aug 4, 2015

oops, never mind, you already commented on one of the commits here

@tchaikov tchaikov self-assigned this Aug 4, 2015
@tchaikov
Copy link
Contributor

tchaikov commented Aug 6, 2015

@jcsp i ran into this problem:

~/dev/ceph/build|wip-5457|$ ../src/vstart.sh -n -l -x
ip 127.0.0.1
port

NOTE: hostname resolves to loopback; remote hosts will not be able to
  connect.  either adjust /etc/hosts, or edit this script to use your
  machine's real IP.

creating /home/kefu/dev/ceph/build/keyring
src/monmaptool --create --clobber --add a 127.0.0.1:6789 --add b 127.0.0.1:6790 --add c 127.0.0.1:6791 --print /tmp/ceph_monmap.24003
src/monmaptool: monmap file /tmp/ceph_monmap.24003
src/monmaptool: generated fsid 073f9a7e-5753-4abd-abcc-58b48e8dab9e
epoch 0
fsid 073f9a7e-5753-4abd-abcc-58b48e8dab9e
last_changed 2015-08-07 00:30:09.651407
created 2015-08-07 00:30:09.651407
0: 127.0.0.1:6789/0 mon.a
1: 127.0.0.1:6790/0 mon.b
2: 127.0.0.1:6791/0 mon.c
src/monmaptool: writing epoch 0 to /tmp/ceph_monmap.24003 (3 monitors)
rm -rf /home/kefu/dev/ceph/build/dev/mon.a
mkdir -p /home/kefu/dev/ceph/build/dev/mon.a
src/ceph-mon --mkfs -c /home/kefu/dev/ceph/build/ceph.conf -i a --monmap=/tmp/ceph_monmap.24003 --keyring=/home/kefu/dev/ceph/build/keyring
src/ceph-mon: set fsid to b1329fb4-c6d5-43cb-852e-cd63e18ebc95
src/ceph-mon: created monfs at /home/kefu/dev/ceph/build/dev/mon.a for mon.a
rm -rf /home/kefu/dev/ceph/build/dev/mon.b
mkdir -p /home/kefu/dev/ceph/build/dev/mon.b
src/ceph-mon --mkfs -c /home/kefu/dev/ceph/build/ceph.conf -i b --monmap=/tmp/ceph_monmap.24003 --keyring=/home/kefu/dev/ceph/build/keyring
src/ceph-mon: set fsid to b1329fb4-c6d5-43cb-852e-cd63e18ebc95
src/ceph-mon: created monfs at /home/kefu/dev/ceph/build/dev/mon.b for mon.b
rm -rf /home/kefu/dev/ceph/build/dev/mon.c
mkdir -p /home/kefu/dev/ceph/build/dev/mon.c
src/ceph-mon --mkfs -c /home/kefu/dev/ceph/build/ceph.conf -i c --monmap=/tmp/ceph_monmap.24003 --keyring=/home/kefu/dev/ceph/build/keyring
src/ceph-mon: set fsid to b1329fb4-c6d5-43cb-852e-cd63e18ebc95
src/ceph-mon: created monfs at /home/kefu/dev/ceph/build/dev/mon.c for mon.c
src/ceph-mon -i a -c /home/kefu/dev/ceph/build/ceph.conf
2015-08-07 00:30:10.357238 7f1acf08b7c0 -1 load: jerasure load: lrc load dlopen(./ec_plugins/libec_isa.so): ./ec_plugins/libec_isa.so: cannot open shared object file: No such file or directory

did you have the same issue here or how did you work around it?

@oritwas
Copy link
Member

oritwas commented Aug 6, 2015

I posted a fix to build isa with cmake #5500 and
you also need this commit to copy the isa libs
oritwas@ed2fdd9

# Gather symlinks to EC plugins in one dir, because with CMake they
# are built into multiple locations
mkdir -p ec_plugins
for file in ./src/erasure-code/jerasure/*.so* src/erasure-code/lrc/*.so*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jcsp

can we simply put:

for file in src/erasure-code/*/libec_*.so*;

instead of enumerating all the erasure plugin directories?

since, with the fix (oritwas@ed2fdd9) by @oritwas and probably future erasure plugins, we need always keep this file in sync.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, sounds sensible -- done.

@tchaikov
Copy link
Contributor

tchaikov commented Aug 7, 2015

@oritwas thanks, vstart.sh works fine now!

John Spray added 8 commits August 10, 2015 14:05
...instead of in src/test/dencoder.

While the source lives in test/, the dencoder tool is built
and distributed as a first class binary, so it's awkward for
paths in dev/test to have it in a unique location.

Signed-off-by: John Spray <john.spray@redhat.com>
Scripts expect the generated init-ceph script
to be +x, and CMake does that if the file you
feed into it is +x.  This matches what we already
do with ceph.in.

Signed-off-by: John Spray <john.spray@redhat.com>
Avoid need for separate ceph.in and ceph.in.cmake files.

Signed-off-by: John Spray <john.spray@redhat.com>
A little bit more of a tongue-twisting command line
to do string replacement, but saves us from having
separate ceph.in files for cmake vs autotools.

Signed-off-by: John Spray <john.spray@redhat.com>
...for working with out-of-tree builds.

Signed-off-by: John Spray <john.spray@redhat.com>
Signed-off-by: John Spray <john.spray@redhat.com>
a la what we currently do for PYTHONPATH
and LD_LIBRARY_PATH, but for cmake out
of tree builds.

Signed-off-by: John Spray <john.spray@redhat.com>
...for the benefit of rbd.

Signed-off-by: John Spray <john.spray@redhat.com>
@jcsp
Copy link
Contributor Author

jcsp commented Aug 11, 2015

ping @oritwas @tchaikov, is this working okay for folks now?

@tchaikov
Copy link
Contributor

@jcsp it looks great! will give it a spin.

@oritwas
Copy link
Member

oritwas commented Aug 11, 2015

works , thanks

tchaikov added a commit that referenced this pull request Aug 11, 2015
Make vstart work with cmake out of tree builds

Reviewed-by: Kefu Chai <kchai@redhat.com>
@tchaikov tchaikov merged commit 55b3490 into master Aug 11, 2015
@tchaikov tchaikov deleted the wip-cmake-vstart branch August 11, 2015 12:49
@tchaikov
Copy link
Contributor

works for me also. thanks.

tchaikov referenced this pull request Aug 25, 2015
Signed-off-by: Ali Maredia <amaredia@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants