Scott Haneda talklists at
Sat Jan 23 01:39:30 PST 2010

On Jan 22, 2010, at 11:09 PM, Jasper Frumau wrote:

> On Sat, Jan 23, 2010 at 6:26 AM, Scott Haneda <talklists at> wrote:
>> Do what Daniel suggested in the beginning of this thread.
>> First, test with the full path, so run:
>> /opt/local/lib/python2.4/site-packages/django/bin/
>> startproject
>> on the command line.
> OK, I did (And read some more about $PATH):
> Jaspers-MacBook-Pro:~ jasper$ sudo
> /opt/local/lib/python2.4/site-packages/django/bin/
> sudo: /opt/local/lib/python2.4/site-packages/django/bin/
> command not found
>> If that works,

I am not sure how the command can not be found, since it was called implicitly.  How about we try a few other things, keeping in mind, I know nothing about django.

Though this is interesting:
If google auto complete is any indication that others are having the same issue, and I can estimate that those "others" are more than likely not ports users, this seems to be a Django issue.

The first hit in google:

I am not sure I agree with that solution.  Even though you do not have the Django bin in your path, we called it direct.  Lets try a different method:
$cd /opt/local/lib/python2.4/site-packages/django/bin/
$ls -la
What does that report? Just the line for '' will suffice, I want to see the permissions.

While in the above bin directory, assuming the file is +x, so the rwx's in the first column, end in an 'x', what happens when you run:
$sudo ./

If the file is not executable:
$cd /opt/local/lib/python2.4/site-packages/django/bin/
$sudo cp 
$sudo chmod +x 

Also strange, this trac note states the same about the PATH:

Looking over some more notes, it does look as though people are symbolic linking their Django stuff into some place that their PATH looks.  You may want to give this a try, since of the above links, and two more, that is working for them:

sudo ln -s /opt/local/lib/python2.4/site-packages/django/bin/ /opt/local/bin/

>> then add the django bin to your path, which is probably in one of the do
>> files in ~
>> Try this:
>> $cd ~
>> $grep PATH ~/.profile
> Jaspers-MacBook-Pro:~ jasper$ grep PATH ~/.profile
> # MacPorts Installer addition on 2009-10-20_at_13:11:20: adding an
> appropriate PATH variable for use with MacPorts.
> export PATH=/opt/local/bin:/opt/local/sbin:$PATH
> # Finished adapting your PATH environment variable for use with MacPorts.

I am not sure how I feel about altering PATH to add just a Django point to it, so the `ln -s` may be a better method, and seems to be the more suggested method.  Though from the above, we can tell that your PATH is defined in ~/.profile, which means, if you wanted to add Django's bin to that path, you would insert /opt/local/lib/python2.4/site-packages/django/bin: just before the trailing $PATH

export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/lib/python2.4/site-packages/django/bin:$PATH

>> Also try other files that start with a dot, like .bashrc
> Jaspers-MacBook-Pro:~ jasper$ grep PATH ~/.bashrc
> Jaspers-MacBook-Pro:~ jasper$ cat  ~/.bashrc
> alias mysqlstart='sudo /opt/local/bin/mysqld_safe5'
> alias mysqlstop='/opt/local/bin/mysqladmin5 -u root -p shutdown'

I just learned the other day about the `port load` and `port unload` commands, which save you the aliasing, and are quite handy.

$sudo port load mysql5
$sudo port unload mysql5

 -- same works for Apache2 also --

I imagine the same works for any "startup item" driven port software that has been installed.  Very handy indeed.

>> and .bash_profile
> Not found

There was a lengthy discussion about the difference in the various .profile, .bashrc, .bash_profile and other simialr files here on the mailing list a few months back.  I was the thread starter.  Perhaps you can find it in the archives, as I learned a ton from it.  You do not need .bash_profile though.  It was just a check to see where your PATH has been set at.

> Yes I will. Normally do so, but forgot to last night...
>> * On a side note, could one just symblink
>> /opt/local/lib/python2.4/site-packages/django/bin to /opt/local/bin and save
>> the hassle of an increasingly long PATH?  I have added apache's bin to mine,
>> and a few others.  I am not sure how I feel about the symblinking, but
>> wanted to know if it wold work.
> Well symlink as in:
> A symbolic link path2 is created to path1 (path2 is the name of the file
> created, path1 is the string
>     used in creating the symbolic link).  Either name may be an arbitrary
> path name; the files need not be
>     on the same file system.
> would be good but the real path does not seem to work either:

That could be Django specific, or permissions or execute bit issues.  It seems a common problem based on the evidence above.

> Jaspers-MacBook-Pro:~ jasper$ sudo
> /opt/local/lib/python2.4/site-packages/django/bin/
> Password:
> sudo: /opt/local/lib/python2.4/site-packages/django/bin/
> command not found
> Jaspers-MacBook-Pro:~ jasper$ sudo cd
> /opt/local/lib/python2.4/site-packages/django/bin/

I do not think you an sudo a `cd`, which is why you did not actually change directory and are still in your home dir (~).  Try `sudo -s` which will put you in a postion to not have to `sudo` every command, as well as maintain your current ENV.

> Jaspers-MacBook-Pro:~ jasper$ ls
> ABC            Downloads        Pictures        TextMate-Projects
> Apartment-One        Library            Public            Webbills
> Desktop            Movies            Sites            Webdesign
> Documents        Music            Storage  

Your `cd` command did not work.

> Jaspers-MacBook-Pro:~ jasper$ cd
> /opt/local/lib/python2.4/site-packages/django/bin/
> Jaspers-MacBook-Pro:bin jasper$ ls
> unique-messages.pyc
> __init__.pyc        daily_cleanup.pyc    make-messages.pyc
>        profiling
> compile-messages.pyc    django-admin.pyc

Ok, I guess I should have read the entire email before starting the reply :) I will leave the rest of the noise I typed above there though, as it does offer suggestions on permissions that could be related.  Ignore the bits where you have already `cd`'d into the correct directory.

> Jaspers-MacBook-Pro:bin jasper$
> -bash: command not found

This one you are probably going to need to `sudo` unless you are still in `sudo -s` which you will be able to tell because the shell will say 'root' for the username.

I would start hitting up google and also the Django mailing lists, as this is pretty clearly not a MacPorts issue, from what I can tell.

Scott * If you contact me off list replace talklists@ with scott@ * 

More information about the macports-users mailing list