[ 物聯網篇 ] 20 - aplay Segmentation fault

系統移植過程中發現

# cat /proc/asound/cards
 0 [Loopback       ]: Loopback - Loopback
                      Loopback 1
 1 [wm8524audio    ]: wm8524-audio - wm8524-audio
                      wm8524-audio
 2 [imxspdif       ]: imx-spdif - imx-spdif
                      imx-spdif
 3 [imxaudiomicfil ]: imx-audio-micfi - imx-audio-micfil
                      imx-audio-micfil\
                      
# cat /proc/asound/pcm
00-00: Loopback PCM : Loopback PCM : playback 8 : capture 8
00-01: Loopback PCM : Loopback PCM : playback 8 : capture 8
01-00: HiFi wm8524-hifi-0 :  : playback 1 : capture 1
02-00: S/PDIF PCM snd-soc-dummy-dai-0 :  : playback 1 : capture 1
03-00: micfil hifi snd-soc-dummy-dai-0 :  : capture 1

 aplay -L
Segmentation fault
$ aplay /tmp/test.wav
Segmentation fault

Segfault with any ALSA apps

  1. Linux 系統從32bit 升級爲64bit
  2. 起初懷疑是編譯器的問題,所以花費了很長時間排查. 想到用Yocto 中的aplay 替換排查是否是編譯器的問題,最終發現不是,一下陷入了困境.
  3. 0508晚上11點的時候,發現之前32bit 兼容64bit 運行程序的時候, Rootfs直接安裝了/lib64/ld-linux-aarch64.so.1,而目前編譯器生成的 ld-linux-aarch64.so.1 直接被它覆蓋調了。 經過調試果然是這個庫導致的
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章