Issues compiling Seafile server and its libraries

瀏覽次數:296 次
跳到第一則未讀訊息

Sven Grunewaldt

未讀,
2013年7月11日 上午11:50:382013/7/11
收件者:sea...@googlegroups.com
Hi,

I have several issues compiling Seafile and its libraries. My distribution is
Gentoo, but I guess thats not actually the problem.

1. issue: the generated Makefiles don't work with python 3, which is the
default /usr/bin/python on current Gentoo systems. This can be solved by
using "./configure PYTHON=/usr/bin/python2.7", but this is more a
workaround than a nice way to solve this.

2. issue: installing the libraries with a prefix seems to have some
problems... not all header files are copied. This is how I compile
libsearpc (see the attachments for redirected output):

strayer@valaskjalf libsearpc % ./configure
--prefix=/home/strayer/seafile PYTHON=/usr/bin/python2.7 >
configure_libsearpc_out
./configure: line 11272: test: =: unary operator expected
strayer@valaskjalf libsearpc % make > make_libsearpc_out
./json-path.c: In function 'json_path_compile':
./json-path.c:497:42: warning: field width specifier '*' expects
argument of type 'int', but argument 5 has type 'long int' [-Wformat]
./json-path.c:541:42: warning: field width specifier '*' expects
argument of type 'int', but argument 5 has type 'long int' [-Wformat]
./json-path.c:594:38: warning: field width specifier '*' expects
argument of type 'int', but argument 5 has type 'long int' [-Wformat]
./json-path.c:622:34: warning: field width specifier '*' expects
argument of type 'int', but argument 5 has type 'long int' [-Wformat]
searpc-client.c: In function 'fcall_to_str':
searpc-client.c:76:48: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
strayer@valaskjalf libsearpc % make install > make_install_libsearpc_out
libtool: install: warning: relinking `libsearpc.la'

Then, when compiling ccnet, this happens:

strayer@valaskjalf ccnet %
PKG_CONFIG_PATH=/home/strayer/seafile/lib/pkgconfig ./configure
--disable-client --enable-server PYTHON=/usr/bin/python2.7 >
configure_ccnet_out
strayer@valaskjalf ccnet % LANG="" make > make_ccnet_out
which: no searpc-codegen.py in
(/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.7.3)
which: no searpc-codegen.py in
(/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.7.3)
libccnet_utils.c: In function 'ccnet_util_expand_path':
libccnet_utils.c:283:16: warning: ignoring return value of 'getcwd',
declared with attribute warn_unused_result [-Wunused-result]
utils.c: In function 'ccnet_expand_path':
utils.c:406:16: warning: ignoring return value of 'getcwd', declared
with attribute warn_unused_result [-Wunused-result]
ccnet-server.c: In function 'main':
ccnet-server.c:193:16: warning: ignoring return value of 'daemon',
declared with attribute warn_unused_result [-Wunused-result]
../common/ccnet-db.c: In function 'ccnet_db_check_for_existence':
../common/ccnet-db.c:216:29: warning: 'result' may be used uninitialized
in this function [-Wmaybe-uninitialized]
../common/ccnet-db.c: In function 'ccnet_db_foreach_selected_row':
../common/ccnet-db.c:252:31: warning: 'result' may be used uninitialized
in this function [-Wmaybe-uninitialized]
../common/ccnet-db.c: In function 'ccnet_db_get_int':
../common/ccnet-db.c:314:28: warning: 'result' may be used uninitialized
in this function [-Wmaybe-uninitialized]
../common/ccnet-db.c: In function 'ccnet_db_get_int64':
../common/ccnet-db.c:349:28: warning: 'result' may be used uninitialized
in this function [-Wmaybe-uninitialized]
../common/ccnet-db.c: In function 'ccnet_db_get_string':
../common/ccnet-db.c:385:28: warning: 'result' may be used uninitialized
in this function [-Wmaybe-uninitialized]
../common/session.c:338:20: warning: 'net_status_string' defined but not
used [-Wunused-function]
../common/peer-mgr.c:820:1: warning: 'notify_peer_role' defined but not
used [-Wunused-function]
../common/rpc-service.c:38:30: fatal error: searpc-signature.h: No such
file or directory
compilation terminated.
make[3]: *** [rpc-service.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

I'm pretty sure this didn't happen when I compiled libsearpc without a
prefix.

I can't say if I just don't use automake correctly, maybe someone can give
me a headsup.

Thanks,
Sven Grunewaldt
configure_ccnet_out.txt
configure_libsearpc_out.txt
make_ccnet_out.txt
make_install_libsearpc_out.txt
make_libsearpc_out.txt

Lingtao Pan

未讀,
2013年7月15日 晚上10:18:232013/7/15
收件者:sea...@googlegroups.com
Thanks for reporting. We will look into the problem when we have time.

Loïc Corbasson

未讀,
2014年5月16日 上午8:37:312014/5/16
收件者:sea...@googlegroups.com
Hi,

This still happens when compiling 3.0.3 from source (Debian Stable on armv5el).

It seems that this header file is not included in the libsearpc-server package, only in the libsearpc package, in the demo/ and tests/ folders. As a quick hack, copying it from libsearpc-3.0.3/demo/searpc-signature.h (as well as libsearpc-3.0.3/demo/searpc-marshal.h that has a similar issue) to ${PREFIX}/include fixes the problem.

Cheers,

Loïc Corbasson
回覆所有人
回覆作者
轉寄
0 則新訊息