Daniel Jagszent <dan...@jagszent.de> escreveu no dia quinta, 16/07/2020
à(s) 13:01:

> Hello,
>
> [...]
> ImportError: libfuse3.so.3: cannot open shared object file: No such file
> or directory
> [...]
>
>
> Looks like your libfuse installation was not successful. Maybe follow
> https://github.com/libfuse/libfuse#installation more closely (it says
> "meson .." not "meson")
>
> Also insert "set -e" as second line in your install.sh script (see
> https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html#The-Set-Builtin
> for what it does)
>
> --
> You received this message because you are subscribed to the Google Groups
> "s3ql" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to s3ql+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/s3ql/9d672c2b-aab0-291f-21d3-45bb9b2d9871%40jagszent.de
> <https://groups.google.com/d/msgid/s3ql/9d672c2b-aab0-291f-21d3-45bb9b2d9871%40jagszent.de?utm_medium=email&utm_source=footer>
> .
>

Thanks for spotting that mistake... I overlooked it!

The result of the compilation, tests and install of libfuse is this this:

Found ninja-1.8.2 at /usr/bin/ninja
[1/66] Compiling C object 'lib/fuse3@sha/fuse_loop.c.o'.
[2/66] Compiling C object 'lib/fuse3@sha/fuse_signals.c.o'.
[3/66] Compiling C object 'lib/fuse3@sha/fuse_loop_mt.c.o'.
[4/66] Compiling C object 'lib/fuse3@sha/buffer.c.o'.
[5/66] Compiling C object 'lib/fuse3@sha/helper.c.o'.
[6/66] Compiling C object 'lib/fuse3@sha/fuse_opt.c.o'.
[7/66] Compiling C object 'lib/fuse3@sha/cuse_lowlevel.c.o'.
[8/66] Compiling C object 'lib/fuse3@sha/fuse_log.c.o'.
[9/66] Compiling C object 'lib/fuse3@sha/mount_util.c.o'.
[10/66] Compiling C object 'lib/fuse3@sha/mount.c.o'.
[11/66] Compiling C object 'test/test_write_cache@exe/test_write_cache.c.o'.
[12/66] Compiling C object 'lib/fuse3@sha/modules_subdir.c.o'.
[13/66] Generating test_scripts with a custom command.
[14/66] Compiling C object 'lib/fuse3@sha/modules_iconv.c.o'.
[15/66] Compiling C object 'test/wrong_command@exe/wrong_command.c.o'.
[16/66] Linking target test/wrong_command.
[17/66] Compiling C object 'test/test_setattr@exe/test_setattr.c.o'.
[18/66] Compiling C object 'lib/fuse3@sha/fuse_lowlevel.c.o'.
[19/66] Compiling C object 'util/fusermount3@exe/.._lib_mount_util.c.o'.
[20/66] Compiling C object 'util/mount.fuse3@exe/mount.fuse.c.o'.
[21/66] Compiling C object 'example/passthrough@exe/passthrough.c.o'.
[22/66] Compiling C object 'example/hello@exe/hello.c.o'.
[23/66] Compiling C object 'test/test_syscalls@exe/test_syscalls.c.o'.
[24/66] Compiling C object 'util/fusermount3@exe/fusermount.c.o'.
[25/66] Compiling C object 'example/hello_ll@exe/hello_ll.c.o'.
[26/66] Linking target util/fusermount3.
[27/66] Linking target test/test_syscalls.
[28/66] Compiling C object 'example/printcap@exe/printcap.c.o'.
[29/66] Compiling C object 'example/ioctl_client@exe/ioctl_client.c.o'.
[30/66] Compiling C object 'example/poll_client@exe/poll_client.c.o'.
[31/66] Compiling C object 'example/passthrough_fh@exe/passthrough_fh.c.o'.
[32/66] Compiling C object 'example/ioctl@exe/ioctl.c.o'.
[33/66] Compiling C object 'example/cuse_client@exe/cuse_client.c.o'.
[34/66] Compiling C object 'example/cuse@exe/cuse.c.o'.
[35/66] Compiling C object 'example/null@exe/null.c.o'.
[36/66] Compiling C object 'example/notify_inval_inode@exe
/notify_inval_inode.c.o'.
[37/66] Compiling C object 'example/invalidate_path@exe
/invalidate_path.c.o'.
[38/66] Compiling C object 'example/notify_inval_entry@exe
/notify_inval_entry.c.o'.
[39/66] Compiling C object 'lib/fuse3@sha/fuse.c.o'.
[40/66] Compiling C object 'example/notify_store_retrieve@exe
/notify_store_retrieve.c.o'.
[41/66] Compiling C object 'example/poll@exe/poll.c.o'.
[42/66] Linking target lib/libfuse3.so.3.9.2.
[43/66] Compiling C object 'example/passthrough_ll@exe/passthrough_ll.c.o'.
[44/66] Generating symbol file 'lib/fuse3@sha
/lib/libfuse3.so.3.9.2.symbols'.
[45/66] Linking target test/test_setattr.
[46/66] Linking target test/test_write_cache.
[47/66] Linking target example/hello.
[48/66] Linking target example/hello_ll.
[49/66] Linking target example/passthrough.
[50/66] Linking target util/mount.fuse3.
[51/66] Linking target example/passthrough_fh.
[52/66] Linking target example/printcap.
[53/66] Linking target example/poll_client.
[54/66] Linking target example/ioctl_client.
[55/66] Linking target example/ioctl.
[56/66] Linking target example/cuse.
[57/66] Linking target example/null.
[58/66] Linking target example/cuse_client.
[59/66] Linking target example/invalidate_path.
[60/66] Linking target example/notify_inval_inode.
[61/66] Linking target example/passthrough_ll.
[62/66] Linking target example/notify_store_retrieve.
[63/66] Linking target example/poll.
[64/66] Linking target example/notify_inval_entry.
[65/66] Compiling C++ object 'example/passthrough_hp@exe
/passthrough_hp.cc.o'.
[66/66] Linking target example/passthrough_hp.
============================= test session starts
==============================
platform linux -- Python 3.6.9, pytest-5.4.3, py-1.9.0, pluggy-0.13.1 --
/usr/bin/python3
cachedir: .pytest_cache
rootdir: /build_dir/libfuse/build/test, inifile: pytest.ini
collecting ... collected 41 items

