qtchooser 是一套可以讓使用者選定 qt qmake 版本的 package
開發環境若有多套 Qt 同時使用中,可以快速在不同版本間切換
操作指令
1. 顯示所有支援的 qt 版本
qtchooser -list-versions
2. 查看當前支援的版本
qtchooser -print-env
輸出結果:
QT_SELECT="default"
QTTOOLDIR="/usr/lib/x86_64-linux-gnu/qt4/bin"
QTLIBDIR="/usr/lib/x86_64-linux-gnu"
3. 手動新增版本
qtchooser -install ${list 上的顯示名稱} ${qmake路徑}
例如:
qtchooser -install qt5.9.4 ~/Qt/5.9.4/gcc_64/bin/qmake
4. 指定 qtchooser 選定的版本
export QT_SELECT=qt5.9.4
# 透過 qtchooser -print-env 來確認是否有更新成功
指令 qmake 就會是對應的 qt version 的
2019年10月10日 星期四
2019年9月24日 星期二
[Valgrind 學習筆記] 初探 Valgrind
在系統上安裝 Valgrid
sudo apt-get install valgrind
執行 Valgrid
G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log $(which <program>) <arguments>
執行過程中,log 會被導出到 valgrid.log
後續再研究此 log 的內容即可
Reference:
1. Valgrind
2. Valgrind man page
3. 应用 Valgrind 发现 Linux 程序的内存问题
4. Running GLib Applications
sudo apt-get install valgrind
執行 Valgrid
G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log $(which <program>) <arguments>
執行過程中,log 會被導出到 valgrid.log
後續再研究此 log 的內容即可
Reference:
1. Valgrind
2. Valgrind man page
3. 应用 Valgrind 发现 Linux 程序的内存问题
4. Running GLib Applications
2019年3月6日 星期三
[Linux 學習筆記] 透過 command line 調整 CPU 頻率
1. 查看當前 CPU 0 的使用頻率與最大、最小頻率
# cd /sys/devices/system/cpu/cpu0/cpufreq
# cat cpuinfo_cur_freq
# cat cpuinfo_max_freq
# cat cpuinfo_min_freq
2. 查看 CPU 0 可用頻率
# cd /sys/devices/system/cpu/cpu0/cpufreq
# cat scaling_available_frequencies
==可能顯示結果==
396000 792000 996000
3. 查看 CPU 0 可用的 CPU policy
# cd /sys/devices/system/cpu/cpu0/cpufreq
# cat scaling_available_governors
==可能顯示結果==
interactive conservative ondemand userspace powersave performance
或
查看所有 CPU 當前 policy
# cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
==可能顯示結果==
powersave
powersave
powersave
powersave
4. 更改所有 CPU 當前 mode (假設有 4 顆 CPU)
# echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# echo performance > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
# echo performance > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
# echo performance > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
此時可查看 current, max, min 頻率來確認是否有更新
5. 手動更改頻率
# echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# echo 792000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
2019年2月26日 星期二
[Linux 學習筆記] 如何找到系統上所有可用 module
How to find all available modules on system
- Find those loaded module
- Use command "lsmod"
- Find a specific module name and its usage
- Check this website: LKDDb: Linux Kernel Driver DataBase
- e.g., phy_mxs_usb
- Find all modules which can be used
- cd /lib/modules/
- "uname -r"
- To check Linux kernel release
- cd 4.9.11-myimx6-g7c9eb82-dirty/
- Pick this kernel to check all available modules
- find . -name *.ko
- To list all available modules
- Reference
2019年2月25日 星期一
[Linux 學習筆記] 停用指定多核心
現今機器架構常常會使用多核心來提升效能
以我的機器為例,開啟 Linux ,透過 nproc 指令可以查詢機器上有幾個核心,顯示為 4,表示 4 核心。
再使用 htop 可以觀察當前各個核心的使用數據
2. 停用第三、第四個核心
echo 0 > /sys/devices/system/cpu/cpu2/online
echo 0 > /sys/devices/system/cpu/cpu3/online
3. 查看核心數
nproc
4. 重新啟用第三、第四個核心
echo 1 > /sys/devices/system/cpu/cpu2/online
echo 1 > /sys/devices/system/cpu/cpu3/online
有時測試上,需要在較嚴苛的環境下執行,可以透過以下指令把指定核心停用
1. 查看當前機器核心名稱
ls /sys/devices/system/cpu/
ls /sys/devices/system/cpu/
2. 停用第三、第四個核心
echo 0 > /sys/devices/system/cpu/cpu2/online
echo 0 > /sys/devices/system/cpu/cpu3/online
3. 查看核心數
nproc
4. 重新啟用第三、第四個核心
echo 1 > /sys/devices/system/cpu/cpu2/online
echo 1 > /sys/devices/system/cpu/cpu3/online
2019年1月19日 星期六
[cmake 學習筆記] 如何設定 GDB debug flag (-g)
方法一: 在 cmake 指令下增加參數
cmake -DCMAKE_BUILD_TYPE=Debug <路徑與其他參數>
或
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo <路徑與其他參數>
方法二: 修改 CMakeLists.txt
set(CMAKE_BUILD_TYPE Debug)
或
set(CMAKE_BUILD_TYPE RelWithDebInfo)
--
build type 為 Debug 會產生具有 debug symbols 與未最佳化的 code
build type 為 RelWithDebInfo 會產生具有 debug symbols 與最佳化的 code
cmake -DCMAKE_BUILD_TYPE=Debug <路徑與其他參數>
或
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo <路徑與其他參數>
方法二: 修改 CMakeLists.txt
set(CMAKE_BUILD_TYPE Debug)
或
set(CMAKE_BUILD_TYPE RelWithDebInfo)
--
build type 為 Debug 會產生具有 debug symbols 與未最佳化的 code
build type 為 RelWithDebInfo 會產生具有 debug symbols 與最佳化的 code
訂閱:
文章 (Atom)