- The link to the OpenCV source files was broken
- It required a manual installation of python and cmake
- Changed many important environment variables
I decided to make a more updated blog post on the installation.
OpenShift now officially supports a python cartridge, so you do not need to
install it manually. Choose
Python 2.7 for your cartridge. Log in to your
application by using your apps ssh link. Now go into your temp directory.
1 cd $OPENSHIFT_TMP_DIR
Now download and extract OpenCV
1 2 wget http://pkgs.fedoraproject.org/repo/pkgs/opencv/OpenCV-2.4.3.tar.bz2/c0a5af4ff9d0d540684c0bf00ef35dbe/OpenCV-2.4.3.tar.bz2 tar xvf OpenCV-2.4.3.tar.bz2
Notice: This is OpenCV version
2.4.3. I only tested it on this version. Other versions might not work.
Now we need to remove some files to prevent a
Disk quota exceeded error from
1 2 3 4 5 6 7 8 9 10 rm OpenCV-2.4.3.tar.bz2 cd OpenCV-2.4.3/ rm -r 3rdparty/ rm -r android rm -r doc rm -r data rm -r ios rm -r samples rm -r apps rm README
Now we have to edit
CMakeList.txt so we do not get an error from the files we
just removed. We also need to make sure certain tests are not performed. Run
vim CMakeList.txt. You can use
:set number to show the line
numbers in vim. Now turn off regression and performance tests on lines 155-156.
It should look like this:
1 2 OCV_OPTION(BUILD_PERF_TESTS "Build performance tests" OFF IF (NOT IOS) ) OCV_OPTION(BUILD_TESTS "Build accuracy & regression tests" OFF IF (NOT IOS) )
To ensure the program does not try to access the folders we just deleted comment out lines 448-456. It should look like this:
1 2 3 4 5 6 7 8 # Generate targets for documentation #add_subdirectory(doc) # various data that is used by cv libraries and/or demo applications. #add_subdirectory(data) # extra applications #add_subdirectory(apps)
Now we need to fix the installation parameters for
OpenCV so it installs on the python already installed by OpenShift (its okay I did that for you). Make sure you care in the
1 2 3 4 5 6 7 mkdir release cd release cmake ../OpenCV-2.4.3 -D BUILD_NEW_PYTHON_SUPPORT=ON -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$OPENSHIFT_DATA_DIR -D PYTHON_LIBRARY=$LD_LIBRARY_PATH/libpython2.7.so -D CMAKE_INCLUDE_PATH=$OPENSHIFT_HOMEDIR/python/virtenv/include/python2.7 -D PYTHON_INCLUDE_DIR=$OPENSHIFT_HOMEDIR/python/virtenv/include/python2.7 -D PYTHON_PACKAGES_PATH=$OPENSHIFT_HOMEDIR/python/virtenv/lib/python2.7/site-packages -D PYTHON_EXECUTABLE=$OPENSHIFT_HOMEDIR/python/virtenv/bin/python -D WITH_OPENEXR=OFF -D BUILD_DOCS=OFF -DBUILD_SHARED_LIBS=ON .. make make install
You should get no error messages when you type
1 2 3 4 5 6 Python 2.7.8 (default, May 19 2015, 02:50:14) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import cv2 >>> print cv2.__version__ 2.4.3