2018/10/26

opencv3.4.1/opencv4 , ubuntu 18.04

install opencv4 on ubuntu18.04

follow 這一篇,修改一下 CMakeCache.txt,因為,我的cuda安裝在/usr/loca/cuda/,所以要改..
CUDA_HOST_COMPILER:FILEPATH=/usr/local/cuda/bin/gcc
NVCC 也一樣,用 /usr/local/cuda/bin/nvcc

然後,參考這一篇,加上:
CUDA_NVCC_FLAGS:STRING=--expt-relaxed-constexpr
最後他會說example link cuda error,參考 ..
把 WITH_TBB 改 OFF

... 好麻煩,,, disable CUDA 好了.. 修改 WITH_CUDA=OFF



單獨抽出 opencv build & install
clone opencv & opencv_contrib
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=~/opencv/3.4.1 -D INSTALL_C_EXAMPLE=ON -D WITH_TBB=OFF -D WITH_CUDA=OFF -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules -D BUILD_EXAMPLES=ON ..

opencv4.0.0 的話,看 CMakeList:
OCV_OPTION(OPENCV_GENERATE_PKGCONFIG  "Generate .pc file for pkg-config build tool (deprecated)" OFF )
default 是不會產生pkgconfig 的。
要的話,要自己打開。
測試在 cmake 時 define ON,結果沒有校。
要手動修改 CMakeList 的這個 option,改成 ON,然後再 cmake .....
再 make install 之後,會在 install 目錄的 lib 下有 pkgconfig folder,其中
~/opencv4inst/lib/pkgconfig$ cat opencv4.pc 
# Package Information for pkg-config

prefix=/home/charles-chang/opencv4inst
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir_old=${prefix}/include/opencv4/opencv
includedir_new=${prefix}/include/opencv4

Name: OpenCV
Description: Open Source Computer Vision Library
Version: 4.0.0
Libs: -L${exec_prefix}/lib -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dpm -lopencv_face -lopencv_fuzzy -lopencv_hdf -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_dnn -lopencv_plot -lopencv_videostab -lopencv_video -lopencv_photo -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_flann -lopencv_xphoto -lopencv_imgproc -lopencv_core
Libs.private: -ldl -lm -lpthread -lrt
Cflags: -I${includedir_old} -I${includedir_new}

2018/10/15

n450 netbook debian

install debian 9.5 stretch (amd64)
安裝選 Debian Desktop Environment
裝完就有 GUI 了。

wifi 是 RT3090 (ralink)
開啟 wifi panel,出現 "firmware missing"
在 apt/source.list 中,加non-free
apt-get update 後,search ralink,結果是 firmware-ralink
這個屬於 firmware-misc-nonfree
裝完就可以在 GUI 上開啟 wifi 了。

自動 login
是用 gdm3 (/etc/gmd3),所以開啟 daemon.conf
Enable Automatic login
..

感覺很頓,反應很慢...
改 32 bit 試試看 (i386)

一樣,裝完之後,加入non-free,安裝 firmware-ralink
chrome 因為沒有 32bit 版本,只好裝 chromium

-- 反應似乎比amd64 快一點...

另外試過 lubuntu amd64 版本,反應也不太好..
UI 字體安排很不習慣,但是是一裝好,wifi, bt, videocam 都 ready 就是。

接著安裝lenny i386 看看...

2018/10/8

follow https://wiki.libsdl.org/Installation#Linux.2FUnix 但是 用 https://github.com/SDL-mirror/SDL

裝在自己 local 的目錄:~/imageprogram/SDL:
cd SDL
mkdir build && cd build
../configure --prefix=/home/charles-chang/imageprogram/SDL
make 
make install
姊果救會裝在 --prefix 指定的 path

基本的 make options
gcc -o myprogram myprogram.c `sdl2-config --cflags --libs`

2018/10/2

windows 7, git push hang....

在windows 7 上,開啟cmd,用 git command line tool, push to remote,會hang 住。
ref:Git protocol hangs indefinitely
要加上這個設定:
git config --global sendpack.sideband false
之後就可以了。

這一篇 有詳細說明。
是 msys 的 git 有 bug,所以拿source code 來改,重 build 一次就 OK
但是他用edit hex code (exe file) 的方法...

windows 7, python 3.7 , IDLE subsubprocess cannot connect...

google 結果的確是有一堆人有這個 Error,但是大多是 python source 與 library 衝突的關係。
解法大多是把 python install 的根目錄下所有 *.py 刪除後,重新開機就可以。
但是我的python 安裝根目錄沒有 .py。

ref: 這一篇
用command line :
C:\python -m idlelib
O:\.idlerc
 Check path and permission
Exiting!
原來我得原因是 login home folder 錯誤...

開啟 cmd,用 set 命令列出所有環境變數,其中有:
HOMEDRIVE=O:

參考這一篇,環境變數可以用 SET 命令變更。
所以,開啟 command line,輸入:
C:\> SET HOMEDRIVE=C:\Users\myusername
之後再run python libidle 就正常了。

但是這樣只對那個 cmd 內的program 有效。