107.03.31 解決 visual studio 偵測到 'RuntimeLibrary' 不符

用到瘋掉 (x
cmake 後用visual studio 2017建置發生錯誤

主要應該是下面這一坨

3>libcpmtd.lib(xdateord.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(xwctomb.obj) : error LNK2005: __Getcvt 已在 msvcprtd.lib(MSVCP140D.dll) 中定義過了
3>libcpmtd.lib(winapisupp.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlCompareStringA.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(winapinls.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlCompareStringW.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlLCMapStringW.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlLCMapStringA.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>LINK : warning LNK4098: 預設的程式庫 'LIBCMTD' 與其他使用的程式庫衝突,請使用 /NODEFAULTLIB:library

107.03.13 vim surrounder 介紹

aben20807/vim-surrounder
同樣來一篇 surrounder OuO
星星都來吧 (x

107.03.13 vim commenter 介紹

aben20807/vim-commenter
感覺就算寫了 README、寫了 doc 還是沒人看啊 QuQ
雖然在這裡介紹也差不多 QuQ
有 GitHub 的可以順手按個星星之類的,我會很感激 QuQ
不過還是想用繁體中文寫一個超完整(?)的介紹
總之,目前寫了3個 plugin 了,沒意外就各來一篇 OuO

107.03.05 manjaro sysrq | reisub 安全重新開機

主要是在 manjaro 聽 vlc 聽到一半突然當機 @@
按什麼都沒反應
按 ctrl + alt + delete 當然也是沒反應 @@
只好按著電源鍵強制關機
但是這樣頗傷電腦
所以就找到 sysrq 這個東西 OuO
它的位置跟 prt sc 同一個

107.03.02 git push 免帳號密碼 | ssh key

基本上一個環境執行一次即可
但是步驟偏多,所以還是記錄個 OuO

<注意>請在自己熟悉的環境使用 ssh key,請勿在公共電腦使用

1. 檢查 ssh key
基本上都會顯示不存在,若已有,請先備份
$ cd ~/.ssh

107.03.02 解決 ale 的 gcc 不顯示錯誤 | 把 gcc 輸出改成英文

ale 是 vim 裡好用的即時偵錯插件
以前不知道為何 ale 中的 gcc 一直不能用,所以用 clang 就解決
但是本篇要來解決 gcc 的問題 !!!!

由於都沒有報錯誤訊息所以主要能夠排除是 ale 的問題

首先關於 linter 的設定,cpp 改成使用 g++
不要因為 cpp 後面的支援寫 gcc 就用 gcc
let g:ale_linters = {
            \   'cpp': ['g++']
            \}

產生一個有錯的 .cpp 檔
$ vim t.cpp

#include 
#include 
#include 
using namespace std;

int main()
{
    here
    return 0;
}

107.03.01 manjaro caps lock 換成 esc

之前有一篇 win10 版本的
106.07.26 win10 caps lock換成esc

<注意>
並不是caps lock 和 esc 交換
而是 caps lock 換成 esc,也就是說 caps lock、esc 都是 esc

因為按習慣了所以 manjaro 也來改一下 OuO
本篇也會提到如何使用登入自動執行 .sh 檔

首先我查到使用以下指令可以把 caps lock換成esc
$ setxkbmap -option caps:escape
直接在終端機執行即可

但是重新登入之後就要再重新輸入一次
就來使用登入執行的功能

107.03.01 vim +clipboard

vim 與系統剪貼簿互通相當重要
一般從系統剪貼簿要貼到 vim 可以使用 ctrl + shift + v
而從 vim 複製到系統剪貼簿可以使用 "+y
但是後者必須 vim 有支援 clipboard

使用下面指令可以查看 vim 所支援的配置
$ vim --version
只要看剪貼簿相關可使用
$ vim --version | grep clipboard

一般安裝 vim 時 (使用下面指令) 並不能使用系統剪貼簿
$ sudo pacman -S vim
也就是說不能使用 "+y 把選取的文字複製到剪貼簿中
其 vim --version 如下,可以看到 clipboard 前方是 "-"

107.03.01 線上工具 aaencode

把 javascript 轉碼成各種顏文字
算是有加密混淆的效果吧,不過頗可愛OuO
但是字數多超多就是了
網址:http://utf-8.jp/public/aaencode.html


107.03.01 線上工具 draw.io

最好用的線上流程圖繪製工具沒有之一
網址:https://www.draw.io/

107.02.24 解決 virtualbox RTR3InitEx failed

較完整的錯誤訊息:
VirtualBox - Error In supR3HardenedMainInitRuntime
RTR3InitEx failed with rc =-1912 (rc=-1912)
如圖

107.02.24 manjaro shutter 截圖神器

內建的截圖其實已經頗強大
不過不能畫圖還是用不長久
話說原來 shutter 可以畫圖 !!!!
(我以前都不會用QuQ

安裝 shutter
$ sudo pacman -S shutter

107.02.24 修改 grub 倒數秒數

頭痛了頗久QuQ
終於可以看電腦了QuQ

一開始裝好雙系統後會使用 grub 做開機選單
但是只有 5 秒可以選擇
覺得太快所以就調成 20 秒

首先
$ sudoedit /etc/default/grub

107.02.21 linux 中文資料夾英文化

安裝中文版本的通常都有這個問題
就是 home 下的目錄都是中文的,如果要去桌面就要打中文,頗麻煩 =''=

107.02.20 manjaro 安裝中文輸入法 hime

使用 yaourt 安裝
$ yaourt hime-git

107.02.20 manjaro 安裝 yaourt

剛剛安裝了 vim (主要是因為不想用 nano)
106.02.20 manjaro 安裝 vim

開啟 /etc/pacman.conf
$ sudo vim /etc/pacman.conf

107.02.20 manjaro 安裝 vim

竟然沒有 vim @@
安裝個 OuO


$ sudo pacman -S vim 

107.02.20 manjaro win10 雙系統

說來慚愧
一直到大三才裝了雙系統
然後還沒重灌過 (有好的整理習慣就不用重灌好不好OuO
然後最近不小心看到 Manjaro 這個發行版感覺不錯就來試了

<注意>
本教學可能因為版本、環境不同而與安裝當下會有不一樣的步驟或錯誤
硬碟資料請先備份

Manjaro 版本:manjaro-kde-17.1.5-stable-x86_64
Windows 10 版本:1709 (16299.248)
硬體:筆電 (UEFI)

107.02.15 c++ template iterator

今天除夕
祝大家新年快樂啦 OuO

記錄一下把 C++ 中的 vector 函式改成 template
只改 vector 是頗容易,但是加上 iterator 就出現錯誤

原本只能使用 int 當作元素的函式
void print_vector(vector<int> a)
{
    vector<int>::iterator iter;
    for (iter = a.begin(); iter != a.end(); iter++) {
        printf("%d ", *iter);
    }
    printf("\n");
}

107.02.09 解決 clang 找不到 iostream

環境:(其他環境應該也可以用類似解法只是路徑不同要自己找一下)
Cygwin
clang++ --version:5.0.1

主要是要寫 C++ 時,ale 報錯:
([clang] 'iostream' file not found [W])
感覺是 clang 的問題,就來解決啦
p.s. 圖片中的 10055_Hashmat_the_brave_warrior 就自動換成 test 囉

^ Top