Buffer_ is not a symbol name prefix used by python.
readelf -a ./libpython2.7/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0 | grep
PyBuffer_
0000004e2b08 037400000006 R_X86_64_GLOB_DAT 0000000000540a40 PyBuffer_Type + 0
408: 0000000000175c90 381 FUNC GLOBAL DEFAULT 12
PyBuffer_FromReadWriteObj
416: 0000000000175c10 122 FUNC GLOBAL DEFAULT 12 PyBuffer_FromMemory
816: 0000000000175960 381 FUNC GLOBAL DEFAULT 12 PyBuffer_FromObject
884: 0000000000540a40 392 OBJECT GLOBAL DEFAULT 23 PyBuffer_Type
889: 0000000000052260 135 FUNC GLOBAL DEFAULT 12 PyBuffer_GetPointer
1024: 0000000000052170 82 FUNC GLOBAL DEFAULT 12 PyBuffer_Release
1084: 00000000001758c0 154 FUNC GLOBAL DEFAULT 12 PyBuffer_New
1334: 000000000005ad00 297 FUNC GLOBAL DEFAULT 12
PyBuffer_FromContiguous
1345: 0000000000175b90 122 FUNC GLOBAL DEFAULT 12
PyBuffer_FromReadWriteMem
1382: 00000000000522f0 678 FUNC GLOBAL DEFAULT 12 PyBuffer_IsContiguous
1412: 000000000005ae30 297 FUNC GLOBAL DEFAULT 12 PyBuffer_ToContiguous
1472: 00000000000521d0 132 FUNC GLOBAL DEFAULT 12
PyBuffer_FillContiguousSt
1520: 0000000000053640 182 FUNC GLOBAL DEFAULT 12 PyBuffer_FillInfo
If it was PyBuffer_ then maybe it would have come from python itself.
ujson appears to be compiled extension, did you missbuilt it?
And it itself defines this
FASTCALL_ATTR INLINE_PREFIX void FASTCALL_MSVC Buffer_AppendShortHexUnchecked
(char *outputOffset, unsigned short value)
{
*(outputOffset++) = g_hexChars[(value & 0xf000) >> 12];
*(outputOffset++) = g_hexChars[(value & 0x0f00) >> 8];
*(outputOffset++) = g_hexChars[(value & 0x00f0) >> 4];
*(outputOffset++) = g_hexChars[(value & 0x000f) >> 0];
}
Which is possibly now inlined, instead of being an exported symbol?
Compiler can choose to do that.
BTW. python-ujson is available on ubuntu bionic
$ sudo apt install python-ujson
$ python2 -c 'import ujson; print ujson'
<module 'ujson' from
'/usr/lib/python2.7/dist-packages/ujson.x86_64-linux-gnu.so'>
I am afraid this is a bug with pip's ujson, not with ubuntu's python2.
The one that we provide is the same version 1.35. Maybe you can remove
your self-built / pip install ujson and install our distro provided one
instead with sudo apt install python-ujson?
** Changed in: python2.7 (Ubuntu)
Status: Confirmed => Invalid
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1856753
Title:
python 2.7.17-1~18.04 causes ImportError in ujson.so
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python2.7/+bug/1856753/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs