読者です 読者をやめる 読者になる 読者になる

CUDA & Ubuntu16.04 環境構築

cudaの環境構築でかなり右往左往したので,メモ.

nvidiaドライバ

add-apt-repositoryでnvidiaのドライバをインストールする方法をよく見かけるが,私のやり方が悪いのか失敗した.
(多分,GFGTX-960なのにnvidia-375をインストールしてたから.
 でも,公式サイトでは,nvidia-375がレコメンドされたんだけどなぁ。。。)

まず,環境設定のソフトウェアとアップデートからインストールした方が確実であった.

[環境設定] -> [ソフトウェアとアップデート] -> [追加のドライバ] -> もともとubuntuにインストールされているドライバからnvidia-375に変更.

cuda

公式サイトからcuda-toolkitをインストール.

https://developer.nvidia.com/cuda-toolkit

debパッケージがおすすめ.ubuntuに初めからインストールされているnouveauのドライバーをblacklistに追加しないといけなくなるから.

その後,

sudo dpkg -i ダウンロードファイル.deb
sudo apt update
sudo apt install cuda

実行確認

nvidia-smi

次のようなものが出力されたらOK

続きを読む

libstdc++.so.6: version `GLIBCXX_3.4.9' not found 「エラーについて」

UbuntuにてXlinxのVivado 2016.2を使用しているのだが,以下のようなエラーが出てしまったのでメモ.

/opt/Xilinx/Vivado/2016.2/lib/lnx64.o/libstdc++.so.6: version `GLIBCXX_3.4.21` not found

どうやら自身のOSにインストールされているライブラリのバージョンが違うので次のような操作で変更する. (シンボリックリンクを貼り,バージョン変更する)

cd /usr/lib/
sudo mv libstdc++.so.6 libstdc++.so.6.ori
sudo ln -s /usr/lib/stdc++.so.6.0.21 libstdc++.so.6

Ubuntu 16.04 でlatex

sudo apt -y install texlive
sudo apt -y install texlive-lang-cjk
sudo apt-get -y install texlive-fonts-recommended texlive-fonts-extra

これらを実行してパッケージをインストール.
そして,

vim ~/.latexmkrc

私の場合,デフォルトのpdf viewerであるevinceを使用している.

#!/usr/bin/perl 
$latex         = 'platex -synctex=1 %O %S'; 
$bibtex        = 'pbibtex %O %B'; 
$dvipdf        = 'dvipdfmx %O %S'; 
$pdf_mode      = 3; # use dvipdf
$pdf_previewer = 'evince';

latexmkrc test.tex

これで,pdfが出力される.

中間ファイルは作成しないようにしていると思うが,もし中間ファイルができた場合は,

latexmkrc -c

これで削除される.

Lightlime.vimが使用できない(表示できない)

以下をvimrcに追記.

set laststatus=2
set t_Co=256

その後,ターミナルにて

export TERM=xterm-256color

Icarus Verilog 環境を整える

インストール

sudo apt install iverilog gtkwave

コンパイル

iverilog -o 出力実行ファイル ソースファイル

実行

vvp 出力実行ファイル

波形確認

gtkwave 波形ファイル

USBが認識しない場合(exfat) - Ubuntu16.04LTS

exfatでフォーマットされたUSBが認識しない場合

16.04LTSより,初期状態で追加されている

$ sudo apt-add-repository ppa+relan/exfat
$ sudo apt update

結論,これだけ,

$ sudo apt install exfat-fuse exfat-utils

vimrc -> dein.vimによる管理

Shougoさんのdeinをしようして,

$ mkdir -p ~/.vim/dein/repos/github.com/Shougo/dein.vim

$ git clone https://github.com/Shougo/dein.vim.git ~/.vim/dein/repos/github.co/Shougo/dein.vim

次に,.vimrcを設定.
例えば,

 " dein settings {{{
if &compatible
  set nocompatible
endif
" dein.vimのディレクトリ
let s:dein_dir = expand('~/.vim/dein')
let s:dein_repo_dir = s:dein_dir . '~/.vim/dein/repos/github.com/Shougo/dein.vim'

" なければgit clone
if !isdirectory(s:dein_repo_dir)
  execute '!git clone https://github.com/Shougo/dein.vim' s:dein_repo_dir
endif
execute 'set runtimepath^=' . s:dein_repo_dir

call dein#begin(s:dein_dir)

if dein#load_state(s:dein_dir)
  call dein#begin(s:dein_dir)

  " 管理するプラグインを記述したファイル
  let s:toml = '~/.dein.toml'
  let s:lazy_toml = '~/.dein_lazy.toml'
  call dein#load_toml(s:toml, {'lazy': 0})
  call dein#load_toml(s:lazy_toml, {'lazy': 1})

  call dein#end()
  call dein#save_state()
endif
" その他インストールしていないものはこちらに入れる
if dein#check_install()
  call dein#install()
endif
" }}}
filetype plugin indent on     " required!
set nocompatible

その後

$ vim ~/.dein.toml

[[plugins]]
repo = 'Shougo/dein.vim'

[[plugins]]
repo = 'thinca/vim-quickrun'

[[plugins]]
repo = 'Shougo/vimproc.vim'
build = 'make'

[[plugins]]
repo = 'Shougo/neosnippet-snippets'

[[plugins]]
repo = 'tomasr/molokai'

[[plugins]]
repo = 'Shougo/vimshell'

[[plugins]]
repo = 'Shougo/unite.vim'

[[plugins]]
repo = 'thinca/vim-quickrun'

[[plugins]]
repo = 'lervag/vimtex'

[[plugins]]
repo = 'scrooloose/nerdtree'

[[plugins]]
repo = 'tomtom/tcomment_vim'

[[plugins]]
repo = 'itchyny/lightline.vim'

$ vim ~/.dein_lazy.toml

[[plugins]]
repo = 'Shougo/neocomplete.vim'
on_i = 1

こんなかんじでおこのみで