test/test_ctests.py::test_write_cache[False] SKIPPED                     [
 2%]
test/test_ctests.py::test_write_cache[True] SKIPPED                      [
 4%]
test/test_ctests.py::test_notify1[True-notify_inval_inode] SKIPPED       [
 7%]
test/test_ctests.py::test_notify1[True-invalidate_path] SKIPPED          [
 9%]
test/test_ctests.py::test_notify1[False-notify_inval_inode] SKIPPED      [
12%]
test/test_ctests.py::test_notify1[False-invalidate_path] SKIPPED         [
14%]
test/test_ctests.py::test_notify_file_size[True] SKIPPED                 [
17%]
test/test_ctests.py::test_notify_file_size[False] SKIPPED                [
19%]
test/test_examples.py::test_hello[hello-options0-invoke_directly] SKIPPED [
21%]
test/test_examples.py::test_hello[hello-options0-invoke_mount_fuse] SKIPPED
[ 24%]
test/test_examples.py::test_hello[hello-options0-invoke_mount_fuse_drop_privileges]
SKIPPED [ 26%]
test/test_examples.py::test_hello[hello-options1-invoke_directly] SKIPPED [
29%]
test/test_examples.py::test_hello[hello-options1-invoke_mount_fuse] SKIPPED
[ 31%]
test/test_examples.py::test_hello[hello-options1-invoke_mount_fuse_drop_privileges]
SKIPPED [ 34%]
test/test_examples.py::test_hello[hello_ll-options0-invoke_directly]
SKIPPED [ 36%]
test/test_examples.py::test_hello[hello_ll-options0-invoke_mount_fuse]
SKIPPED [ 39%]
test/test_examples.py::test_hello[hello_ll-options0-invoke_mount_fuse_drop_privileges]
SKIPPED [ 41%]
test/test_examples.py::test_hello[hello_ll-options1-invoke_directly]
SKIPPED [ 43%]
test/test_examples.py::test_hello[hello_ll-options1-invoke_mount_fuse]
SKIPPED [ 46%]
test/test_examples.py::test_hello[hello_ll-options1-invoke_mount_fuse_drop_privileges]
SKIPPED [ 48%]
test/test_examples.py::test_passthrough[False-passthrough-False] SKIPPED [
51%]
test/test_examples.py::test_passthrough[False-passthrough-True] SKIPPED  [
53%]
test/test_examples.py::test_passthrough[False-passthrough_fh-False] SKIPPED
[ 56%]
test/test_examples.py::test_passthrough[False-passthrough_fh-True] SKIPPED
[ 58%]
test/test_examples.py::test_passthrough[False-passthrough_ll-False] SKIPPED
[ 60%]
test/test_examples.py::test_passthrough[False-passthrough_ll-True] SKIPPED
[ 63%]
test/test_examples.py::test_passthrough[True-passthrough-False] SKIPPED  [
65%]
test/test_examples.py::test_passthrough[True-passthrough-True] SKIPPED   [
68%]
test/test_examples.py::test_passthrough[True-passthrough_fh-False] SKIPPED
[ 70%]
test/test_examples.py::test_passthrough[True-passthrough_fh-True] SKIPPED [
73%]
test/test_examples.py::test_passthrough[True-passthrough_ll-False] SKIPPED
[ 75%]
test/test_examples.py::test_passthrough[True-passthrough_ll-True] SKIPPED [
78%]
test/test_examples.py::test_passthrough_hp[False] SKIPPED                [
80%]
test/test_examples.py::test_passthrough_hp[True] SKIPPED                 [
82%]
test/test_examples.py::test_ioctl SKIPPED                                [
85%]
test/test_examples.py::test_poll SKIPPED                                 [
87%]
test/test_examples.py::test_null SKIPPED                                 [
90%]
test/test_examples.py::test_notify_inval_entry[True] SKIPPED             [
92%]
test/test_examples.py::test_notify_inval_entry[False] SKIPPED            [
95%]
test/test_examples.py::test_cuse SKIPPED                                 [
97%]
test/test_examples.py::test_printcap SKIPPED
[100%]

