Monday, May 6, 2024
 Popular · Latest · Hot · Upcoming
1
rated 0 times [  1] [ 0]  / answers: 1 / hits: 879  / 2 Years ago, fri, june 10, 2022, 12:13:29

I thought the 11.10 was supposed to have a multi architecture support but installing a 32bit .deb gives me a 'wrong architecture' error. What do I need to do to install this deb?



CrossPlatformUI-V2.1.1-Kasapa-i386-ubuntu.deb


Here is the output when I try to force the installation through the force architecture command



Selecting previously deselected package crossplatformui:i386.
(Reading database ... 186238 files and directories currently installed.)
Unpacking crossplatformui:i386 (from CrossPlatformUI-V2.1.1-Kasapa-i386-ubuntu.deb) ...
Setting up crossplatformui:i386 (2.1.1) ...
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service acpid restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop acpid ; start acpid. The restart(8) utility is also available.
acpid stop/waiting
acpid start/running, process 2569
package libqtgui4 exist
QT_VERSION = 4
make -C /lib/modules/3.0.0-12-generic/build M=/usr/local/bin/ztemtApp/zteusbserial/below2.6.27 modules
make[1]: Entering directory `/usr/src/linux-headers-3.0.0-12-generic'
CC [M] /usr/local/bin/ztemtApp/zteusbserial/below2.6.27/usb-serial.o
/usr/local/bin/ztemtApp/zteusbserial/below2.6.27/usb-serial.c:34:28: fatal error: linux/smp_lock.h: No such file or directory
compilation terminated.
make[2]: *** [/usr/local/bin/ztemtApp/zteusbserial/below2.6.27/usb-serial.o] Error 1
make[1]: *** [_module_/usr/local/bin/ztemtApp/zteusbserial/below2.6.27] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.0.0-12-generic'
make: *** [modules] Error 2
dpkg: error processing crossplatformui:i386 (--install):
subprocess installed post-installation script returned error exit status 2
Processing triggers for gnome-menus ...
Processing triggers for desktop-file-utils ...
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf.index...
Errors were encountered while processing:
crossplatformui:i386


Can someone help?


More From » 11.10

 Answers
5

It looks like a header was not found due to multi-arch changes on that. Extract the deb-file, apply fixes, rebuild the deb and install it:




  1. Change to the directory containing the debfile.

  2. Create a temporary directory for fixing stuff and move into it (the directory name was randomly chosen here):



    mkdir kasapa-deb && cd kasapa-deb

  3. Extract the control and installation files:



    dpkg --control CrossPlatformUI-V2.1.1-Kasapa-i386-ubuntu.deb
    dpkg --extract CrossPlatformUI-V2.1.1-Kasapa-i386-ubuntu.deb .

  4. Apply the fixes by editing DEBIAN/postinst. If a line with CFLAGS += does not already exists, insert (e.g. after the first commented lines, lines with leading #):



    CFLAGS += -I/usr/include/$(shell dpkg-architecture -qDEB_BUILD_MULTIARCH)


    If it does already exist, simply append the -I ... part to the existing CFLAGS line (separated with a space)


  5. While you're at it, you can make the package appear as a 64-bit one, providing that the files in the package are really 64-bit. Edit DEBIAN/control and change Architecture: i386 to Architecture: amd64.

  6. Rebuild the package, creating a new file in the parent directory:



    dpkg-deb -b . ..

  7. Install the new package:



    sudo dpkg -i ../[name of the package that was just created].deb

  8. You can remove the temporary directory now.



This is theoretically supposed to work. If the package contains binaries which are made for 32-bit, you need to install the 32-bit dependencies as well, like libc6:



sudo apt-get install libc6:i386

[#42736] Friday, June 10, 2022, 2 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
inglehare

Total Points: 330
Total Questions: 111
Total Answers: 95

Location: Sint Maarten
Member since Tue, Mar 29, 2022
2 Years ago
;