I'll work my way backwards . Eventually I'll get there. Anyway if you need any help on adding python 3 support , I'll be more than happy to help

thanks ,
Que

On 07/10/15 20:40, Zachary Turner wrote:
When you built LLDB, did you specify a -DPYTHON_HOME=<path> on your CMake command line, and also run the install_custom_python.py script? There's a lot of steps, so it seems like almost everybody misses at least one step when doing this.

I'm actively working (as in, literally right now) on getting LLDB to work with Python 3. If all goes smoothly, hopefully all of these problems will disappear and everything will just work without any user configuration required at all.

On Wed, Oct 7, 2015 at 12:17 PM kwadwo amankwa <q...@lunarblack.com <mailto:q...@lunarblack.com>> wrote:

    Hi Zachary,

    Ok so I did end up reconfiguring it and rebuilding but that was no
    help . I then realized that I was importing python27.dll as well
    as python27_d.dll . When I rebuilt liblldb I started getting an
    single unresolved error for
    imp_Py_InitModule which I guess was the symbol for the
    Py_InitModule4 python api  which is actually a macro which is
    defined depending on a few flags . So I ended up rebuilding
    python27 and the unresolved error went away and built everything
    from scratch . The good news is that when I invoke the 'script'
    command in the lldb interpreter it doesn't crash anymore and I can
    use the python interpreter . I can even import the lldb module
without getting the embedded interpreter Import error . However I when I actually import lldb from a python module and run it with
    the standalone interpreter I still get the Import Error.  I have
    checked the PYTHONPATH which was different for the lldb embedded
    interpreter and updated the variable to contain the missing paths
    but no cigar :-( . Any suggestions ?


    On 05/10/15 21:21, Zachary Turner wrote:
    Can you try to regenerate CMake with that command line and see if
    that helps?

    On Mon, Oct 5, 2015 at 1:17 PM kwadwo amankwa <q...@lunarblack.com
    <mailto:q...@lunarblack.com>> wrote:


        No

        On 05/10/15 21:15, Zachary Turner wrote:
        Are you using -DCMAKE_BUILD_TYPE=Debug when you generate CMake?

        On Mon, Oct 5, 2015 at 1:14 PM kwadwo amankwa
        <q...@lunarblack.com <mailto:q...@lunarblack.com>> wrote:

            Thanks for the response ,  sorry for the delay. As a
            matter of fact I actually got rid of the system python
            and installed my custom version.  I do suspect it is a
            linking problem though. When I build liblldb.dll it
            always loads python27.dll instead of python27_d.dll. Do
            you happen to know where the python27 lib is specified
            as an input library because the project properties in
            liblldb does not specify it . however the linker
            complains if I don't specify the lib directory in
            'additional directories' and when I do it always links
            to the python27lib. I grepped the whole build directory
            and two files SystemInitializer.obj and
            LLDBWrapPython.obj seem to contain
            /DEFAULTLIB:python27.lib. Do you have an idea of what is
            causing the compiler to do this ?


            On 05/10/15 19:13, Zachary Turner wrote:
Ahh, I thought you were doing this from inside LLDB. There are a couple of problems:

            1) You might be running with the system Python, not the
            custom Python you built with VS2013.  What is the value
            of `sys.executable`?
            2) Even if you are running your own Python, the regular
            Python appears to be in your `sys.path`.  You will need
            to unset PYTHONPATH and PYTHONHOME from pointing to
            your system Python. PYTHONHOME should point to your
            custom Python, and PYTHONPATH should point to the
            `lib\site-packages` directory that I mentioned earlier
            in your build directory.



            On Mon, Oct 5, 2015 at 11:06 AM kwadwo amankwa
            <q...@lunarblack.com <mailto:q...@lunarblack.com>> wrote:

                here it is;

                C:\Users\redbandit\Documents\GitHub\pygui>python
                Python 2.7.10 (default, Sep 18 2015, 02:35:59) [MSC
                v.1800 64 bit (AMD64)] on win32
                Type "help", "copyright", "credits" or "license"
                for more information.
                >>> import sys
                >>> sys.path
                ['', 'C:\\Python27\\Lib',
                
'C:\\Users\\redbandit\\llvm\\build\\Debug\\lib\\site-packages\\lldb',
                'C:\\Users\\redbandit\\llvm\\build\\tools\\lldb\\scripts',
                'C:\\Users\\redbandi t\\Documents\\GitHub\\pygui',
                'C:\\Python27\\python27.zip', 'C:\\Python27\\DLLs',
                'C:\\Python27\\lib\\plat-win',
                'C:\\Python27\\lib\\lib-tk', 'C:\\Python27',
                'C:\\Python27\\li b\\site-packages']
                >>> import lldb
                Traceback (most recent call last):
                  File "<string>", line 1, in <module>
                ImportError: No module named embedded_interpreter
                >>> lldb.__file__
                