=========================== short test summary info
============================
SKIPPED [2] test_ctests.py:21: not supported by running kernel
SKIPPED [4] test_ctests.py:42: not supported by running kernel
SKIPPED [2] test_ctests.py:73: not supported by running kernel
SKIPPED [12] test_examples.py:75: FUSE kernel module does not seem to be
loaded
SKIPPED [12] test_examples.py:102: FUSE kernel module does not seem to be
loaded
SKIPPED [2] test_examples.py:174: FUSE kernel module does not seem to be
loaded
SKIPPED [1] test_examples.py:236: not supported by running kernel
SKIPPED [2] test_examples.py: FUSE kernel module does not seem to be loaded
SKIPPED [2] test_examples.py:310: not supported by running kernel
SKIPPED [1] test_examples.py:346: FUSE kernel module does not seem to be
loaded
SKIPPED [1] util.py: FUSE kernel module does not seem to be loaded
============================= 41 skipped in 0.50s
==============================
[0/1] Installing files.
update-rc.d: warning: start and stop actions are no longer supported;
falling back to defaults
update-rc.d: warning: stop runlevel arguments (0 6) do not match fuse3
Default-Stop values (none)
Installing lib/libfuse3.so.3.9.2 to
/usr/local/lib/x86_64-linux-gnu/libfuse3.so.3.9.2
Installing util/fusermount3 to /usr/local/bin/fusermount3
Installing util/mount.fuse3 to /usr/local/sbin/mount.fuse3
Installing fuse.h to /usr/local/include/fuse3
Installing fuse_common.h to /usr/local/include/fuse3
Installing fuse_lowlevel.h to /usr/local/include/fuse3
Installing fuse_opt.h to /usr/local/include/fuse3
Installing cuse_lowlevel.h to /usr/local/include/fuse3
Installing fuse_log.h to /usr/local/include/fuse3
Installing /build_dir/libfuse/doc/fusermount3.1 to /usr/local/share/man/man1
Installing /build_dir/libfuse/doc/mount.fuse3.8 to /usr/local/share/man/man8
Installing /build_dir/libfuse/build/meson-private/fuse3.pc to
/usr/local/lib/x86_64-linux-gnu/pkgconfig
Running custom install script '/build_dir/libfuse/util/install_helper.sh
/usr/local/etc /usr/local/bin /lib/udev/rules.d true'

So it looks that libfuse is built and installed, although the tests are all
skipped. However, s3ql build is still failing:

MANIFEST.in exists, running in developer mode
Traceback (most recent call last):
  File "setup.py", line 36, in <module>
    import s3ql
  File "/build_dir/s3ql/src/s3ql/__init__.py", line 39, in <module>
    from pyfuse3 import ROOT_INODE
