From: Diez B. Roggisch on
Gabriel Genellina schrieb:
> En Fri, 28 Mar 2008 23:23:01 -0300, <blwatson(a)gmail.com> escribi�:
>
>> On Mar 28, 1:57 pm, "Gabriel Genellina" <gagsl-...(a)yahoo.com.ar>
>> wrote:
>>> En Fri, 28 Mar 2008 16:14:07 -0300, <blwat...(a)gmail.com> escribi�:
>>>
>>> > I am trying to install the twitter python wrapper...I got that
>>> > installed just fine, but am having serious troubles getting the
>>> > simplejson package to install. I need help diagnosing where this is
>>> > failing. I am trying to use:
>>>
>>> >http://pypi.python.org/pypi/simplejson
>>>
>>> > and I run "python setup.py build" and then "python setup.py install",
>>> > which both seem to work just fine.
>
> I tried to install the package but failed. Looks like the setup.py used
> by simplejson is broken - doesn't handle well the case when the C
> extension can't be compiled.
> When I run `python setup.py install` I got this message:
>
> building 'simplejson._speedups' extension
> **********************************************************************
> WARNING: The C extension could not be compiled, speedups are not enabled.
>
> Below is the output showing how the compilation failed:
>
> Python was built with Visual Studio version 7.1, and extensions need to
> be built
> with the same version of the compiler, but it isn't installed.
> **********************************************************************
>
> and later:
> removing simplejson.egg-info\native_libs.txt
> ...
> error: can't copy 'simplejson.egg-info\native_libs.txt': doesn't exist
> or not a regular file
>
> I suggest that you remove the simplejson-xxxxxx.egg file and delete the
> simplejson entry in easy-install.pth (both in your site-packages directory)
> Then extract the simplejson directory from inside the original .tar.gz
> archive into your site-packages directory (so you end up by example with
> a .../site-packages/simplejson/decoder.py file, among others)
> That appears to be enough; import simplejson worked fine for me.
>
> I hate those f****ng eggs. Ah, and I hate easy_install too.

This has nothing to do with setuptools or easy_install per se. The
author of simplejson tried to create a library that works with or
without a C-extension. And failed.

As your above approach fails to even *try* and compile the speedups.

Diez
From: Diez B. Roggisch on
blwatson(a)gmail.com schrieb:
> I am trying to install the twitter python wrapper...I got that
> installed just fine, but am having serious troubles getting the
> simplejson package to install. I need help diagnosing where this is
> failing. I am trying to use:
>
> http://pypi.python.org/pypi/simplejson
>
> and I run "python setup.py build" and then "python setup.py install",
> which both seem to work just fine.
>
> I tried running with easy_install, but that too is not working. I end
> up with:
>
> simplejson-1.8.1-py2.5-macosx-10.3-fat.egg
>
> in my:
>
> /Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-
> packages/
>
> I am on Mac OS X 10.5. Any help would be greatly appreciated.

Go to the turbogears file section and download an appropriate version of
simplejson:

http://www.turbogears.org/download/filelist.html

I presume sj-1.7.4 is sufficient.

Alternatively, be gentle to your unixish OS that OS X is, and install
XCode. Which will install the whole GCC chain, making your OS a
respected member of OS-community - as every system should be able to
compile C-code, in which itself has been written.

Then the install should work as well.

Diez
From: blwatson on
On Mar 29, 3:48 pm, "Diez B. Roggisch" <de...(a)nospam.web.de> wrote:
> blwat...(a)gmail.com schrieb:
>
>
>
> > I am trying to install the twitter python wrapper...I got that
> > installed just fine, but am having serious troubles getting the
> > simplejson package to install.  I need help diagnosing where this is
> > failing.  I am trying to use:
>
> >http://pypi.python.org/pypi/simplejson
>
> > and I run "python setup.py build" and then "python setup.py install",
> > which both seem to work just fine.
>
> > I tried running with easy_install, but that too is not working.  I end
> > up with:
>
> > simplejson-1.8.1-py2.5-macosx-10.3-fat.egg
>
> > in my:
>
> > /Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-
> > packages/
>
> > I am on Mac OS X 10.5.  Any help would be greatly appreciated.
>
> Go to the turbogears file section and download an appropriate version of
> simplejson:
>
> http://www.turbogears.org/download/filelist.html
>
> I presume sj-1.7.4 is sufficient.
>
> Alternatively, be gentle to your unixish OS that OS X is, and install
> XCode. Which will install the whole GCC chain, making your OS a
> respected member of OS-community - as every system should be able to
> compile C-code, in which itself has been written.
>
> Then the install should work as well.
>
> Diez

I have already installed XCode...my compiel did not break the way the
above did.

I have grabbed the .egg file for simplejson 1.7.4 for Mac OS X 10.5 at
the above link you provided - it has a simplejson dir, with the exact
files that are in my simplejson directory for 1.8.1 (except none of
my .py files have been compiled down to bytecode).

I tried to add the directory "/<somepath>/simplejson" to my sys.path
in the interpreter, hoping that the call to import simplejson would
work if the dir was there, even though simplejson.py did not exist is
that dir, but the encoder, decoder, jsonfilter and scanner .py files
were all there.

My problem is that the call "import simplejson" fails. How can I make
that call work?

Thanks in advance.

From: Gabriel Genellina on
En Sat, 29 Mar 2008 19:45:09 -0300, Diez B. Roggisch <deets(a)nospam.web.de>
escribi�:

>> I suggest that you remove the simplejson-xxxxxx.egg file and delete the
>> simplejson entry in easy-install.pth (both in your site-packages
>> directory)
>> Then extract the simplejson directory from inside the original .tar.gz
>> archive into your site-packages directory (so you end up by example with
>> a .../site-packages/simplejson/decoder.py file, among others)
>> That appears to be enough; import simplejson worked fine for me.
>>
>> I hate those f****ng eggs. Ah, and I hate easy_install too.
>
> This has nothing to do with setuptools or easy_install per se. The
> author of simplejson tried to create a library that works with or
> without a C-extension. And failed.

I think that the whole approach is doomed to fail; trying to do things
more complicated that they should be.
The pure-python part of simplejson is just a package. Copying the
directory into site-packages is *ALL* that is required; distutils can do
that perfectly. That's all folks!. A database or registry keeping track of
installed product versions might be useful, too. Anything that does much
more than that is just looking for problems; simple systems work better
than complex ones.
In this case, there is no need to create an egg, no need to play with .pth
files, no need to slow down the package at import time (eggs must be
decompressed), no need to extend sys.path and slow down *all* other
imports. I don't feel that anything is better by using eggs or
easy_install, and at least for me, they always have given more problems
than answers.
So, again, I hate eggs and easy_install. And I hate eggplants too.

--
Gabriel Genellina

From: Gabriel Genellina on
En Sat, 29 Mar 2008 20:54:36 -0300, <blwatson(a)gmail.com> escribi�:

> I tried to add the directory "/<somepath>/simplejson" to my sys.path
> in the interpreter, hoping that the call to import simplejson would
> work if the dir was there, even though simplejson.py did not exist is
> that dir, but the encoder, decoder, jsonfilter and scanner .py files
> were all there.
>
> My problem is that the call "import simplejson" fails. How can I make
> that call work?

simplejson is a package (a directory with an __init__.py), not a module;
don't look for simplejson.py
Its *parent* directory must be in sys.path for Python to find it. Try
copying the simplejson directory below site-packages (which should be
already in sys.path)

--
Gabriel Genellina