Package: openni-dev
Version: 1.1.0.41-5+maverick1
Severity: serious
Justification: unknown. Probably bit that says install routine should run!


Pentium-M (IBM thinkpad x40).

I'm just noting this from dpkg -i:

(Reading database ... 232866 files and directories currently installed.)
Unpacking openni-dev (from .../openni-dev_1.1.0.41-5+maverick1_i386.deb) ...
Setting up openni-dev (1.1.0.41-5+maverick1) ...
/var/lib/dpkg/info/openni-dev.postinst: line 21: 28889 Illegal
instruction     /usr/bin/niReg -r /usr/lib/libnimCodecs.so /etc/primesense
dpkg: error processing openni-dev (--configure):
 subprocess installed post-installation script returned error exit status 132
 configured to not write apport reports
 Errors were encountered while processing: openni-dev

Extracting the executable in question ...

  ./usr/bin/niReg
  Illegal instruction

so I would guess that it's been compiled with some arch options that
are not i686-generic or even i386-generic. My arch is i386.

Running strace shows me

getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
uname({sys="Linux", node="barney", ...}) = 0
brk(0)                                  = 0x804b000
brk(0x806c000)                          = 0x806c000
--- SIGILL (Illegal instruction) @ 0 (0) ---
+++ killed by SIGILL +++
Illegal instruction

No clue. Under gdb:


Starting program: /tmp/usr/bin/niReg 
[Thread debugging using libthread_db enabled]

Program received signal SIGILL, Illegal instruction.
0xb7f97b04 in ?? () from /usr/lib/libOpenNI.so

Oh .. that's clearer. It's in openni.so. I'm going to make sure I
get the right libOpenNI.so  by setting LD_LIBRARY_PATH:

ldd ./usr/bin/niReg
        linux-gate.so.1 =>  (0xffffe000)
        libOpenNI.so => /tmp/usr/lib/libOpenNI.so (0xb772b000)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
        libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb7612000)
        libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb75eb000)
        libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb75ce000)
        libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb7474000)
        libusb-1.0.so.0 => /lib/libusb-1.0.so.0 (0xb7468000)
        libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xb7464000)
        librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xb745a000)
        /lib/ld-linux.so.2 (0xb7790000)
        libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 
(0xb7441000)

so it's certainly the library. Gdb seems to think it is in

 #1  0xb7f88e6f in xnAllocateBaseNode () from /tmp/usr/lib/libOpenNI.so
 #0  0xb7f97b04 in ?? () from /tmp/usr/lib/libOpenNI.so

Hmm .. the source says:

Release Notes:
--------------
* At the moment, the default is to compile the code with SSE3 support
* (this is also true for the supplied binaries). 
  If you have a CPU without such support, please remove the sse
  compiler flags from the make files.
    (A good hint for this error is that you encounter an "illegal
    instructions" messages)

So .. that's the bet. Yes, the Makefiles have the flags ... 

 ./Platform/Linux-x86/Build/Modules/nimRecorder/Makefile:CFLAGS+=-O3 -msse2
 ./Platform/Linux-x86/Build/Modules/nimCodecs/Makefile:CFLAGS+=-O3 -msse2
 ./Platform/Linux-x86/Build/Modules/nimMockNodes/Makefile:CFLAGS+=-O3 -msse2

Moving to -O2 and nothing.


I modified the debian-blah patch. That's where the -msse2 stuff is
coming from. And there's an SSE_GENERATION in the CommonMakefile.
That needs fixing too. It reports an error when SSE_GENERATION is
unset, which is WHAT I WANT.

All fixed.

Unpacking replacement openni-dev ...
Setting up openni-dev (1.1.0.41-5+natty1) ...

Regards

Peter



-- System Information:
LSB Version:    
core-2.0-ia32:core-2.0-noarch:core-3.0-ia32:core-3.0-noarch:core-3.1-ia32:core-3.1-noarch:core-3.2-ia32:core-3.2-noarch:cxx-3.0-ia32:cxx-3.0-noarch:cxx-3.1-ia32:cxx-3.1-noarch:cxx-3.2-ia32:cxx-3.2-noarch:desktop-3.1-ia32:desktop-3.1-noarch:desktop-3.2-ia32:desktop-3.2-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch:graphics-3.2-ia32:graphics-3.2-noarch:languages-3.2-ia32:languages-3.2-noarch:multimedia-3.2-ia32:multimedia-3.2-noarch:printing-3.2-ia32:printing-3.2-noarch:qt4-3.1-ia32:qt4-3.1-noarch
Distributor ID: Ubuntu (nah .. I 'graded to debian immediately after install 
years ago .. dunno where it gets it from).
Description:    Ubuntu 8.04.1 (nahhhhh - where IS this from!).
Release:        8.04
Codename:       hardy
Architecture: i386 (i686)

Kernel: Linux 2.6.38.8-SMP (SMP w/1 CPU core; PREEMPT)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) (ignored: LC_ALL set to C)
Shell: /bin/sh linked to /bin/bash

Versions of packages openni-dev depends on:
ii  libc6                         2.13-10    Embedded GNU C Library: Shared lib
ii  libgcc1                       1:4.6.1-1  GCC support library
ii  libstdc++6                    4.6.1-1    GNU Standard C++ Library v3
ii  libusb-1.0-0                  2:1.0.8-2  userspace USB programming library

openni-dev recommends no packages.

openni-dev suggests no packages.

-- no debconf information



-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to