我需要製作一個QT應用程序才能在啓動嵌入式Linux系統時運行。我可以通過串口ttySAC0訪問系統。我嘗試將應用程序添加到inittab,它運行但tslib不工作,可能是因爲它找不到需要工作的環境變量,因爲我將這些環境變量設置爲在用戶運行後運行的/etc/.profile文件中登錄。我需要自動登錄一個用戶,這樣環境變量才能設置,以便tslib能夠工作,或者在不登錄的情況下設置這些環境變量。系統由buildroot和busybox構成。使用busybox自動登錄的嵌入式linux
回答
我已經想通了,我做了這個shell腳本:
#!/bin/sh
#
#Sets necessary environment variables and runs the desktop
#
export TSLIB_TSDEVICE=/dev/touchscreen-1wire
export TSLIB_TSEVENTTYPE=INPUT
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_PLUGINDIR=/usr/lib/ts/
export TSLIB_CONSOLEDEVICE=none
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal
export LD_LIBRARY_PATH=/usr/lib
export QTDIR=/usr/lib/qt
export QWS_MOUSE_PROTO=tslib:/dev/touchscreen-1wire
/path/to/application -qws
然後使其可執行文件:
$chmod +x startup.sh
加入這一行到inittab:
tty1::once:/path/to/startup.sh
現在,當我啓動時,應用程序運行正常與tslib,我仍然通過串行線訪問,只要我需要。
編寫一個/etc/init.d/S99myapp
腳本,在執行必要的export VARIABLE=value
命令以定義所需的所有環境變量後啓動您的應用程序。您可以在Buildroot源代碼中查找示例package/stunnel/S50stunnel
以查看initscript的示例。
我寫的rc腳本包含此命名S99exportEnvVars: #/ bin/sh的 # #出口Environmentvariables QT間期和tslib的 # 情況下, 「$ 1」 開始) 回聲「導出tslib的環境變量... 「 出口TSLIB_TSDEVICE =的/ dev /觸摸屏 - 的1-Wire 回聲 」導出QT環境變量...「 出口QTDIR =/usr/lib目錄/ QT 出口QWS_MOUSE_PROTO = tslib的是:/ dev /觸摸屏 - 的1-Wire ;; stop) ;; 重新啓動|重新加載) ;; *) 回聲「無效!」 exit 1 esac exit $? 當我重新啓動時,我得到了回顯行,這意味着腳本正在工作,但是當我登錄時,我發現沒有設置env變量。 –
這是因爲您的出口是依賴於終端的。當你將它們放在'.bashrc'文件中時,它們不會保留。 – VivienG
- 1. 在基於busybox的嵌入式linux上編寫腳本
- 2. 在嵌入式linux的busybox顯示「applet not found」
- 3. 登錄嵌入式Tomcat
- 4. 嵌入式Linux的Linux驅動程序
- 5. 是否可以通過javascript自動化嵌入式Flash登錄
- 6. 在嵌入式WebView登錄對話框中登錄facebook應用
- 7. 使用Oauth自動登錄
- 8. 使用MOBAxterm自動登錄
- 9. 使用j_security_check自動登錄
- 10. 通過Linux的PowerShell使用私鑰ssh登錄自動化?
- 11. Java:自動登錄到Windows和Linux
- 12. 在嵌入式Linux中使用ZFS
- 13. Linux busybox shell腳本html格式化
- 14. 在busybox上使用嵌入式linux上的system()時,SIGHUP信號處理程序重置爲默認值
- 15. 使用嵌入式容器測試EJB。我如何登錄?
- 16. 如何使用ssh登錄到嵌入式ubuntu服務器
- 17. 如何使用slf4j登錄嵌入式orientdb數據庫
- 18. 嵌入式linux中的PAGE_SIZE
- 19. 嵌入式Linux中的vmstat
- 20. 嵌入式linux中的Devicetree
- 21. 嵌入式linux驅動程序加載
- 22. 自動登錄的人使用電子
- 23. 自動登錄
- 24. 自動登錄
- 25. 我可以使用嵌入式系統使用登錄系統使用Django登錄和上傳數據嗎?
- 26. 使用嵌入式表格移動登記API
- 27. sed嵌入式linux命令
- 28. 嵌入式linux framebuffer旋轉
- 29. 用oauth2自動登錄
- 30. 在用戶自動登錄
Hi @ iah.vector,你可以在/etc/init.d/S99_your_script下寫一個腳本。環境變量可以在這個腳本中設置,然後你可以在後臺模式下調用你的Qt應用程序。 –