问题
巨硬所出的vs code的远程开发解放了大家的双手,提高了生产力,但是还是会经常抽风。。- _ -
常用模式是在客户端通过vs code的ssh-remote插件来访问linux主机下的代码,可以很方便的使用linux下的环境依赖,包括交叉编译链来完成嵌入式的工程开发。
经常遇到插件抽风导致vs code下的ssh所属环境变量和自己预期完全不一致,比如找不到交叉编译链。
解决方法
问题的根源在于VSCode Remote在登录远程服务器时,使用的是Interactive login的方式,这种方式会加载/etc/profile、~/.bash_profile 、~/.bash_login /,默认并不会加载 ~/.bashrc,因此我们在bashrc中设置的环境变量也就不会在VSCode Remote中生效了。
这是通常情况,但是我发现抽风的时候并不是按这个顺序加载,而是直接加载~/.bashrc
所以需要把/etc/profile中的和PATH有关的内容手动放~/.bashrc 来绕开这个问题。