Opened 6 years ago

Closed 6 years ago

#183 closed defect (fixed)

XCache 1.2.2 fails to compile properly

Reported by: shinji Owned by: moo
Priority: major Milestone: 1.3.0
Component: build Version: 1.2.2
Keywords: Cc: shinji@…
Application: PHP Version: 5.2.6
Other Exts: SAPI: Irrelevant
Probability: Blocked By:
Blocking:

Description

XCache 1.2.2 fails to compile properly breaking on function xc_fillinfo_dmz in xcache.c at line 451. The line contains an assert() call.

Build log is attached.

Note that I did find that commenting that one line allows xcache to compile and run successfully however I don't know what other functions are affected.

The line in question is
assert(avail == handlers->avail(mem));

Attachments (2)

XCache_Build.log (8.5 KB) - added by shinji 6 years ago.
Build Log
assert.h (2.2 KB) - added by shinji 6 years ago.
assert.h from router build environment

Download all attachments as: .zip

Change History (7)

Changed 6 years ago by shinji

Build Log

comment:1 Changed 6 years ago by shinji

  • Cc shinji@… added
  • pending changed from 1 to 0

comment:2 Changed 6 years ago by moo

  • Status changed from new to assigned
  • Summary changed from XCache 2.2.0 fails to compile properly to XCache 1.2.2 fails to compile properly

assert() calls is save to be removed, as long as it compiles, it should work.

looks like you have inconsistent NDEBUG vs assert macro. i wonder where you build XCache, tell me more about your os/compiler/system-headers. there's something strange in your assert.h, can u attach it?

comment:3 Changed 6 years ago by shinji

I'm building directly onto an ASUS WL500g Premium router running using oleg's latest firmware. It has a full build environment installed. As requested assert.h is attached.

OS: Linux 2.4.20 derivative
Uname output: http://wl500g.dyndns.org/uClibc-0.9.19/hndtools-mipsel-uclibc-3.2.3-full.tar.bz2

Compiler: GCC 4.1.1
GCC output: Using built-in specs.
Target: mipsel-linux-uclibc
Configured with: /home/slug/optware/oleg/toolchain/buildroot/toolchain_build_mipsel/gcc-4.1.1/configure --prefix=/opt --build=i386-pc-linux-gnu --host=mipsel-linux-uclibc --target=mipsel-linux-uclibc --enable-languages=c,c++ --with-gxx-include-dir=/opt/include/c++ --disable-cxa_atexit --enable-target-optspace --with-gnu-ld --enable-shared --enable-threads --disable-multilib
Thread model: posix
gcc version 4.1.1

Changed 6 years ago by shinji

assert.h from router build environment

comment:4 Changed 6 years ago by shinji

Whoops! The uname output got mixed up with something else. Here is the real output.

Uname: Linux WL-001E8C3E002C 2.4.20 #18 Sun Mar 30 13:13:29 MSD 2008 mips GNU/Linux

I'll add that I have compile other programs successfully under this environment fine including other php extensions and even php itself.

comment:5 Changed 6 years ago by moo

  • Resolution set to fixed
  • Status changed from assigned to closed

fixed in [559] for 2.0.x, [560] for 1.3.x

Note: See TracTickets for help on using tickets.