Find the answer to your Linux question:
Results 1 to 2 of 2
Okay, first of all, i'll apologize since i have asked this question before. But I have gained more information, and don't want to raise that old topic because it accidentally ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    May 2012
    Location
    Tampere, Finland
    Posts
    21

    Building python from source, sqlite3 not compiled.


    Okay, first of all, i'll apologize since i have asked this question before. But I have gained more information, and don't want to raise that old topic because it accidentally went to a wrong section on the forums.

    So here is the deal:

    I'm cross compiling python 2.6.6 from source for ARM. I'm using mentor CodeSourcery compiler.

    When I compile the system image in which the Python is a part of, I first construct a file structure under a temporary installation directory and finally construct an image from the structure.

    When I compile Python, I have already compiled sqlite3 for ARM and moved the /include folder (holding sqlite3.h and sqlite3.c) and /lib folder (holding the libsqlite3.so / a / so.0.8.6 /la /so.0. Shared objects), onto the temporary file structure.

    After that I modify the pythons Setup.py to search sqlite3 headers and libraries in these folders. The installation prints the :

    Code:
    sqlite3.h : version 3.6.22
    and then it prints the failed modules list, in which sqlite3 is not in.

    Still the _sqlite3.so object is not found in the build/lib.linux.XXXX/-directory after the build.

    Any ideas?

  2. #2
    Just Joined!
    Join Date
    May 2012
    Location
    Tampere, Finland
    Posts
    21
    Ok, figured this out. Somehow I did not manually compile the SO-file correctly. Got this to work like so:

    First from setup.py , I added verbose debugging enabled for sqlite3 module. This added a printout that solved the problem:

    Code:
    skipping incompatible /usr/lib/libsqlite3.so
    cannot find -sqlite3
    That made me realize that the setup.py had chosen the first path where it found any module named sqlite3, ignoring it's architecture alltogether. Removing other search paths from the setup.py, but the one i had the ARM compiled library in, made it work. The _sqlite3.so was compiled nicely with all the other modules.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •