所以 follow instruction .. 安裝 mono 之後,啟動 snapdragonprofiler(2021.1)...
然後就出問題...
... (SnapdragonProfiler:27412): Gtk-WARNING **: 17:08:08.793: Unable to locate theme engine in module_path: "xamarin", ================================================================= Native Crash Reporting ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. ================================================================= ================================================================= Native stacktrace: ================================================================= 0x559c168b1139 - mono : 0x559c168b14b9 - mono : 0x559c1685d7af - mono : 0x559c168aab13 - mono : 0x7f9fc5bd2b30 - /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 : 0x7f9fc5bd3fa5 - /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 : g_build_filename 0x7f9fc7b34b0a - /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 : 0x7f9fc7b37668 - /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 : gtk_rc_find_pixmap_in_path 0x7f9fc7b39b86 - /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 : 0x7f9fc7b39fb5 - /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 : 0x7f9fc7b3a2d3 - /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 : 0x7f9fc7b3a395 - /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 : gtk_rc_parse 0x406d79d3 - Unknown ================================================================= Telemetry Dumper: ================================================================= Pkilling 0x140324309710592x from 0x140324382138176x Could not exec mono-hang-watchdog, expected on path '/etc/../bin/mono-hang-watchdog' (errno 2) Entering thread summarizer pause from 0x140324382138176x Finished thread summarizer pause from 0x140324382138176x. Failed to create breadcrumb file (null)/crash_hash_0x239c436ad ...論壇上搜尋,有一些人有問題,一樣都是在 18.04 或 20.04/10...
所以,先到 tool and.. 去下載舊版.. 一樣。
所以,應該是 OS 版本的問題。
只好用 docker 來 run..
需要 X.. 跟 usb pass-through
以前還是白痴的時候試過了。
command 就照以前的 'final' 部份就行。
docker run -it --privileged -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v /dev:/dev -v ~/ddata:/data -v /sys:/sys ubuntu:16.04run 起來之後,先處理比較簡單的 usb-passthrough 部份。
因為 啟動時已經把 所有 hardware sys 都 mapping 近來了。
所以只需要安裝啟動 udev...
sudo apt-get install udev sudo /lib/systemd/systemd-udevd & sudo udevadm trigger這樣做完,插入 usb--phone,grant phone debug permission,之後就可以用 dmesg 看是不是有出現...
然後是比較麻煩的 X..
一樣,啟動時,已經將 local 的 .X11-unit 和 DISPLAY 變數 mapping 近來。
因為這個 X11 有 user permission 限制,所以在 docker container 中要件一個跟 host user 一樣的 uid/gid user..ref.
useradd -m -s /bin/bash -u 1000 charles-chang這樣做完,可以安裝 x11-apps 測試一下,先 su charles-chang (只su,環境不要切,不然 DISPLAY 變數也要export)
然後 run xeyes
之後的動作就是 follow Snapdragon-profiler 裡的 README,裝完所有 package (mono 後段 llvm check 會花比較九)。
./run_sdp.sh
就成功 啟動了,選擇 connect to device..,他會安裝一些 package 到 phone (花一點時間),之後就成功啟動...
這一篇 是 Qualcomm 的 說明:Identify Application Bottlenecks
沒有留言:
張貼留言