2017/04/17

Windows10の更新(2017年春)

2017/04/17 23時半

風呂から上がってくると、画面が薄暗くなっていて、中央にこんなダイアログが出ていた。。。

image

「設定の確認」をクリックすると、プライバシー設定の項目が5つくらい表示されて、ON/OFFできるようになっていた。
とりあえず、全部OFFにして承諾すると、バックグラウンドで何かするようなことをごにょごにょ言って、また元の画面に戻った。

 

Windows Updateの画面を見ても、タスクトレイを見ても、何かしているようには見えない。
タスクマネージャーを起動しても、何かダウンロードしている感じでもない。

うーん、なんだったのだろうか?


2017/04/18 8時半

Windows Update画面の更新ボタンを押すと、ダウンロードが始まったようだ。。。

image

日曜日にバックアップを取っているので、このまま進めてみよう。
今回のPCは、Windows標準のバックアップを使っているので、何が保存されているのかわかりづらいのだがね。

 

ダウンロードが終わると、自動的にインストール準備が始まった。
なお、これはWindows10 64bit Homeなので、Updateについては制御できないと思う。

image

 

放置して作業していると、ばーん、とダイアログが出てきた。

image

覚悟は・・・できている・・・。


30分くらい放置していると、いつの間にかアップデートが終わっていた。

 

違いはよくわからんが、アクティブ時間が18時間まで設定できるようになった。

image

 

フォントが、また細いのに戻されたから、元に戻したり。
Defenderを使っているのだが、サンプルの送信を無効にしておくと警告マークが出てくるので気持ち悪い。。ここは我慢だ。

メニューに「更新プログラムとプライバシーの設定」というのが追加されているのだけど、選択してもブラウザが開いてページに飛ぶだけだった。

 

あとは、Bash on Ubuntu on Windowsのアップデートくらいか。
valgrindやgolangがちゃんと動くようになっているとよいのだが。

Bash on Ubuntu on Windowsの、Creators Updateでの強化点&新機能【Insiders Preview版】 - Build Insider
BoWの再インストールがいるらしいが、ホームディレクトリにあるデータも消えるとは。。。
ESP8266のRTOSビルド環境や、RaspberryPiのkernelビルド環境を作っていたのだが、もう一度構築し治した方がよいだろうな。

uninstallコマンドを打つと、消えるけどよい?と確認してくれるのは親切だ。
アンインストールは、案外早く終わる。

インストールも同じようなものかと思ったが、ダウンロード後にプロンプトが出てきた。

image

えーっと、これで"y"入力するとja-JPに変更されるのか?
それとも続行して、ja-JPに変更するか聞かれるのだろうか。
あるいは、ja-JPに変更しつつ続行か。。。
じゃあ、"n"にしたらどうなるのか。。。

最初からやり直せばいいや、と"n"にすると、アカウント作成に進んだ。
アカウント作成すると、終わりだ。
Bash on Windowsのプロンプトを起動して、確認。

$ echo $LANG
en_US.UTF-8

lsすると、Esp8266などのフォルダはそのまま残っていた。
.viminfoは残っているので、最初からあったと思われる.bashrcが消えただけか。

valgrindをインストールしようとしたが怒られるので、apt update/upgradeしておく。
makeもgccもg++もないので、あれこれインストール。。。
いつも何も考えずに足りないものをインストールしているけど、build-essentialだけやっておけばよいのかも。

googletestのビルドに失敗するので、libgtest-devとgoogle-mockもinstall。
・・・だめだ。
c++11 - Converting std::__cxx11::string to std::string - Stack Overflow
ああ、gccのバージョンが変わったということか?
Makefileに-D_GLIBCXX_USE_CXX11_ABI=0を追加して、ビルドできた。

valgrindは、動いているような気がする。
これは様子見だ。
そういえば、以前はvalgrindも自分で何とかしないと行けなかったような気がするが、apt installしたもので動きそうな気配だ。


2017/04/19

前回は、_GLIBCXX_USE_CXX11_ABI=0を追加してビルドできたのだが、今日はダメだ。。。
Ubuntu16.04でもダメだった。
=1にするとビルドできたので、make cleanが中途半端な状態になっていたのかもしれない。

 

valgrindは動いているようなのだけど、私が使っているライブラリではcalloc()を内部で使っているらしく、calloc()があるとvalgrindが誤検知するというか、解放タイミングが違うために解放漏れとして検知してしまうようなのだ。

-fsanitize=leakでやるのがいいんじゃないの?というStackoverflowがあったので試したのだが、BoWではビルドできるものの実行すると固まってしまった(valgrindは使ってない)。
Ctrl+Cでもタスクマネージャーでもすぐには効いてくれず、かなり時間がかかってから停止した。
むう。。。

組み込み環境だとメモリリークのチェックは大変だから、できるだけこういう環境でチェックしておきたいのだがなあ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。