ImportError: libfuse3.so.3: cannot open shared object file: No such file or
directory

I've updated the script (attached) with all your suggestions.

Could it be the location where libfuse is installed? Is there a way to put
that in an env variable, like the CFLAGS?

Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
"s3ql" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to s3ql+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/s3ql/CABzXND2vyY8%2BTRN3%3DupnMWWo4XBPR28Y%3DRv0to-3nrnktBR5KA%40mail.gmail.com.
#!/bin/bash

set -e

export DEBIAN_FRONTEND=noninteractive

PY_TRIO_VERSION_TAG="v0.16.0"
PY_TEST_TRIO_VERSION_TAG="v0.6.0"
APWS_VERSION_TAG="3.32.2-r1"
S3QL_VERSION_TAG="release-3.5.0"
BUILD_DIR="build_dir"


echo "install compilation tools and dependencies"
echo "Begining..."
apt update -qq
apt upgrade -y
apt install -yy --no-install-recommends git rsync nano curl \
   python3 python3-pip python3-dev psmisc pkg-config \
   libattr1-dev build-essential\
   libjs-sphinxdoc tzdata unzip wget udev meson


mkdir -p $BUILD_DIR
chmod o+rx $BUILD_DIR
cd $BUILD_DIR

wget https://www.sqlite.org/2020/sqlite-autoconf-3320300.tar.gz
tar -xvf sqlite-autoconf-3320300.tar.gz

cd $(ls -d */|head -1)
SQLITE_PREFIX="/usr/local/lib/sqlite"
./configure --prefix=$SQLITE_PREFIX   \
            --disable-static\
            CFLAGS=" -Os\
            -frecord-gcc-switches\
            -DSQLITE_ENABLE_COLUMN_METADATA=1"
make
make install
cd ..

pip3 install --upgrade pip
python3 -m pip install setuptools
python3 -m pip install "pytest>=3.7"
python3 -m pip install cython
python3 -m pip install pycrypto
python3 -m pip install defusedxml
python3 -m pip install requests
python3 -m pip install cryptography
python3 -m pip install "dugong>=3.4,<4.0"
python3 -m pip install async_generator

git clone https://github.com/libfuse/libfuse.git libfuse
cd libfuse
mkdir build
cd build
meson ..
ninja
chmod o+rx test
python3 -m pytest test/
ninja install
cd ..
cd ..


python3 -m pip install "pyfuse3>=3.0,<4.0"

# git clone https://github.com/libfuse/pyfuse3.git
# cd pyfuse3
# git checkout release-3.0.0
# python3 setup.py install
# python3 -m pytest test/

# cd ..

MY_CFLAGS="-I$SQLITE_PREFIX/include -L$SQLITE_PREFIX/lib -Wl,-rpath=$SQLITE_PREFIX/lib"


git clone https://github.com/python-trio/trio.git trio
cd trio
git checkout $PY_TRIO_VERSION_TAG
python3 setup.py install
cd ..

git clone https://github.com/python-trio/pytest-trio.git trio-test
cd trio-test
git checkout $PY_TEST_TRIO_VERSION_TAG
python3 setup.py install
cd ..

git clone https://github.com/rogerbinns/apsw.git apsw
cd apsw
git checkout $APWS_VERSION_TAG
CFLAGS=$MY_CFLAGS python3 setup.py install
cd ..

python3 -m pip install --upgrade google-api-python-client
python3 -m pip install --upgrade oauth2client
python3 -m pip install --upgrade google-auth-oauthlib

echo "download s3ql code"
git clone https://github.com/s3ql/s3ql.git s3ql

cd s3ql
git checkout $S3QL_VERSION_TAG

echo "compile s3ql"
# python3 setup.py build_cython
# python3 setup.py build_ext --inplace


# CFLAGS=$MY_CFLAGS python3 setup.py build_cython
CFLAGS=$MY_CFLAGS python3 setup.py build_ext  --inplace
CFLAGS=$MY_CFLAGS python3 runtests.py tests


echo "install s3ql"
python3 setup.py install

cd ..

echo "cleanup compilations tools"
cd ..
rm -rf $BUILD_DIR
apt-get remove --purge -y git
apt autoremove -y && apt autoclean -y && apt clean -y
rm -rf /var/lib/apt/lists/*

Reply via email to