
大晚上突然有用户求救,说我们提供的Jetson Xavier NX开发套件里的64G TF卡的系统突然进不了图形界面了。

这个用户是个新用户,才买的NX开发套件,我几乎能想像得到对方的惶恐...
我们一直强调NVIDIA Jetson开发套件已经出来很多年了,而且全球已经积累了很多的使用者,系统不至于脆弱到一言不合就出问题。

于是我问对方:

用户很配合地说明了情况:

到这里,我们大概能判断出一个原因,于是我们追问了一下:

在这里,我们也很感谢这个用户很坦白地告诉了我们他做了哪些动作,有助于我们分析原因,同时提供对应的解决方案。我们也遇到过少数用户出了问题只一味地说:我什么也没做就这样了——这对于解决问题不能带来任何帮助。
所以真相浮出,如果用户已经手工装了, 还安装到默认路径了, 那我们建议就直接重新刷机. 因为大量的自带的包的依赖必然被破坏了。
在这里也是提醒广大开发者,很多开发者喜欢追新,要安装最新的版本,如果一定要尝试,那么手工装请安装到非默认路径。这个和台式机上手工更改软件版本, 然后还安装到默认目录, 破坏了依赖关系一个道理。
建议手工安装时候,./configure的那一步, 指定特定的用户目录(即: ./configure --prefix=XXXX),然后安装后, 这样就不会和系统的默认路径的python版本冲突了,以后再用pip的时候, 用--user参数指定,或者上网搜索一下, "如何将python安装到非全局目录",这样可以保持多个版本的python。
以及, 需要说明的是, 这个大部分软件, 手工安装的时候, 安装到非全局默认路径下的办法. 同时也是不需要root权限安装软件的办法. 这就和你在Windows上, 选择"安装到Program Files"(需要管理员权限, 全局), 和"仅限本用户安装(安装到AppData\Roaming下)", 这两种选项的做法, 一个道理.

更多Tips: