Skip to content

test_zlib failed on python runner.py #24

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
snowyu opened this issue Jun 18, 2011 · 12 comments
Closed

test_zlib failed on python runner.py #24

snowyu opened this issue Jun 18, 2011 · 12 comments

Comments

@snowyu
Copy link

snowyu commented Jun 18, 2011

emscripten latest git version

/dev/shm/tmp$ uname -a
Linux ubuntu32 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 i686 i686 i386 GNU/Linux
/dev/shm/tmp$ clang -v
clang version 2.9 (tags/RELEASE_29/final)
Target: i386-pc-linux-gnu
Thread model: posix
/dev/shm/tmp$ llvm-gcc -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: /home/duncan/llvm-2.9/32/llvmgcc42-2.9-release.src/configure --prefix=/home/duncan/llvm-2.9/32/Phase2/Release/llvmgcc42-2.9-release.install --program-prefix=llvm- --enable-llvm=/home/duncan/llvm-2.9/32/Phase2/Release/llvmCore-2.9-release.obj --enable-languages=c,c++,fortran
Thread model: posix
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2.9)
:/opt/src/emscripten/tests$ python runner.py clang_0_0.test_zlib
Running Emscripten tests...
test_zlib (__main__.clang_0_0) ... ./configure
Checking for shared library support...
Tested /opt/src/emscripten/tools/emmaken.py -w -c -m32 ztest689.c
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -w -c -m32 ztest689.c
Running: /opt/src/llvm-2.9/bin/clang -w -c -m32 ztest689.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87 -m32 -emit-llvm -c
Tested cc -shared -m32 -o ztest689.so ztest689.o
ztest689.o: file not recognized: File format not recognized
collect2: ld returned 1 exit status
No shared library support; try without defining CC and CFLAGS
Building static library libz.a version 1.2.5 with /opt/src/emscripten/tools/emmaken.py.
Checking for off64_t... No.
Checking for fseeko... No.
Checking for unistd.h... No.
Checking whether to use vs[n]printf() or s[n]printf()... using s[n]printf().
Checking for snprintf() in stdio.h... No.
  WARNING: snprintf() not found, falling back to sprintf(). zlib
  can build but will be open to possible buffer-overflow security
  vulnerabilities.
Checking for return value of sprintf()... No.
  WARNING: apparently sprintf() does not return a value. zlib
  can build but will be open to possible string-format security
  vulnerabilities.

make libz.a
FAIL

======================================================================
FAIL: test_zlib (__main__.clang_0_0)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "runner.py", line 1963, in test_zlib
    libraries=[self.get_library('zlib', os.path.join('libz.a'), make_args=['libz.a'])],
  File "runner.py", line 1918, in get_library
    self.do_link(map(lambda lib: os.path.join(project_dir, lib), generated_libs), bc_file)
  File "runner.py", line 155, in do_link
    assert output is None or 'Could not open input file' not in output, "Linking error: %s %s" % (output, cmd)
AssertionError: Linking error: /opt/src/llvm-2.9/bin/llvm-link: /dev/shm/tmp/building/zlib/libz.a: Could not open input file: No such file or directory
/opt/src/llvm-2.9/bin/llvm-link: error loading file '/dev/shm/tmp/building/zlib/libz.a'
 /opt/src/llvm-2.9/bin/llvm-link /dev/shm/tmp/building/zlib/libz.a -o /dev/shm/tmp/building/zlib/bc.bc

----------------------------------------------------------------------
Ran 1 test in 2.700s

FAILED (failures=1)
@kripken
Copy link
Member

kripken commented Jun 18, 2011

It looks like it isn't succeeding to build the project.

Can you try to build it normally (do ./configure and make in a copy of the zlib directory)?

@snowyu
Copy link
Author

snowyu commented Jun 19, 2011

en, yes, I can build it successfully on the command line . But It'll fail on executing in the scirpt.

running the ammo.js/build.py is similar:

=====================
Stage 1: Build Bullet
=====================
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... /opt/src/emscripten/tools/emmaken.py
checking whether the C compiler works... no
configure: error: in `/opt/src/ammo.js/bullet/build':
configure: error: C compiler cannot create executables
See `config.log' for more details
make: *** No targets specified and no makefile found.  Stop.

=============
Stage 2: Link
=============

directly run in command is ok:

/opt/src/ammo.js/$ cd bullet\build
/opt/src/ammo.js/bullet/build$ RANLIB=/opt/src/emscripten/tools/emmaken.py AR=/opt/src/emscripten/tools/emmaken.py CXX=/opt/src/emscripten/tools/emmaken.py CC=/opt/src/emscripten/tools/emmaken.py ../configure --disable-demos --disable-dependency-tracking

@kripken
Copy link
Member

kripken commented Jun 19, 2011

Can you paste the config.log file it mentions there? That will have more details.

Also, please find the lines in tests/runner.py beginning with
Popen(configure
Popen(make

and add "print" before them (without "s), so it prints as it tries to compile. That will give some more output for zlib.

@snowyu
Copy link
Author

snowyu commented Jun 20, 2011

OK, I got the reason of test_zlib failed. the configure needs the CFLAGS to specify the includes path.

export  CFLAGS='-I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu'
export  CPPFLAGS='-I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu'

the only problem is the bullet left.
here r the ammo.js/bullet/build/config.log:

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by bullet configure 2.78, which was
generated by GNU Autoconf 2.67.  Invocation command line was

  $ ../configure --disable-demos --disable-dependency-tracking

## --------- ##
## Platform. ##
## --------- ##

hostname = ubuntu32
uname -m = i686
uname -r = 2.6.38-8-generic
uname -s = Linux
uname -v = #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011

/usr/bin/uname -p = unknown
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2346: checking build system type
configure:2360: result: i686-pc-linux-gnu
configure:2380: checking host system type
configure:2393: result: i686-pc-linux-gnu
configure:2430: checking for a BSD-compatible install
configure:2498: result: /usr/bin/install -c
configure:2509: checking whether build environment is sane
configure:2559: result: yes
configure:2700: checking for a thread-safe mkdir -p
configure:2739: result: /bin/mkdir -p
configure:2752: checking for gawk
configure:2782: result: no
configure:2752: checking for mawk
configure:2768: found /usr/bin/mawk
configure:2779: result: mawk
configure:2790: checking whether make sets $(MAKE)
configure:2812: result: yes
configure:2904: checking for style of include used by make
configure:2932: result: GNU
configure:3002: checking for gcc
configure:3029: result: /opt/src/emscripten/tools/emmaken.py
configure:3258: checking for C compiler version
configure:3267: /opt/src/emscripten/tools/emmaken.py --version >&5
Low Level Virtual Machine (http://llvm.org/):
  llvm version 2.9
  Optimized build.
  Built Apr  1 2011 (07:31:36).
  Host: i386-pc-linux-gnu
  Host CPU: penryn

  Registered Targets:
    (none)
emmaken.py:  /opt/src/emscripten/tools/emmaken.py --version
configure:3278: $? = 1
configure:3267: /opt/src/emscripten/tools/emmaken.py -v >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -v
-show-annotations: Unknown command line argument '-v'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-f'?
configure:3278: $? = 1
configure:3267: /opt/src/emscripten/tools/emmaken.py -V >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -V
-show-annotations: Unknown command line argument '-V'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-f'?
configure:3278: $? = 1
configure:3267: /opt/src/emscripten/tools/emmaken.py -qversion >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -qversion
-show-annotations: Unknown command line argument '-qversion'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-version'?
configure:3278: $? = 1
configure:3298: checking whether the C compiler works
configure:3320: /opt/src/emscripten/tools/emmaken.py -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu  conftest.c  >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3324: $? = 0
configure:3372: result: yes
configure:3375: checking for C compiler default output file name
configure:3377: result: a.out
configure:3383: checking for suffix of executables
configure:3390: /opt/src/emscripten/tools/emmaken.py -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu  conftest.c  >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3394: $? = 0
configure:3416: result: 
configure:3438: checking whether we are cross compiling
configure:3446: /opt/src/emscripten/tools/emmaken.py -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu  conftest.c  >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3450: $? = 0
configure:3457: ./conftest
configure:3461: $? = 0
configure:3476: result: no
configure:3481: checking for suffix of object files
configure:3503: /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3507: $? = 0
configure:3528: result: o
configure:3532: checking whether we are using the GNU C compiler
configure:3551: /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3551: $? = 0
configure:3560: result: yes
configure:3569: checking whether /opt/src/emscripten/tools/emmaken.py accepts -g
configure:3589: /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3589: $? = 0
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "bullet"
| #define PACKAGE_TARNAME "bullet"
| #define PACKAGE_VERSION "2.78"
| #define PACKAGE_STRING "bullet 2.78"
| #define PACKAGE_BUGREPORT "bullet@erwincoumans.com"
| #define PACKAGE_URL ""
| #define PACKAGE "bullet"
| #define VERSION "2.78"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:3604: /opt/src/emscripten/tools/emmaken.py -c  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3604: $? = 0
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "bullet"
| #define PACKAGE_TARNAME "bullet"
| #define PACKAGE_VERSION "2.78"
| #define PACKAGE_STRING "bullet 2.78"
| #define PACKAGE_BUGREPORT "bullet@erwincoumans.com"
| #define PACKAGE_URL ""
| #define PACKAGE "bullet"
| #define VERSION "2.78"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:3620: /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3620: $? = 0
configure:3630: result: yes
configure:3647: checking for /opt/src/emscripten/tools/emmaken.py option to accept ISO C89
configure:3711: /opt/src/emscripten/tools/emmaken.py  -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3711: $? = 0
configure:3724: result: none needed
configure:3746: checking dependency style of /opt/src/emscripten/tools/emmaken.py
configure:3856: result: none
configure:3872: checking whether /opt/src/emscripten/tools/emmaken.py and cc understand -c and -o together
configure:3903: /opt/src/emscripten/tools/emmaken.py -c conftest.c -o conftest2.o >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c conftest.c -o conftest2.o
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c conftest.c -o conftest2.o -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3907: $? = 0
configure:3913: /opt/src/emscripten/tools/emmaken.py -c conftest.c -o conftest2.o >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c conftest.c -o conftest2.o
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c conftest.c -o conftest2.o -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3917: $? = 0
configure:3928: cc -c conftest.c >&5
configure:3932: $? = 0
configure:3940: cc -c conftest.c -o conftest2.o >&5
configure:3944: $? = 0
configure:3950: cc -c conftest.c -o conftest2.o >&5
configure:3954: $? = 0
configure:3972: result: yes
configure:4109: checking for C++ compiler version
configure:4118: /opt/src/emscripten/tools/emmaken.py --version >&5
Low Level Virtual Machine (http://llvm.org/):
  llvm version 2.9
  Optimized build.
  Built Apr  1 2011 (07:31:36).
  Host: i386-pc-linux-gnu
  Host CPU: penryn

  Registered Targets:
    (none)
emmaken.py:  /opt/src/emscripten/tools/emmaken.py --version
configure:4129: $? = 1
configure:4118: /opt/src/emscripten/tools/emmaken.py -v >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -v
-show-annotations: Unknown command line argument '-v'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-f'?
configure:4129: $? = 1
configure:4118: /opt/src/emscripten/tools/emmaken.py -V >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -V
-show-annotations: Unknown command line argument '-V'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-f'?
configure:4129: $? = 1
configure:4118: /opt/src/emscripten/tools/emmaken.py -qversion >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -qversion
-show-annotations: Unknown command line argument '-qversion'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-version'?
configure:4129: $? = 1
configure:4133: checking whether we are using the GNU C++ compiler
configure:4152: /opt/src/emscripten/tools/emmaken.py -c  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-g++ -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87 -emit-llvm -c
configure:4152: $? = 0
configure:4161: result: yes
configure:4170: checking whether /opt/src/emscripten/tools/emmaken.py accepts -g
configure:4190: /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-g++ -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87 -emit-llvm -c
configure:4190: $? = 0
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "bullet"
| #define PACKAGE_TARNAME "bullet"
| #define PACKAGE_VERSION "2.78"
| #define PACKAGE_STRING "bullet 2.78"
| #define PACKAGE_BUGREPORT "bullet@erwincoumans.com"
| #define PACKAGE_URL ""
| #define PACKAGE "bullet"
| #define VERSION "2.78"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:4205: /opt/src/emscripten/tools/emmaken.py -c  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-g++ -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87 -emit-llvm -c
configure:4205: $? = 0
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "bullet"
| #define PACKAGE_TARNAME "bullet"
| #define PACKAGE_VERSION "2.78"
| #define PACKAGE_STRING "bullet 2.78"
| #define PACKAGE_BUGREPORT "bullet@erwincoumans.com"
| #define PACKAGE_URL ""
| #define PACKAGE "bullet"
| #define VERSION "2.78"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:4221: /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-g++ -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.cpp -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87 -emit-llvm -c
configure:4221: $? = 0
configure:4231: result: yes
configure:4256: checking dependency style of /opt/src/emscripten/tools/emmaken.py
configure:4366: result: none
configure:4406: checking for a sed that does not truncate output
configure:4470: result: /bin/sed
configure:4488: checking for grep that handles long lines and -e
configure:4546: result: /bin/grep
configure:4551: checking for egrep
configure:4613: result: /bin/grep -E
configure:4618: checking for fgrep
configure:4680: result: /bin/grep -F
configure:4715: checking for ld used by /opt/src/emscripten/tools/emmaken.py
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -print-prog-name=ld
-show-annotations: Unknown command line argument '-print-prog-name=ld'.  Try: '-show-annotations -help'
-show-annotations: Did you mean '-disable-output'?
configure:4782: result: /usr/bin/ld
configure:4789: checking if the linker (/usr/bin/ld) is GNU ld
configure:4804: result: yes
configure:4816: checking for BSD- or MS-compatible name lister (nm)
configure:4865: result: /usr/bin/nm -B
configure:4983: checking the name lister (/usr/bin/nm -B) interface
configure:4990: /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:4993: /usr/bin/nm -B "conftest.o"
configure:4996: output
00000000 B some_variable
configure:5003: result: BSD nm
configure:5006: checking whether ln -s works
configure:5010: result: yes
configure:5018: checking the maximum length of command line arguments
configure:5138: result: 1572864
configure:5155: checking whether the shell understands some XSI constructs
configure:5165: result: yes
configure:5169: checking whether the shell understands "+="
configure:5175: result: yes
configure:5210: checking for /usr/bin/ld option to reload object files
configure:5217: result: -r
configure:5286: checking for objdump
configure:5302: found /usr/bin/objdump
configure:5313: result: objdump
configure:5345: checking how to recognize dependent libraries
configure:5541: result: pass_all
configure:5601: checking for ar
configure:5628: result: /opt/src/emscripten/tools/emmaken.py
configure:5706: checking for strip
configure:5722: found /usr/bin/strip
configure:5733: result: strip
configure:5805: checking for ranlib
configure:5832: result: /opt/src/emscripten/tools/emmaken.py
configure:5922: checking command to parse /usr/bin/nm -B output from /opt/src/emscripten/tools/emmaken.py object
configure:6040: /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:6043: $? = 0
configure:6047: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[   ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[     ][  ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm
configure:6050: $? = 0
configure:6104: /opt/src/emscripten/tools/emmaken.py -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu  conftest.c conftstm.o >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c conftstm.o
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -o conftest -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c conftstm.o -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:6107: $? = 0
configure:6145: result: ok
configure:6954: checking how to run the C preprocessor
configure:6985: /opt/src/emscripten/tools/emmaken.py -E -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -E -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -E -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:6985: $? = 0
configure:6999: /opt/src/emscripten/tools/emmaken.py -E -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c

@kripken
Copy link
Member

kripken commented Jun 21, 2011

Looks like a linking error, the glu32 and opengl32 libs are not present?

They are just needed for the configure tests. Might be a way to hack configure so it ignores them.

@snowyu
Copy link
Author

snowyu commented Jun 21, 2011

run "configure" on command line passed. Failed only on running build.py or runner.py:

It stops on the configure stage for testing the compiler on conftest.c:

configure:3569: checking whether /opt/src/emscripten/tools/emmaken.py accepts -g
configure:3589: /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c >&5
emmaken.py:  /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c
Running: /opt/src/llvm-gcc-4.2-2.9/bin/llvm-gcc -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c -m32 -U__i386__ -U__x86_64__ -U__SSE__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87
configure:3589: $? = 0
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "bullet"
| #define PACKAGE_TARNAME "bullet"
| #define PACKAGE_VERSION "2.78"
| #define PACKAGE_STRING "bullet 2.78"
| #define PACKAGE_BUGREPORT "bullet@erwincoumans.com"
| #define PACKAGE_URL ""
| #define PACKAGE "bullet"
| #define VERSION "2.78"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }

@kripken
Copy link
Member

kripken commented Jun 22, 2011

What happens when you run that command (right after emmaken.py: in that output) on the file it mentions?

@snowyu
Copy link
Author

snowyu commented Jun 22, 2011

The above is the error information in the config.log.

here is the command line output, the configure failed, no Makefile generated:

:/opt/src/ammo.js$ ./build.py 

=====================
Stage 1: Build Bullet
=====================
../configure --disable-demos --disable-dependency-tracking
CONF:CFLAGS=  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu
CONF:CFLAGS=  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... /opt/src/emscripten/tools/emmaken.py
checking whether the C compiler works... no
configure: error: in `/opt/src/ammo.js/bullet/build':
configure: error: C compiler cannot create executables
See `config.log' for more details
(None, None)
make: *** No targets specified and no makefile found.  Stop.

=============
Stage 2: Link
=============
/opt/src/llvm-2.9/bin/llvm-link src/.libs/libBulletCollision.a src/.libs/libBulletDynamics.a src/.libs/libLinearMath.a -o libbullet.bc
/opt/src/llvm-2.9/bin/llvm-link: src/.libs/libBulletCollision.a: Could not open input file: No such file or directory
/opt/src/llvm-2.9/bin/llvm-link: error loading file 'src/.libs/libBulletCollision.a'
Traceback (most recent call last):
  File "./b.py", line 82, in <module>
    assert os.path.exists('libbullet.bc'), 'Failed to create client'
AssertionError: Failed to create client

All r ok if I run this on the bash cmd line directly:

/opt/src/ammo.js/bullet/build$ CFLAGS='-I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu' \
> CPPFLAGS='-I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu' \
> RANLIB=/opt/src/emscripten/tools/emmaken.py \
> AR=/opt/src/emscripten/tools/emmaken.py \
> CXX=/opt/src/emscripten/tools/emmaken.py \
> CC=/opt/src/emscripten/tools/emmaken.py \
> ../configure  --disable-demos --disable-dependency-tracking
CONF:CFLAGS=  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu
CONF:CFLAGS=  -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... /opt/src/emscripten/tools/emmaken.py
checking whether the C compiler works... yes
....
configure:

Please type 'make' to build Bullet

@kripken
Copy link
Member

kripken commented Jun 23, 2011

I meant, what happens when you run

/opt/src/emscripten/tools/emmaken.py accepts -g configure:3589: /opt/src/emscripten/tools/emmaken.py -c -g -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu conftest.c

on this file:

 /* confdefs.h */
 #define PACKAGE_NAME "bullet"
 #define PACKAGE_TARNAME "bullet"
 #define PACKAGE_VERSION "2.78"
 #define PACKAGE_STRING "bullet 2.78"
 #define PACKAGE_BUGREPORT "bullet@erwincoumans.com"
 #define PACKAGE_URL ""
 #define PACKAGE "bullet"
 #define VERSION "2.78"
 /* end confdefs.h.  */

 int
 main ()
 {

   ;
   return 0;
 }

That is failing for some reason in the configure. Let's find out why.

@snowyu
Copy link
Author

snowyu commented Jun 23, 2011

I trunk the build.py and try it.
OK. I've got the reason. it's run llvm-gcc on cmd. but clang on script.

It's a clang bug for ubuntu (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=629861).

emmaken.py:  /opt/src/emscripten/tools/emmaken.py -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c$
['/opt/src/emscripten/tools/emmaken.py', '-I/usr/include/i386-linux-gnu', '-I/usr/include/c++/4.5/i686-linux-gnu', '-I/usr/include/i386-linux-gnu', '-I/usr/include/$
Running: /opt/src/llvm-2.9/bin/clang -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-linux-gnu -I/usr/include/i386-linux-gnu -I/usr/include/c++/4.5/i686-l$
/usr/bin/ld.bfd.real: cannot find crt1.o: No such file or directory
/usr/bin/ld.bfd.real: cannot find crti.o: No such file or directory
/usr/bin/ld.bfd.real: cannot find crtbegin.o: No such file or directory
/usr/bin/ld.bfd.real: cannot find -lgcc
/usr/bin/ld.bfd.real: cannot find -lgcc_s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
configure:3324: $? = 1
configure:3362: result: no

@kripken
Copy link
Member

kripken commented Jun 24, 2011

Interesting. You might need to get upstream clang and build it then. (Or, just use llvm-gcc and not clang.)

@kripken kripken closed this as completed Jun 24, 2011
@snowyu
Copy link
Author

snowyu commented Jun 24, 2011

this issue has not been fixed in trunk. so only llvm-gcc instead. :(

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants