安装Rasqal RDF 查询库,在 Documents 中提取包。./configure 命令:
(base) sohail@muhammad-sohail:~/Documents/rasqal$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking whether build environment is sane... yes
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking whether gcc is clang... checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for sys/time.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether ln -s works... yes
checking whether make sets $(MAKE)... (cached) yes
checking for flex... flex
checking for lex output file root... lex.yy
checking for lex library... none needed
checking for library containing yywrap... no
checking whether yytext is a pointer... yes
checking flex... not present - not required for non maintainer builds
checking for bison3... no
checking for bison... bison
checking for awk... (cached) gawk
checking for gnutar... no
checking for gtar... no
checking for tar... tar
checking for perl... perl
checking for echo... echo
checking for egrep... (cached) /usr/bin/grep -E
checking for errno.h... yes
checking for stddef.h... yes
checking for stdlib.h... (cached) yes
checking for stdint.h... (cached) yes
checking for unistd.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking for getopt.h... yes
checking for regex.h... yes
checking for sys/time.h... (cached) yes
checking for time.h... yes
checking for math.h... yes
checking for limits.h... yes
checking for errno.h... (cached) yes
checking for float.h... yes
checking for an ANSI C-conforming const... yes
checking whether byte ordering is bigendian... no
checking whether __FUNCTION__ is available... yes
checking for getopt... yes
checking for getopt_long... yes
checking for stricmp... no
checking whether need to declare optind... no
checking whether struct tm has tm_gmtoff field... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for RAPTOR2... yes
checking for pcre-config... pcre-config
checking for pcre... 8.45
checking for posix regex library... yes
checking regex library to use... pcre
checking for mhash.h... no
checking for mhash... no
checking for libgcrypt-config... no
checking for gcrypt.h... no
checking for gcrypt... no
checking message digest library to use... internal
checking for UUID... yes
checking for libuuid... yes
checking for uuid-config... no
checking for ossp libuuid... no
checking for uuid/uuid.h... yes
checking for UUID in libc... no
checking UUID library to use... libuuid 2.34.0
checking for xml2-config... xml2-config
checking for libxml2 library... yes - version 2.9.12
checking for mpfr.h... no
checking for working GNU MP library... yes
checking for GNU MP library random support... yes
checking for gmp_version... yes
checking random approach... Internal Mersenne Twister
checking for ceil, floor and round in default libs... no
checking for ceil, floor and round with -lm... yes
checking using memory signing... no
checking whether make supports nested variables... (cached) yes
checking for gtk-doc... yes
checking for gtkdoc-check... gtkdoc-check.test
checking for gtkdoc-check... /usr/bin/gtkdoc-check
checking for gtkdoc-rebase... /usr/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /usr/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no
checking for GTKDOC_DEPS... no
checking that generated files are newer than configure... done
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating data/Makefile
config.status: creating docs/Makefile
config.status: creating docs/version.xml
config.status: creating scripts/Makefile
config.status: creating libsv/Makefile
config.status: creating libmtwist/Makefile
config.status: creating getopt/Makefile
config.status: creating src/Makefile
config.status: creating src/rasqal.h
config.status: creating src/win32_rasqal_config.h
config.status: creating tests/Makefile
config.status: creating tests/algebra/Makefile
config.status: creating tests/engine/Makefile
config.status: creating tests/laqrs/Makefile
config.status: creating tests/laqrs/syntax/Makefile
config.status: creating tests/sparql/Makefile
config.status: creating tests/sparql/bugs/Makefile
config.status: creating tests/sparql/simple/Makefile
config.status: creating tests/sparql/part1/Makefile
config.status: creating tests/sparql/examples/Makefile
config.status: creating tests/sparql/syntax/Makefile
config.status: creating tests/sparql/bound/Makefile
config.status: creating tests/sparql/survey/Makefile
config.status: creating tests/sparql/SyntaxFull/Makefile
config.status: creating tests/sparql/sort/Makefile
config.status: creating tests/sparql/ValueTesting/Makefile
config.status: creating tests/sparql/regex/Makefile
config.status: creating tests/sparql/Expr1/Makefile
config.status: creating tests/sparql/Expr2/Makefile
config.status: creating tests/sparql/ExprBuiltins/Makefile
config.status: creating tests/sparql/ExprEquals/Makefile
config.status: creating tests/sparql/SyntaxDev/Makefile
config.status: creating tests/sparql/SyntaxDev/Syntax-SPARQL/Makefile
config.status: creating tests/sparql/SyntaxDev/Syntax-SPARQL2/Makefile
config.status: creating tests/sparql/SyntaxDev/Syntax-SPARQL3/Makefile
config.status: creating tests/sparql/update/Makefile
config.status: creating tests/sparql/aggregate/Makefile
config.status: creating tests/sparql/sparql11/Makefile
config.status: creating tests/sparql/federated/Makefile
config.status: creating tests/sparql/warnings/Makefile
config.status: creating utils/Makefile
config.status: creating win32/Makefile
config.status: creating rasqal.spec
config.status: creating rasqal.rdf
config.status: creating rasqal.pc
config.status: creating src/rasqal-config
config.status: creating rasqal-src-config
config.status: creating src/rasqal_config.h
config.status: executing depfiles commands
config.status: executing libtool commands
Rasqal build summary:
RDF query languages available : sparql laqrs
RDF query languages enabled : sparql laqrs
Raptor version : 2.0.15
Decimal library : gmp
Regex library : pcre
Message digest library : internal
UUID library : libuuid 2.34.0
Random approach : Internal Mersenne Twister
ceil, floor, round source : libm
制作命令:
(base) sohail@muhammad-sohail:~/Documents/rasqal$ make
Making all in libsv
make[1]: Entering directory '/home/sohail/Documents/rasqal/libsv'
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT sv.lo -MD -MP -MF .deps/sv.Tpo -c -o sv.lo sv.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT sv.lo -MD -MP -MF .deps/sv.Tpo -c sv.c -fPIC -DPIC -o .libs/sv.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT sv.lo -MD -MP -MF .deps/sv.Tpo -c sv.c -o sv.o >/dev/null 2>&1
mv -f .deps/sv.Tpo .deps/sv.Plo
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT option.lo -MD -MP -MF .deps/option.Tpo -c -o option.lo option.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT option.lo -MD -MP -MF .deps/option.Tpo -c option.c -fPIC -DPIC -o .libs/option.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT option.lo -MD -MP -MF .deps/option.Tpo -c option.c -o option.o >/dev/null 2>&1
mv -f .deps/option.Tpo .deps/option.Plo
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT write.lo -MD -MP -MF .deps/write.Tpo -c -o write.lo write.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT write.lo -MD -MP -MF .deps/write.Tpo -c write.c -fPIC -DPIC -o .libs/write.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT write.lo -MD -MP -MF .deps/write.Tpo -c write.c -o write.o >/dev/null 2>&1
mv -f .deps/write.Tpo .deps/write.Plo
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT read.lo -MD -MP -MF .deps/read.Tpo -c -o read.lo read.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../src -DSV_CONFIG -I../src -DRASQAL_INTERNAL=1 -g -O2 -MT read.lo -MD -MP -MF .deps/read.Tpo -c read.c -fPIC -DPIC -o .libs/read.o
mv -f .deps/rasqal_results_compare.Tpo .deps/rasqal_results_compare.Plo
make[2]: *** No rule to make target 'sparql_lexer.c', needed by 'sparql_lexer.lo'. Stop.
make[2]: Leaving directory '/home/sohail/Documents/rasqal/src'
make[1]: *** [Makefile:1085: all] Error 2
make[1]: Leaving directory '/home/sohail/Documents/rasqal/src'
make: *** [Makefile:546: all-recursive] Error 1
答案1
Rasqal RDF 查询库包含在所有当前的 Ubuntu 版本中。您不需要手动编译它。对于面向客户端的使用,请使用以下命令安装它:
sudo apt-get install librasqal3 librasqal3-doc rasqal-utils
要在其基础上开发一些软件,请安装以下软件包
sudo apt-get install librasqal3-dbg librasqal3-dev
你会得到rasqal.h
,librasqal.a
并且很快。