'C:\\Users\\redbandit\\llvm\\build\\tools\\lldb\\scripts\\lldb.pyc'

                >>> sys.path
                ['C:/Users/redbandit/llvm/build/Debug/lib/site-packages/lldb',
                
'C:/Users/redbandit/llvm/build/Debug/lib/site-packages/lib/site-packages',
                '', 'C:\\Python27\\Lib', 'C:\\Users\\
                redbandit\\llvm\\build\\Debug\\lib\\site-packages\\lldb',
                'C:\\Users\\redbandit\\llvm\\build\\tools\\lldb\\scripts',
                'C:\\Users\\redbandit\\Documents\\GitHub\\pygui',
                'C:\\Pyt hon27\\python27.zip',
                'C:\\Python27\\DLLs',
                'C:\\Python27\\lib\\plat-win',
                'C:\\Python27\\lib\\lib-tk', 'C:\\Python27',
                'C:\\Python27\\lib\\site-packages', '.']


                On 05/10/15 18:48, Zachary Turner wrote:
                Can you run the followign commands and paste the
                output?

                >>> import sys
                >>> sys.path
                ['D:/src/llvmbuild/ninja/bin',
                'D:/src/llvmbuild/ninja/lib/site-packages',
                'D:\\src\\llvmbuild\\ninja\\bin\\python27_d.zip',
                'C:\\Python27_LLDB\\x86\\DLLs',
                'C:\\Python27_LLDB\\x86\\lib',
                'C:\\Python27_LLDB\\x86\\lib\\plat-win',
                'C:\\Python27_LLDB\\x86\\lib\\lib-tk',
                'D:\\src\\llvmbuild\\ninja\\bin'
                , 'C:\\Python27_LLDB\\x86',
                'C:\\Python27_LLDB\\x86\\lib\\site-packages', '.']
                >>> import lldb
                >>> lldb.__file__
                'D:/src/llvmbuild/ninja/lib/site-packages\\lldb\\__init__.pyc'
                >>> sys.path
                ['D:/src/llvmbuild/ninja/bin',
                'D:/src/llvmbuild/ninja/lib/site-packages',
                'D:\\src\\llvmbuild\\ninja\\bin\\python27_d.zip',
                'C:\\Python27_LLDB\\x86\\DLLs',
                'C:\\Python27_LLDB\\x86\\lib',
                'C:\\Python27_LLDB\\x86\\lib\\plat-win',
                'C:\\Python27_LLDB\\x86\\lib\\lib-tk',
                'D:\\src\\llvmbuild\\ninja\\bin'
                , 'C:\\Python27_LLDB\\x86',
                'C:\\Python27_LLDB\\x86\\lib\\site-packages', '.']
                >>>

                and also make sure that in the same folder as your
                _lldb_d.pyd, there is an embedded_interpreter.py?

                On Mon, Oct 5, 2015 at 9:14 AM kwadwo amankwa
                <q...@lunarblack.com <mailto:q...@lunarblack.com>>
                wrote:

                    Hi Zachary,

                    thanks for the reply , I did use MSBUILD  as
                    Ninja didn't work for me on my system. As far
                    as the _lldb_d.pyd file is concerned it is
                    stored in the same place. and it is being used
                    by lldb.py because everything else works
                    besides the embedded_interpreter. That is I am
                    able to use the api from python it is just
                    that interpreter issue that comes up .

                    Cheers,
                    Que


                    On 05/10/15 16:56, Zachary Turner wrote:
                    Are you using MSBuild or Ninja to build (i.e.
                    are you clicking the Build Solution button in
                    Visual Studio or running ninja from command
                    line)?  I don't know where it puts this stuff
                    with a VS2013 build, but with a ninja build,
                    your directory will be organized like this:

                    build
                    |___bin
                         |___lldb.exe
                     |___liblldb.dll
                    |___lib
                     |___site-packages
                               |___lldb
                     |___lldb_d.pyd   // If this is a debug
                    build, lldb.pyd if release

                    I'm betting you're missing the pyd file. Can
                    you confirm? Then we can diagnose that if it
                    turns out to be the problem.

                    On Mon, Oct 5, 2015 at 5:20 AM kwadwo amankwa
                    via lldb-dev <lldb-dev@lists.llvm.org
                    <mailto:lldb-dev@lists.llvm.org>> wrote:

                        Hi guys,

                        Can someone point me in the right
                        direction on this . I have managed to
                        set up my environment on windows ,
                        compiling python2.7.10 using VS2013
                        and building llvm/lldb in VS2013. lldb
                        and all its libraries build
                        successfully so its just when I import
                        lldb into my python project I get
                        this error.

                        File "<string>", line 1, in <module>
                        Import error: No module named
                        embedded_interpreter

                          Also when I use the 'script' command in
                        the lldb interpreter , lldb
                        completely crashes with an unhandled
                        exception in the python
                        file_write  function (fileobject.c:1852)

                        n2 = fwrite(s, 1, n, f->f_fp);

                        the call to fwrite causes an access
                        violation  . My intuition tells me
                        that i'm missing  a lib or something but
                        I can't put my finger on it.
                        Please Help !


                        _______________________________________________
                        lldb-dev mailing list
                        lldb-dev@lists.llvm.org
                        <mailto:lldb-dev@lists.llvm.org>
                        http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev







_______________________________________________
lldb-dev mailing list
lldb-dev@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

Reply via email to