放心,這需求不是今天才出現的,有時網路上找到的lib是cpp或是python ,而又不想各別定義成不同的package,就會需要樣的應用了( 當然你也可以用ctypes來解決 python call c's dll/so ,
-------------------------------
-----------------
Q1.錯誤訊息「undefined reference to `rosidl_message_type_support_t const* rosidl_typesupport_cpp::get_message_type_support_handle<sensor_msgs::msg::Imu_<std::allocator<void> > >()' collect2: error: ld returned 1 exit status」
sol:請檢查 CMakeLists.txt 的ament_target_dependencies 及 c_cpp_properties.json includePath 及 package.xml 的 depend ,套件/路徑有沒有加入(以上述的訊息,是「sensor_msgs」套件定義漏了)
Q2.錯誤訊息「python3.8/site-packages/setuptools/dist.py:717: UserWarning: Usage of dash-separated 'script-dir' will not be supported in future versions. Please use the underscore name 'script_dir' instead 」
sol:除了要「pip install setuptools==58.2.0」把setuptools降級之外,也要把package裡的「setup.cfg」
的「script-dir」及「install-scripts」改為「script_dst」「install_script」
Q3.For python: 執行node時找不到自己定義的模組(明明colcon build都沒錯!!)
sol:請在setup.py的「data_files」裡加上「('lib/' + package_name, [package_name+'/SimpleOneTrailerSystem.py']),」
$ sudo systemctl daemon-reload $ sudo systemctl enable start_wg_vpn.service
wireguard透過wg-easy的docker化安裝,一切變得方便多了
參考這則影音,一下子就裝好了.
不過,在ubuntu client安裝時就有那麼點小麻煩了
(我們已經先用「apt install wireguard」安裝了)
以root身份(指令 sudo -i ) 在/etc/wireguard裡設定好了myWG.conf後(就是從剛才wg-easy自架的vpn server網頁加好的client定義下載的conf檔copy出來貼就好,別緊張),退駕回到正常的身份後
執行「sudo wg-quick up myWG」以啟動網路wg介面,出現以下訊息:
----------------------------
[#] ip link add myWG type wireguard
[#] wg setconf myWG /dev/fd/63
[#] ip -4 address add 10.8.0.3/24 dev myWG
[#] ip link set mtu 1420 up dev myWG
[#] resolvconf -a myWG -m 0 -x
/usr/bin/wg-quick: line 32: resolvconf: command not found
[#] ip link delete dev myWG <--網路介面被移除!!
----------------------------
這時候只要再一行指令「sudo ln -s /usr/bin/resolvectl /usr/local/bin/resolvconf」就可以解決這個問題了
參考出處在此
一起加油吧
在你把vm (ubuntu)關機,調整硬碟大小之後(如下圖步驟),空間不夠的問題就這樣完成了嗎?
不,還沒完:因為作業的是OS partition,所以有點不一樣,不能只用「Disks」或是gparted來作業
,以「Disks」而言,會「on-line shrinkig not supported (udisks-error-quark,0 )」錯誤
事實上這跟我們之前在用virtualbox的ubuntu調整partition的動作很像,參考以下步驟:
1.一樣,是去terminal,用「sudo -i」切換成root 角色
2.用「fdisk -l」(是list 的小寫L,不是數字1)查出你要調整的disk number
---舉例,以下只看「/dev/sda多少」那裡,其他的別看----
Device Start End Sectors Size Type
/dev/sda1 227328 125827071 125599744 12.9G Linux filesystem <--我們要調整大小的硬碟
/dev/sda14 2048 10239 8192 4M BIOS boot
/dev/sda15 10240 227327 217088 106M EFI System
user@server:~# parted GNU Parted 3.2 Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) resizepart Partition number? 1 <--要調整的partition number「/dev/sda1」 End? [26.8GB]? <--這地方要自己輸入,不能只按enter,
因為parted 是不知道你有多少空間可以用 (在上一個指令「fdisk -l」裡「Disk /dev/sda: 30.25 GiB」就是我們可用(用步驟1改的vdi大小)的大小,所以請在此填入32.25G)(parted) quit Information: You may need to update /etc/fstab.-----
最近剛買台新筆電,也灌了win11,可是最麻煩的中文輸入法遇到ctrl + space就切換的問題
我真的找了很多地方試了很多方法都沒解,甚至連改registry key這事都做了,還是一樣
(沒辦法,新筆電很容易按錯鍵)
好在這問題一堆人問,也有熱心人士開發出這樣tweak工具--PowerToys ,參考這裡的設定
至少解決我這手殘一族的中打打到一半出現「不知所云」的現象了
請享用
你應該知道用git clone的方式把git respostitory 複製到你的local來make & build
最近剛安裝了ubuntu22.04 x64 Desktop
找了一個舊的設備來試io,官網上是說它會出現在/dev/ttyUSB0
剛插入usb port也是有反應...只是一下子又沒反應了....應該是衝到了
這時要用這個指令「lsbus」來看看插拔前後出現了什麼差別了
重灌了ubuntu 22後,也安裝了lightdm 切換到mate desktop了 (指令「sudo apt install ubuntu-mate-desktop」)
結果裝了xrdp以xorg登入後,卻還是Gnome模式
這時,別急著又在xorg session裡又啟重lightdm去做安裝mate的動作(都已經安裝了啊)
只要4個指令就又連回去第一個xwin的session了(先切到「~/」目錄去)
------------「$」者,表示這是一行指令的開始,不要輸入---------------------------------
(所以最後那個「cat.....EOF」是在同一行的指令)
$ echo "mate-session" > ~/.xsession
$ XDG_DATA_DIRS=/usr/share/mate:/usr/share/mate:/usr/local/share
$ XDG_DATA_DIRS=${XDG_DATA_DIRS}:/usr/share:/var/lib/snapd/desktop
$ cat <<EOF > ~/.xsessionrc
export XDG_SESSION_DESKTOP=mate
export XDG_DATA_DIRS=${XDG_DATA_DIRS}
export XDG_CONFIG_DIRS=/etc/xdg/xdg-mate:/etc/xdg
EOF------------------
重開機,重登入xrdp xorg,你就可以得到mate desktop了
出處在此
一起加油了
(雖然是ubuntu 18.即便是到了ubuntu 22還適用)