2012-02-17 1 views
0

여기에 설명 된대로 내가 프롤로그 - JPL을 컴파일하기 위해 노력하고있어 : https://code.google.com/p/javanaproche/wiki/HowToJPL우분투 11.10 64 비트에서 Prolog-JPL 컴파일하기?

를 불행하게도, 그것은 오류와 함께 종료 :

그것은 프롤로그 코드의 문제에 대해 불평하는 것 같다
********************** 
* Package plunit 
********************** 
config.status: creating Makefile 
********************** 
* Package jpl 
********************** 
config.status: creating Makefile 
config.status: creating src/java/Makefile 
config.status: creating config.h 
config.status: config.h is unchanged 
********************** 
* Package R 
********************** 
config.status: creating Makefile 
********************** 
* Package protobufs 
********************** 
config.status: creating Makefile 
config.status: creating config.h 
config.status: config.h is unchanged 
make[1]: Leaving directory `/home/user/pl-5.10.1/packages' 
cd packages && make 
make[1]: Entering directory `/home/user/pl-5.10.1/packages' 
for p in clib cpp table sgml RDF semweb http chr clpqr nlp tipc pldoc plunit jpl R protobufs; do \ 
     if [ -r $p/Makefile ]; then make -C $p || exit 1; fi; \ 
     done 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/clib' 
make[2]: Nothing to be done for `all'. 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/clib' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/cpp' 
Nothing to do for this package 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/cpp' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/table' 
make[2]: Nothing to be done for `all'. 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/table' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/sgml' 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/sgml' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/RDF' 
Nothing to do for this package 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/RDF' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/semweb' 
make[2]: Nothing to be done for `all'. 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/semweb' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/http' 
make[2]: Nothing to be done for `all'. 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/http' 
make[2]: Entering directory `/home/user/pl-5.10.1/packages/chr' 
../swipl.sh -q -f ./chr_swi_bootstrap.pl \ 
       -g "chr_compile_step1('chr_translate_bootstrap1.chr','chr_translate_bootstrap1.pl'),halt" \ 
       -t 'halt(1)' 
ERROR: source_sink `/chr_swi_bootstrap.pl' does not exist 
ERROR: Prolog initialisation failed: 
ERROR: '<meta-call>'/1: Undefined procedure: chr_compile_step1/2 
make[2]: *** [chr_translate_bootstrap1.pl] Error 1 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/chr' 
make[1]: *** [objects] Error 1 
make[1]: Leaving directory `/home/user/pl-5.10.1/packages' 
make: *** [packages] Error 2 

**** Installation failed. Aborting package creation. 

하지만, 필자는 64 비트가 아닌 32 비트였던 다른 컴퓨터에서 문제없이 컴파일했습니다.

업데이트 : 폴더를 삭제하고 다시 다운로드 한 후 컴파일하려고하면 다른 오류가 발생합니다. 라이브러리가 설치되어 있는지 확인하지 않는 경우인지, 실패했는지 궁금합니다. 모듈 중 하나 (CHR)을 컴파일에서 유지 때문에

make[4]: Entering directory `/home/user/pl-5.10.1/packages/xpce/src' 
gcc -c -Wall -O2 -fno-strict-aliasing -I. -I/home/user/pl-5.10.1/packages/xpce/src -I/usr/include -I/usr/include -I/usr/include/freetype2 -fPIC -DHAVE_CONFIG_H x11/canvas.c -o x11/canvas.o 
gcc -c -Wall -O2 -fno-strict-aliasing -I. -I/home/user/pl-5.10.1/packages/xpce/src -I/usr/include -I/usr/include -I/usr/include/freetype2 -fPIC -DHAVE_CONFIG_H x11/fshell.c -o x11/fshell.o 
gcc -c -Wall -O2 -fno-strict-aliasing -I. -I/home/user/pl-5.10.1/packages/xpce/src -I/usr/include -I/usr/include -I/usr/include/freetype2 -fPIC -DHAVE_CONFIG_H x11/xcommon.c -o x11/xcommon.o 
In file included from /usr/include/X11/extensions/render.h:29:0, 
       from /usr/include/X11/extensions/Xrender.h:33, 
       from /usr/include/X11/Xft/Xft.h:42, 
       from x11/include.h:78, 
       from x11/xcommon.c:28: 
/usr/include/X11/Xdefs.h:47:13: error: conflicting types for ‘Bool’ 
./h/types.h:66:25: note: previous declaration of ‘Bool’ was here 
x11/xcommon.c:167:1: error: conflicting types for ‘X11ThreadsDisplay’ 
./h/wst.h:34:16: note: previous declaration of ‘X11ThreadsDisplay’ was here 
x11/xcommon.c: In function ‘X11ThreadsDisplay’: 
x11/xcommon.c:171:29: warning: comparison between pointer and integer [enabled by default] 
x11/xcommon.c: In function ‘keycode_to_name’: 
x11/xcommon.c:666:9: warning: variable ‘has_chars’ set but not used [-Wunused-but-set-variable] 
x11/xcommon.c: In function ‘CtoEvent’: 
x11/xcommon.c:910:14: warning: assignment makes integer from pointer without a cast [enabled by default] 
make[4]: *** [x11/xcommon.o] Error 1 
make[4]: Leaving directory `/home/user/pl-5.10.1/packages/xpce/src' 
make[3]: *** [dowsobjs] Error 2 
make[3]: Leaving directory `/home/user/pl-5.10.1/packages/xpce/src' 
make[2]: *** [all] Error 2 
make[2]: Leaving directory `/home/user/pl-5.10.1/packages/xpce' 
make[1]: *** [objects] Error 1 
make[1]: Leaving directory `/home/user/pl-5.10.1/packages' 
make: *** [packages] Error 2 
+0

실제로 파일에 'ERROR : source_sink /chr_swi_bootstrap.pl이 존재하지 않습니다.'라는 메시지가 나타납니다. – KevinDTimm

+0

해당 파일을 검사하여 찾았습니다. 프롤로그 코드가 있습니다. 컴파일은 32 비트 컴퓨터에서 잘 작동합니다. – NoBugs

+0

첫 번째 오류는 checkinstall의 문제를 제외하고 chr이 DISABLE_PKGS에 추가 한 후 컴파일 된 것입니다. make install 후 checkinstall을 실행하면 효과가있는 것 같습니다. – NoBugs

답변

0

는, I는 export DISABLE_PKGS 라인에 추가는 컴파일 미세 달렸다. :)