Compiler construction PCL-从源代码进行Glib编译,FFI链接

Compiler construction PCL-从源代码进行Glib编译,FFI链接,compiler-construction,glib,ffi,point-cloud-library,Compiler Construction,Glib,Ffi,Point Cloud Library,我需要在没有根访问权限的Linux服务器上安装PCL(点云库)。然后我下载了源代码并检查了依赖项。现在我们开始 以下是我发现的依赖项: PCL --BOOST ----ZLIB ----BZIP --EIGEN --FLANN ----HDF5 ----LIBUSB ------UDEV --------GLIB ----------LIBFFI ----------ZLIB --VTK 使 通过这种方式而不是在make过程中使用gcc,我们将得到gcc-I-lffi-L。。。 到目前为止,这

我需要在没有根访问权限的Linux服务器上安装PCL(点云库)。然后我下载了源代码并检查了依赖项。现在我们开始

以下是我发现的依赖项:

PCL --BOOST ----ZLIB ----BZIP --EIGEN --FLANN ----HDF5 ----LIBUSB ------UDEV --------GLIB ----------LIBFFI ----------ZLIB --VTK 使

通过这种方式而不是在make过程中使用gcc,我们将得到gcc-I-lffi-L。。。 到目前为止,这一切都奏效了。但现在我在另一个位置得到了相同的错误:

