• 1.1 Rust安装


    从今天起,坚持每天学习10分钟Rust...这是一个刚兴起几年的语言,希望深入地进行学习,为什么呢,因为以下这些让人辛酸的理由.....

    最开始学习的是C++,没学太懂,之后又学了C,这时还完全对计算机语言没什么概念

    然后又学习了操作系统原理、汇编、编译原理、算法与数据结构,书看了,书后面的练习题也做了,自测考试,汇编60分,编译原理实现了一个加减乘除的小程序,算法与数据结构89分,满分都是100分,后来不学了,忘光了,这时大概有些明白操作系统是个什么东西

    再后来学习的.net,做了一个小博客网站,能发文章能评论,这中间还学习了一个VB,这个语言做window桌面开发很方便,后来觉得总是拖拉组件没意思,也就没再学习了

    然后有些迷茫了……也无法分区这些语言的差别

    然后接触到了Java,此时Java刚刚宣布可以跨平台不久,认为这是个不错的选择,深入学习了两年,工作用了三年,公司的平台是花巨资从IBM买的架构,我前两年没事就研究这个,大概在第二年时终于把主要环节弄明白了,然后自己模仿写了个小架构,此时突然有些明白了软件是用来干什么的了,大学的专业是软件工作,至到此时才理解到,软件是用来满足人们或者说市场的需求的;此时,意识到了,做程序员,就要追求代码的精益求精,要懂得规范与标准,做项目有一个好的平台架构是多么的重要,但又感觉发现的太晚了,因为自己之前并没有追求代码的精益求精,周围的人也没人关注这个东西,大家空闲时都打打游戏、看看电影或者想着怎么把个妹子之类的,感觉此时自己距离架构师的距离是十万八千里之远……此时Java还没火,个人感觉前途一片灰暗

    既然架构师这条路不好走,我选择把知识面拓展宽一些,转而去学习oracle 成为了一个oracle dba,从小弟开始,工资没涨反而降了,开始了Oracle的学习

    然后开始接触运维,做了一年后,自动化运维又火了,又学了python,辅助运维

    之后,mysql也火了,好多公司开始上mysql,然后又学习了mysql

    之后Go语言也火了,又学习了Go

    现在tidb也很火,又开始研究tidb

    ……

    总是在一个东西火的时候去学习,学差不多之后发现这东西已经大众化了,只能说是,眼界不行,视野不开阔、境界高度不够;

    但我已经在不断挑战自己了,我初次学习C++才刚学会打字,刚接触电脑没多久,还不知道word文档还有不同字体这一说,只会打开一个word打几个字,那时看C++就跟看天书一样,我去接触尝试了我之前完全没有接触过的东西,应该算是挑战,尽管它就像小时候背的诗歌一样,完全不明白其中的含义;就像我之前上Oracle培训的时候,那个水平很高的讲师讲完一个update语句在内存中数据库块及进程流转过程,我完全能明白并且复述这个过程,但讲师神秘一笑地问我,“你懂了吗?”,我说,“我懂了”,他接着肯定地说,“你不懂!” ,只是背概念和浅显地理解,那不叫懂!

    此时明白,如果你是一个不断挑战自己的人,那么你就不要把自己放在一个安逸的环境中,在你可以奋斗的年龄里,你应该去竞争激烈、平台巨大、足够前沿的公司里,要走在世界的前列!

    我就这么稀里糊涂地渡过了十载春秋……总追不上时代的步伐,希望看到这篇文章的人能从中得到一些东西,少走一些弯路

    开始Rust的学习之旅了……

    安装

    curl https://sh.rustup.rs -sSf | sh
    
    # vim /etc/profile
    export PATH=$PATH:/root/.cargo/bin

    非root用户安装配置
    export PATH=~/.cargo/bin:$PATH
    # rustc
    --version rustc 1.31.1 (b6c32da9b 2018-12-18)

    验证

    mkdir ~/projects
    cd ~/projects
    mkdir hello_world
    cd hello_world

     # cat main.rs
       fn main() {
       println!("Hello, world!");
     }

    
    # rustc main.rs 
    # ls
    main  main.rs
    # ./main 
    Hello, world!

     rust的编译需要依赖glib库,但Linux系统6与7之前的glib库变化比较大,因此,rust编译出的可执行文件,通常不能跨linux的大版本执行

    centos7上编译后在centos6上执行,报错如下

    $ ./main
    ./main: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./main)

    关于版本的解决方案:

    在开发环境中使用docker部署与线上对应的系统版本,在docker中编译后再上线

    idea中配置rust插件

    ------------------------------------------------------

    在电脑中补充安装

    rustup component add rust-src

    idea 安装rust,toml插件

    下面两个目录是自动填充的,需要将rust安装到启动idea的目录

  • 相关阅读:
    剖析下聊天室
    PHP与Nginx之间的运行机制以及原理
    Nginx源码结构
    Nginx初始化过程总结
    Nginx架构解析
    KMP && KMP求字符串循环节
    IOS开发之 ---- 苹果系统代码汉字转拼音
    jQuery--表单的过滤
    jQuery--子元素过滤
    存储过程 psal emp.sal%type是什么意思
  • 原文地址:https://www.cnblogs.com/perfei/p/10272599.html
Copyright © 2020-2023  润新知