Re: [gtk-osx-users] ITSTool building error with Python built before.





On Sep 5, 2022, at 1:21 PM, Pascal <p p14 orange fr> wrote:


Le 5 sept. 2022 à 06:38, jralls ceridwen fremont ca us a écrit :

On Sep 4, 2022, at 12:04 PM, Pascal <p p14 orange fr> wrote:

Le 1 sept. 2022 à 03:06, john <jralls ceridwen us> a écrit :

On Aug 31, 2022, at 3:18 AM, Pascal <p p14 orange fr> wrote:

Le 30 août 2022 à 18:18, john <jralls ceridwen us> a écrit :

On Aug 30, 2022, at 8:31 AM, Pascal <p p14 orange fr> wrote:

Le 16 août 2022 à 22:11, John Ralls <jralls ceridwen us> a écrit :

On Aug 16, 2022, at 1:03 PM, Pascal <p p14 orange fr> wrote:

Le 16 août 2022 à 02:09, john <jralls ceridwen us> a écrit :

On Aug 15, 2022, at 9:13 AM, Pascal <p p14 orange fr> wrote:

Hello,

I've made a fresh gtk-osx install with:
jhbuild bootstrap-gtk-osx
jhbuild build pygments
jhbuild build meta-gtk-osx-bootstrap

I've got this error:

*** Configuring libxml2 *** [5/9]
...
/Users/me/2022a/src-2022/libxml2-2.9.12/configure --prefix /Users/me/2022a/xnadalib-2022 
--libdir="$JHBUILD_LIBDIR" --with-python  
--with-python-install-dir=/Users/me/2022a/xnadalib-2022/lib/python3.10/site-packages
...
*** Configuring itstool *** [7/9]
...
checking whether /Users/me/2022a/src-2022/.new_local/share/virtualenvs/etc-Mg3srn31/bin/python3 
version is >= 2.6... yes
...
checking for python module libxml2... /Users/me/2022a/src-2022/itstool-2.0.6/configure: line 
2604: 59919 Done                    echo "import $py_module"
59920 Segmentation fault: 11  | $PYTHON - >&/dev/null
not found
configure: error: Python module libxml2 is needed to run this package
*** Error during phase configure of itstool: ########## Error running 

<...>

Nothing relevant in the console but some lldb gives:

% lldb ./xnadalib-2022/bin/python3
(lldb) target create "./xnadalib-2022/bin/python3"
Current executable set to '/Users/me/2022b/xnadalib-2022/bin/python3' (x86_64).
(lldb) run
Process 12477 launched: '/Users/me/2022b/xnadalib-2022/bin/python3' (x86_64)
Python 3.10.2 (main, Aug 30 2022, 11:48:18) [Clang 13.1.6 (clang-1316.0.21.2.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
import libxml2
libpython3.10.dylib was compiled with optimization - stepping may behave oddly; variables may not be 
available.
Process 12477 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x10)
frame #0: 0x00000001039359ab libpython3.10.dylib`PyModule_Create2 [inlined] _PyInterpreterState_GET at 
pycore_pystate.h:117:20 [opt]
114       #ifdef Py_DEBUG
115           _Py_EnsureTstateNotNULL(tstate);
116       #endif
-> 117        return tstate->interp;
118       }
119       
120       
Target 0: (python3) stopped.
(lldb) frame variable 
(PyThreadState *) tstate = NULL
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x10)
* frame #0: 0x00000001039359ab libpython3.10.dylib`PyModule_Create2 [inlined] _PyInterpreterState_GET 
at pycore_pystate.h:117:20 [opt]
frame #1: 0x000000010393599d libpython3.10.dylib`PyModule_Create2(module=0x000000010313c110, 
module_api_version=1013) at moduleobject.c:176:34 [opt]
frame #2: 0x00000001031059d9 libxml2mod.so`PyInit_libxml2mod + 25
frame #3: 0x00000001006d8b72 libpython3.10.dylib`_PyImport_LoadDynamicModuleWithSpec + 530

What would you advice to go further?

Pascal,

Not The Console, /Applications/Utilities/Console.app. Select Crash Reports from the sidebar. You'll find 
a list of programs that have crashed. Double click one and it will display a nice report with a stack 
trace.

But you got there with lldb, so that's OK.

You could rebuild python with --with-pydebug. That will enable that _Py_EnsureTstateNotNULL function 
call and presumably avoid the crash. It might also provide some info about why tstate was NULL and lead 
to either a solution or at least something that you can feed back to the libxml2 folks.

Hello,

Console Crash Reports and option --with-pydebug even with -O0 -g haven't brought any more clues.

I've continued my investigations by reordering the instructions:
(building pygments e.g. python is placed after building meta-gtk-osx-bootstrap)

% jhbuild bootstrap-gtk-osx
% jhbuild build meta-gtk-osx-bootstrap
% jhbuild build pygments
% jhbuild build meta-gtk-osx-gtk3

And then no errors, good, but no explanations as well.

In that setup is libsml2 building its python bindings with the virteznv's libpython instead of the built 
one's?

I guess yes:

*** Configuring libxml2 *** [5/9]
...
/Users/me/2022c/src-2022/libxml2-2.9.12/configure --prefix /Users/me/2022c/xnadalib-2022 
--libdir="$JHBUILD_LIBDIR" --with-python  
--with-python-install-dir=/Users/me/2022c/xnadalib-2022/lib/python3.10/site-packages 
...
Found python in environment 
PYTHON=/Users/me/2022c/src-2022/.new_local/share/virtualenvs/etc-dUtCZYA0/bin/python3
Found Python version 3.10
...

That's also 3.10.2, right? So there must be something in your jhbuild environment that's causing that python 
to be different somehow. A CPython developer might be able to point you at exactly what based on the crash 
location.

Regards,
John Ralls
Pi0b@1reachD



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]