make[4]: Entering directory `/home/franz/Downloads/glib-2.37.5/gio' /bin/bash ../libtool --tag=CC --mode=link gcc -I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include -lffi -L/home/franz/Downloads/libffi-3.0.13/installed/lib -Wall -Wstrict-prototypes -Werror=declaration-after-statement -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -g -O2 -o gio-querymodules gio-querymodules.o ../glib/libglib-2.0.la ../gobject/libgobject-2.0.la ../gmodule/libgmodule-2.0.la libgio-2.0.la libtool: link: gcc -I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include -Wall -Wstrict-prototypes -Werror=declaration-after-statement -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -g -O2 -o .libs/gio-querymodules gio-querymodules.o -L/home/franz/Downloads/libffi-3.0.13/installed/lib ../glib/.libs/libglib-2.0.so ../gobject/.libs/libgobject-2.0.so ../gmodule/.libs/libgmodule-2.0.so ./.libs/libgio-2.0.so -L/home/franz/Downloads/zlib-1.2.8/installed/lib /home/franz/Downloads/glib-2.37.5/gobject/.libs/libgobject-2.0.so /home/franz/Downloads/glib-2.37.5/gmodule/.libs/libgmodule-2.0.so -ldl /home/franz/Downloads/glib-2.37.5/glib/.libs/libglib-2.0.so -lpthread -lrt /home/franz/Downloads/libffi-3.0.13/installed/lib/../lib/libffi.so -lresolv -Wl,-rpath -Wl,/home/franz/Downloads/glib-2.37.5/installed/lib -Wl,-rpath -Wl,/home/franz/Downloads/libffi-3.0.13/installed/lib/../lib ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_void' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_double' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_prep_cif' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_sint32' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_float' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_uint64' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_sint64' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_pointer' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_uint32' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_call' make[4]:输入目录“/home/franz/Downloads/glib-2.37.5/gio” /bin/bash../libtool--tag=CC--mode=link gcc-I/home/franz/Downloads/libffi-3.0.13/include-lffi-L/home/franz/Downloads/libffi-3.0.13/installed/lib-Wall-Wstrict-prototype-Werror=语句后声明-Werror=缺少原型-Werror=隐式函数声明-Werror=指针arith-Werror=init self-Werror=format security-Werror=format=2-Werror=missing include dirs-g-O2-o gio querymodules gio querymodules.o../glib/libglib-2.0.la../gobject/libgobject-2.0.la../gmodule/libgmodule-2.0.la libtool:link:gcc-I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include-Wall-Wstrict prototype-Werror=statement后声明-Werror=missing prototype-Werror=隐式函数声明-Werror=指针arith-Werror=init self-Werror=格式安全性-Werror=format=2-Werror=missing include dirs-g-O2-o.libs/gio querymodules gio querymodules.o-L/home/franz/Downloads/libffi-3.0.13/installed/lib../glib/.libs/libglib-2.0.so../gobject/.libs/libgobject-2.0.so../gmodule/.libs/libgmodule-2.0.so./.libs/libgio-2.0.so-L/home/franz/Downloads/lib/lib/home/home/franz/home/gobject/Downloads/glib-2.37.0.so/.0/home/franz/Downloads/glib-2.37.5/gmodule/.libs/libgmodule-2.0.so-ldl/home/franz/Downloads/glib-2.37.5/glib-2.0.so-lpthread-lrt/home/franz/Downloads/libffi-3.0.13/installed/lib//lib/lib/libffi.so-lresolv-Wl,--rpath-Wl,/home/franz/Downloads/glib-2.37.5/installed/lib-rl-rpath-Wl,/home/franz/Downloads/libffi-3.0.13/installed/lib/。/lib ../gobject/.libs/libgobject-2.0.so:对'ffi\u type\u void'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi\u type\u double'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对“ffi\u prep\u cif”的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi_type_sint32'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi\u type\u float'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi_type_uint64'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi_type_sint64'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对“ffi\u类型\u指针”的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi_type_uint32'的未定义引用 ../gobject/.libs/libgobject-2.0.so:对'ffi_call'的未定义引用 问题是,在这种情况下,库是存在的(您可以看到
-lffi-L
,但错误看起来与以前相同)

你知道怎么做吗?我重复一遍,我无法安装库,因为我没有root访问权限。如有任何建议,将不胜感激。

使用


export LIBFFI_LIBS=“-L/your/path/to-ffi libraries/-lffi”

。/configure之后,您可以编辑生成文件 找到“LIBFFI_LIBS=…”,并在末尾添加“-lffi”。 比如“LIBFFI_LIBS=-L/work/opencv static/LIBFFI-3.2.1/output/lib-lffi”

LD_LIBRARY_PATH=/home/franz/Downloads/libffi-3.0.13/installed/lib LIBFFI_CFLAGS="-I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include" LIBFFI_LIBS="-lffi -L/home/franz/Downloads/libffi-3.0.13/installed/lib" make[4]: Entering directory `/home/franz/Downloads/glib-2.37.5/gobject' /bin/bash ../libtool --tag=CC --mode=link gcc -Wall -Wstrict-prototypes -Werror=declaration-after-statement -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -g -O2 -o gobject-query gobject-query.o ./libgobject-2.0.la ../glib/libglib-2.0.la libtool: link: gcc -Wall -Wstrict-prototypes -Werror=declaration-after-statement -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -g -O2 -o .libs/gobject-query gobject-query.o ./.libs/libgobject-2.0.so -L/home/franz/Downloads/libffi-3.0.13/installed/lib /home/franz/Downloads/glib-2.37.5/glib/.libs/libglib-2.0.so ../glib/.libs/libglib-2.0.so -lpthread -lrt -Wl,-rpath -Wl,/home/franz/Downloads/glib-2.37.5/installed/lib ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_void' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_double' ./.libs/libgobject-2.0.so: undefined reference to `ffi_prep_cif' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_sint32' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_float' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_uint64' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_sint64' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_pointer' ./.libs/libgobject-2.0.so: undefined reference to `ffi_type_uint32' ./.libs/libgobject-2.0.so: undefined reference to `ffi_call'
LIBFFI_CFLAGS="-I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include" LIBFFI_LIBS="-lffi -L/home/franz/Downloads/libffi-3.0.13/installed/lib" ZLIB_CFLAGS="-I/home/franz/Downloads/zlib-1.2.8/installed/include" ZLIB_LIBS="-L/home/franz/Downloads/zlib-1.2.8/installed/lib" CC="gcc $LIBFFI_CFLAGS $LIBFFI_LIBS" CXX="/usr/bin/g++-4.4 $LIBFFI_CFLAGS $LIBFFI_LIBS" ./configure --prefix=`pwd`/installed
make[4]: Entering directory `/home/franz/Downloads/glib-2.37.5/gio' /bin/bash ../libtool --tag=CC --mode=link gcc -I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include -lffi -L/home/franz/Downloads/libffi-3.0.13/installed/lib -Wall -Wstrict-prototypes -Werror=declaration-after-statement -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -g -O2 -o gio-querymodules gio-querymodules.o ../glib/libglib-2.0.la ../gobject/libgobject-2.0.la ../gmodule/libgmodule-2.0.la libgio-2.0.la libtool: link: gcc -I/home/franz/Downloads/libffi-3.0.13/installed/lib/libffi-3.0.13/include -Wall -Wstrict-prototypes -Werror=declaration-after-statement -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -g -O2 -o .libs/gio-querymodules gio-querymodules.o -L/home/franz/Downloads/libffi-3.0.13/installed/lib ../glib/.libs/libglib-2.0.so ../gobject/.libs/libgobject-2.0.so ../gmodule/.libs/libgmodule-2.0.so ./.libs/libgio-2.0.so -L/home/franz/Downloads/zlib-1.2.8/installed/lib /home/franz/Downloads/glib-2.37.5/gobject/.libs/libgobject-2.0.so /home/franz/Downloads/glib-2.37.5/gmodule/.libs/libgmodule-2.0.so -ldl /home/franz/Downloads/glib-2.37.5/glib/.libs/libglib-2.0.so -lpthread -lrt /home/franz/Downloads/libffi-3.0.13/installed/lib/../lib/libffi.so -lresolv -Wl,-rpath -Wl,/home/franz/Downloads/glib-2.37.5/installed/lib -Wl,-rpath -Wl,/home/franz/Downloads/libffi-3.0.13/installed/lib/../lib ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_void' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_double' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_prep_cif' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_sint32' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_float' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_uint64' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_sint64' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_pointer' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_type_uint32' ../gobject/.libs/libgobject-2.0.so: undefined reference to `ffi_call'