Re: [cx-freeze-users] sqlite3
Brought to you by:
atuining
From: Anthony T. <ant...@gm...> - 2012-02-18 23:53:56
|
Hi, This is a regular problem as on Linux and other Unix like platforms you have a choice between UCS2 and UCS4 (2 byte vs 4 byte Unicode) -- and depending on which distribution you are using and how Python was built on that distribution you will have a problem. The solution is to build cx_Freeze yourself. Fortunately on Linux and other Unix like platforms this is very simple. Just go ahead and run python setup.py install Then build the executable using the newly built version of cx_Freeze and all should be well. Anthony On Sat, Feb 18, 2012 at 4:22 PM, Phil Daintree <ph...@lo...> wrote: > I get the following error when running this console application > POSLinker run through cxfeeze and would appreciate any pointers to put > me right. > > # ./POSLinker test > Traceback (most recent call last): > File > "/usr/lib/python2.6/site-packages/cx_Freeze/initscripts/Console.py", > line 27, in <module> > exec code in m.__dict__ > File "POSLinker.py", line 3, in <module> > File "/usr/lib/python2.6/sqlite3/__init__.py", line 24, in <module> > from dbapi2 import * > File "/usr/lib/python2.6/sqlite3/dbapi2.py", line 27, in <module> > from _sqlite3 import * > ImportError: /initrd/mnt/dev_save/my-applications/POSLinker/_sqlite3.so: > undefined symbol: PyUnicodeUCS2_DecodeUTF8 > > > what I did was as follows with the output from cxfreeze. > > > # cxfreeze POSLinker.py --target-dir /root/my-applications/POSLinker > creating directory /root/my-applications/POSLinker > copying /usr/lib/python2.6/site-packages/cx_Freeze/bases/Console -> > /root/my-applications/POSLinker/POSLinker > copying /usr/lib/libpython2.6.so.1.0 -> > /root/my-applications/POSLinker/libpython2.6.so.1.0 > writing zip file /root/my-applications/POSLinker/POSLinker > > Name File > ---- ---- > m StringIO > m UserDict > m __builtin__ > m __future__ /usr/lib/python2.6/__future__.py > m __main__ POSLinker.py > m _abcoll > m _bisect /usr/lib/python2.6/lib-dynload/_bisect.so > m _codecs > m _codecs_cn /usr/lib/python2.6/lib-dynload/_codecs_cn.so > m _codecs_hk /usr/lib/python2.6/lib-dynload/_codecs_hk.so > m _codecs_iso2022 > /usr/lib/python2.6/lib-dynload/_codecs_iso2022.so > m _codecs_jp /usr/lib/python2.6/lib-dynload/_codecs_jp.so > m _codecs_kr /usr/lib/python2.6/lib-dynload/_codecs_kr.so > m _codecs_tw /usr/lib/python2.6/lib-dynload/_codecs_tw.so > m _collections /usr/lib/python2.6/lib-dynload/_collections.so > m _functools /usr/lib/python2.6/lib-dynload/_functools.so > m _hashlib /usr/lib/python2.6/lib-dynload/_hashlib.so > m _heapq /usr/lib/python2.6/lib-dynload/_heapq.so > m _locale /usr/lib/python2.6/lib-dynload/_locale.so > m _multibytecodec > /usr/lib/python2.6/lib-dynload/_multibytecodec.so > m _random /usr/lib/python2.6/lib-dynload/_random.so > m _socket /usr/lib/python2.6/lib-dynload/_socket.so > m _sqlite3 /usr/lib/python2.6/lib-dynload/_sqlite3.so > m _sre > m _ssl /usr/lib/python2.6/lib-dynload/_ssl.so > m _strptime /usr/lib/python2.6/_strptime.py > m _struct /usr/lib/python2.6/lib-dynload/_struct.so > m _warnings > m abc > m array /usr/lib/python2.6/lib-dynload/array.so > m base64 > m bdb /usr/lib/python2.6/bdb.py > m binascii /usr/lib/python2.6/lib-dynload/binascii.so > m bisect /usr/lib/python2.6/bisect.py > m bz2 /usr/lib/python2.6/lib-dynload/bz2.so > m cPickle /usr/lib/python2.6/lib-dynload/cPickle.so > m cStringIO /usr/lib/python2.6/lib-dynload/cStringIO.so > m calendar /usr/lib/python2.6/calendar.py > m cmd /usr/lib/python2.6/cmd.py > m codecs > m collections /usr/lib/python2.6/collections.py > m copy > m copy_reg > m cx_Freeze__init__ > /usr/lib/python2.6/site-packages/cx_Freeze/initscripts/Console.py > m datetime /usr/lib/python2.6/lib-dynload/datetime.so > m difflib /usr/lib/python2.6/difflib.py > m dis /usr/lib/python2.6/dis.py > m doctest /usr/lib/python2.6/doctest.py > m dummy_thread /usr/lib/python2.6/dummy_thread.py > P email /usr/lib/python2.6/email/__init__.py > m email._parseaddr /usr/lib/python2.6/email/_parseaddr.py > m email.base64mime /usr/lib/python2.6/email/base64mime.py > m email.charset /usr/lib/python2.6/email/charset.py > m email.encoders /usr/lib/python2.6/email/encoders.py > m email.errors /usr/lib/python2.6/email/errors.py > m email.feedparser /usr/lib/python2.6/email/feedparser.py > m email.generator /usr/lib/python2.6/email/generator.py > m email.header /usr/lib/python2.6/email/header.py > m email.iterators /usr/lib/python2.6/email/iterators.py > m email.message /usr/lib/python2.6/email/message.py > P email.mime /usr/lib/python2.6/email/mime/__init__.py > m email.parser /usr/lib/python2.6/email/parser.py > m email.quoprimime /usr/lib/python2.6/email/quoprimime.py > m email.utils /usr/lib/python2.6/email/utils.py > P encodings > m encodings.aliases > m encodings.ascii > m encodings.base64_codec > m encodings.big5 > m encodings.big5hkscs > m encodings.bz2_codec > m encodings.charmap > m encodings.cp037 > m encodings.cp1006 > m encodings.cp1026 > m encodings.cp1140 > m encodings.cp1250 > m encodings.cp1251 > m encodings.cp1252 > m encodings.cp1253 > m encodings.cp1254 > m encodings.cp1255 > m encodings.cp1256 > m encodings.cp1257 > m encodings.cp1258 > m encodings.cp424 > m encodings.cp437 > m encodings.cp500 > m encodings.cp737 > m encodings.cp775 > m encodings.cp850 > m encodings.cp852 > m encodings.cp855 > m encodings.cp856 > m encodings.cp857 > m encodings.cp860 > m encodings.cp861 > m encodings.cp862 > m encodings.cp863 > m encodings.cp864 > m encodings.cp865 > m encodings.cp866 > m encodings.cp869 > m encodings.cp874 > m encodings.cp875 > m encodings.cp932 > m encodings.cp949 > m encodings.cp950 > m encodings.euc_jis_2004 > m encodings.euc_jisx0213 > m encodings.euc_jp > m encodings.euc_kr > m encodings.gb18030 > m encodings.gb2312 > m encodings.gbk > m encodings.hex_codec > m encodings.hp_roman8 > m encodings.hz > m encodings.idna > m encodings.iso2022_jp > m encodings.iso2022_jp_1 > m encodings.iso2022_jp_2 > m encodings.iso2022_jp_2004 > m encodings.iso2022_jp_3 > m encodings.iso2022_jp_ext > m encodings.iso2022_kr > m encodings.iso8859_1 > m encodings.iso8859_10 > m encodings.iso8859_11 > m encodings.iso8859_13 > m encodings.iso8859_14 > m encodings.iso8859_15 > m encodings.iso8859_16 > m encodings.iso8859_2 > m encodings.iso8859_3 > m encodings.iso8859_4 > m encodings.iso8859_5 > m encodings.iso8859_6 > m encodings.iso8859_7 > m encodings.iso8859_8 > m encodings.iso8859_9 > m encodings.johab > m encodings.koi8_r > m encodings.koi8_u > m encodings.latin_1 > m encodings.mac_arabic > m encodings.mac_centeuro > m encodings.mac_croatian > m encodings.mac_cyrillic > m encodings.mac_farsi > m encodings.mac_greek > m encodings.mac_iceland > m encodings.mac_latin2 > m encodings.mac_roman > m encodings.mac_romanian > m encodings.mac_turkish > m encodings.mbcs > m encodings.palmos > m encodings.ptcp154 > m encodings.punycode > m encodings.quopri_codec > m encodings.raw_unicode_escape > m encodings.rot_13 > m encodings.shift_jis > m encodings.shift_jis_2004 > m encodings.shift_jisx0213 > m encodings.string_escape > m encodings.tis_620 > m encodings.undefined > m encodings.unicode_escape > m encodings.unicode_internal > m encodings.utf_16 > m encodings.utf_16_be > m encodings.utf_16_le > m encodings.utf_32 > m encodings.utf_32_be > m encodings.utf_32_le > m encodings.utf_7 > m encodings.utf_8 > m encodings.utf_8_sig > m encodings.uu_codec > m encodings.zlib_codec > m errno > m fcntl /usr/lib/python2.6/lib-dynload/fcntl.so > m fnmatch /usr/lib/python2.6/fnmatch.py > m ftplib /usr/lib/python2.6/ftplib.py > m functools /usr/lib/python2.6/functools.py > m genericpath > m getopt /usr/lib/python2.6/getopt.py > m getpass /usr/lib/python2.6/getpass.py > m gettext /usr/lib/python2.6/gettext.py > m hashlib /usr/lib/python2.6/hashlib.py > m heapq /usr/lib/python2.6/heapq.py > m httplib /usr/lib/python2.6/httplib.py > m imp > m inspect /usr/lib/python2.6/inspect.py > m itertools /usr/lib/python2.6/lib-dynload/itertools.so > m keyword /usr/lib/python2.6/keyword.py > m linecache > m locale /usr/lib/python2.6/locale.py > m math /usr/lib/python2.6/lib-dynload/math.so > m mimetools /usr/lib/python2.6/mimetools.py > m mimetypes /usr/lib/python2.6/mimetypes.py > m opcode /usr/lib/python2.6/opcode.py > m operator /usr/lib/python2.6/lib-dynload/operator.so > m optparse /usr/lib/python2.6/optparse.py > m os > m pdb /usr/lib/python2.6/pdb.py > m posix > m posixpath > m pprint /usr/lib/python2.6/pprint.py > m pwd > m pyexpat /usr/lib/python2.6/lib-dynload/pyexpat.so > m quopri > m random /usr/lib/python2.6/random.py > m re /usr/lib/python2.6/re.py > m readline /usr/lib/python2.6/lib-dynload/readline.so > m repr > m rfc822 /usr/lib/python2.6/rfc822.py > m shlex /usr/lib/python2.6/shlex.py > m socket /usr/lib/python2.6/socket.py > P sqlite3 /usr/lib/python2.6/sqlite3/__init__.py > m sqlite3.dbapi2 /usr/lib/python2.6/sqlite3/dbapi2.py > m sre_compile /usr/lib/python2.6/sre_compile.py > m sre_constants /usr/lib/python2.6/sre_constants.py > m sre_parse /usr/lib/python2.6/sre_parse.py > m ssl /usr/lib/python2.6/ssl.py > m stat > m string /usr/lib/python2.6/string.py > m stringprep > m strop /usr/lib/python2.6/lib-dynload/strop.so > m struct > m sys > m tempfile /usr/lib/python2.6/tempfile.py > m termios /usr/lib/python2.6/lib-dynload/termios.so > m textwrap /usr/lib/python2.6/textwrap.py > m thread > m time /usr/lib/python2.6/lib-dynload/time.so > m token /usr/lib/python2.6/token.py > m tokenize /usr/lib/python2.6/tokenize.py > m traceback > m types > m unicodedata /usr/lib/python2.6/lib-dynload/unicodedata.so > m unittest /usr/lib/python2.6/unittest.py > m urllib /usr/lib/python2.6/urllib.py > m urlparse /usr/lib/python2.6/urlparse.py > m uu /usr/lib/python2.6/uu.py > m warnings > P xml /usr/lib/python2.6/xml/__init__.py > P xml.parsers /usr/lib/python2.6/xml/parsers/__init__.py > m xml.parsers.expat /usr/lib/python2.6/xml/parsers/expat.py > m xmllib /usr/lib/python2.6/xmllib.py > m xmlrpclib /usr/lib/python2.6/xmlrpclib.py > m zipimport > m zlib /usr/lib/python2.6/lib-dynload/zlib.so > > Missing modules: > ? _md5 imported from hashlib > ? _sha imported from hashlib > ? _sha256 imported from hashlib > ? _sha512 imported from hashlib > > copying /usr/lib/python2.6/lib-dynload/_bisect.so -> > /root/my-applications/POSLinker/_bisect.so > copying /usr/lib/python2.6/lib-dynload/_codecs_cn.so -> > /root/my-applications/POSLinker/_codecs_cn.so > copying /usr/lib/python2.6/lib-dynload/_codecs_hk.so -> > /root/my-applications/POSLinker/_codecs_hk.so > copying /usr/lib/python2.6/lib-dynload/_codecs_iso2022.so -> > /root/my-applications/POSLinker/_codecs_iso2022.so > copying /usr/lib/python2.6/lib-dynload/_codecs_jp.so -> > /root/my-applications/POSLinker/_codecs_jp.so > copying /usr/lib/python2.6/lib-dynload/_codecs_kr.so -> > /root/my-applications/POSLinker/_codecs_kr.so > copying /usr/lib/python2.6/lib-dynload/_codecs_tw.so -> > /root/my-applications/POSLinker/_codecs_tw.so > copying /usr/lib/python2.6/lib-dynload/_collections.so -> > /root/my-applications/POSLinker/_collections.so > copying /usr/lib/python2.6/lib-dynload/_functools.so -> > /root/my-applications/POSLinker/_functools.so > copying /usr/lib/python2.6/lib-dynload/_hashlib.so -> > /root/my-applications/POSLinker/_hashlib.so > copying /usr/lib/python2.6/lib-dynload/_heapq.so -> > /root/my-applications/POSLinker/_heapq.so > copying /usr/lib/python2.6/lib-dynload/_locale.so -> > /root/my-applications/POSLinker/_locale.so > copying /usr/lib/python2.6/lib-dynload/_multibytecodec.so -> > /root/my-applications/POSLinker/_multibytecodec.so > copying /usr/lib/python2.6/lib-dynload/_random.so -> > /root/my-applications/POSLinker/_random.so > copying /usr/lib/python2.6/lib-dynload/_socket.so -> > /root/my-applications/POSLinker/_socket.so > copying /usr/lib/python2.6/lib-dynload/_sqlite3.so -> > /root/my-applications/POSLinker/_sqlite3.so > copying /usr/lib/python2.6/lib-dynload/_ssl.so -> > /root/my-applications/POSLinker/_ssl.so > copying /usr/lib/python2.6/lib-dynload/_struct.so -> > /root/my-applications/POSLinker/_struct.so > copying /usr/lib/python2.6/lib-dynload/array.so -> > /root/my-applications/POSLinker/array.so > copying /usr/lib/python2.6/lib-dynload/binascii.so -> > /root/my-applications/POSLinker/binascii.so > copying /usr/lib/python2.6/lib-dynload/bz2.so -> > /root/my-applications/POSLinker/bz2.so > copying /usr/lib/python2.6/lib-dynload/cPickle.so -> > /root/my-applications/POSLinker/cPickle.so > copying /usr/lib/python2.6/lib-dynload/cStringIO.so -> > /root/my-applications/POSLinker/cStringIO.so > copying /usr/lib/python2.6/lib-dynload/datetime.so -> > /root/my-applications/POSLinker/datetime.so > copying /usr/lib/python2.6/lib-dynload/fcntl.so -> > /root/my-applications/POSLinker/fcntl.so > copying /usr/lib/python2.6/lib-dynload/itertools.so -> > /root/my-applications/POSLinker/itertools.so > copying /usr/lib/python2.6/lib-dynload/math.so -> > /root/my-applications/POSLinker/math.so > copying /usr/lib/python2.6/lib-dynload/operator.so -> > /root/my-applications/POSLinker/operator.so > copying /usr/lib/python2.6/lib-dynload/pyexpat.so -> > /root/my-applications/POSLinker/pyexpat.so > copying /usr/lib/python2.6/lib-dynload/readline.so -> > /root/my-applications/POSLinker/readline.so > copying /usr/lib/python2.6/lib-dynload/strop.so -> > /root/my-applications/POSLinker/strop.so > copying /usr/lib/python2.6/lib-dynload/termios.so -> > /root/my-applications/POSLinker/termios.so > copying /usr/lib/python2.6/lib-dynload/time.so -> > /root/my-applications/POSLinker/time.so > copying /usr/lib/python2.6/lib-dynload/unicodedata.so -> > /root/my-applications/POSLinker/unicodedata.so > copying /usr/lib/python2.6/lib-dynload/zlib.so -> > /root/my-applications/POSLinker/zlib.so > > This is what cxfreeze created: > > # cd /root/my-applications/POSLinker > # ls > array.so _codecs_iso2022.so cStringIO.so itertools.so > POSLinker _ssl.so zlib.so > binascii.so _codecs_jp.so datetime.so libpython2.6.so.1.0 > pyexpat.so strop.so > _bisect.so _codecs_kr.so fcntl.so _locale.so > _random.so _struct.so > bz2.so _codecs_tw.so _functools.so math.so > readline.so termios.so > _codecs_cn.so _collections.so _hashlib.so _multibytecodec.so > _socket.so time.so > _codecs_hk.so cPickle.so _heapq.so operator.so > _sqlite3.so unicodedata.so > > > Thanks for any feedback. > > -- > Phil > > Phil Daintree > Logic Works Ltd - +64 (0)275 567890 > http://www.logicworks.co.nz > > ------------------------------------------------------------------------------ > Virtualization & Cloud Management Using Capacity Planning > Cloud computing makes use of virtualization - but cloud computing > also focuses on allowing computing to be delivered as a service. > http://www.accelacomm.com/jaw/sfnl/114/51521223/ > _______________________________________________ > cx-freeze-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-freeze-users |