MacOSx에서 port 이용하여 Python Django 설치

easy_install django
pip install django…
등도 사용가능하지만.. port만을 사용해서 설치하도록 한다.
다른것들도 다 port로 설치했으니까 일관성잇게

$ sudo port selfupdate
$ sudo port install python27
$ sudo port install py-django python27-django
$ sudo port install py-django-nose python27-django-nose
$ sudo port install py-django-extensions python27-django-extensions

확인하는 방법

>>> import django
>>> print django.get_version()

여기서 안된다 보통…. no module 어쩌고 에러 발생한다.

그러면 파이썬 기본 버전을 설정해준다.

port select --list python
which will show you something like this:

Available versions for python:
    none
    python25-apple
    python26-apple
    python27 (active)
    python32
To tell Macports to use a specific version use:

port select --set python python27

이거 했는데도 안되네…urandom이 없다네…

sudo port install py27-*

….를 해버렸는데도 안되네…

sudo port install opencv

이제된다.끝.

이건 좀 다른건데... opengl설치

Installing the basics (Python 2.7.2 and OpenGL)

Install macports using the instruction on the macports site (pick the Lion dmg package)
Install python opengl for python 2.7. This will automatically build Python 2.7.2 and all dependencies. It might take a while to compile…
$ sudo port install py27-opengl
Install PyOpenGL accelerate.
$ sudo port install py27-opengl-accelerate
Change the default python interpreter (Apple) to the one from Macports.
$ sudo port select python python27
Optional packages

Cairo

$ sudo port install cairo
$ sudo port install py27-cairo

CEP 상용 및 오픈소스 제품 목록

벤더 | 제품명 | 설명
TIBCO | TIBCO BusinessEvents | 업계최고 | http://www.tibco.com/
StreamBase Systems | StreamBase CEP | 사용편리 | http://www.streambase.com/
SAP | Sybase Event Stream Processor | Sybase제품 인수 | http://www.sybase.co.kr/
Oracle | Oracle CEP | Esper기반 | http://docs.oracle.com/cd/E16764_01/doc.1111/e14476/overview.htm
IBM | InfoSphereStreams | 테러방지 목적으로 시작, 멀티미디어 스트림 프로세싱 가능 | http://www-01.ibm.com/software/kr/data/infosphere/streams/
IBM | WebSphere Business Events | – | http://en.wikipedia.org/wiki/IBM_Websphere_Business_Events
Microsoft | StreamInsight | – | ~
Informatica | RulePoint | – | ~

오픈소스 제품
에스퍼 Esper, Marketcetera, Drools, …

라이센스는 드룰즈가 상용으로 사용하기 더 좋아보이는데… 기업체들은 에스퍼를 더 선호하는 것 같다.

Python Script를 C/C++ 코드에서 실행시키기

이런 기능을 전문용어로 Embedded Python이라고 한다.

대충 이런 이름의 패키지를 설치해주면 관련 라이브러리가 함께 설치된다.
python-dev, python-devel, python2.7-dev

파이썬 도큐먼트에 친절하게도 샘플코드가 제공되고 있다.

test.c라는 파일을 생성한다.

#include <Python.h>

int main(int argc, char *argv[])
{
  Py_SetProgramName(argv[0]);  /* optional but recommended */
  Py_Initialize();
  PyRun_SimpleString("from time import time,ctime\n"
                     "print 'Today is',ctime(time())\n");
  Py_Finalize();
  return 0;
}

리눅스에서 컴파일하는건 참… 힘든일이다.

Ctrl+F5누르면 자동으로 되는거라고 배운 사람들에게는

하다보면 익숙해지겠지
오브젝트 파일까지만 생성되는거
# gcc -pthread -fno-strict-aliasing -fwrapv -Wall -Wstrict-prototypes -fPIC -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/python2.7 -c test.c -o test.o 

실행파일이 생성되는거
# gcc -I/usr/include/python2.7 ptest.c -lpython2.7

컴파일을 하고 링크를 해야되잖아… libpython2.7.so를 써야되니까 gcc에 -lpython2.7을 써주면 되는거야

 

Linux ShellScript 이용 PATH 설정하기

#!/bin/bash

export M2_HOME=/home/archmagece/apache-maven-3.0.4
export M2=$M2_HOME/bin
export PATH=$M2:$PATH

위는 메이븐 path 설정 스크립트

이걸 그냥 실행시키면 패쓰가 잡히지 않는다.

쉘스크립트에서 export가 실행되지만 이게 쉘스크립트가 종료되면서 없어지기 때문이라고 한다.

# bash setMaven.sh
# chmod 755 setMaven.sh;./setMaven.sh
# sh setMaven.sh
# chmod 755 setMaven.sh
# ./setMaven.sh
이 방법은 안되는 방법들이다. 실행은 되지만 path가 잡히지 않는다.

 

# source setMaven.sh
# . setMaven.sh
이렇게 하면 잡힌다.

쉘스크립트는 실행시키는 방식이 두 가지