Linux下常见问题

Q: Linux 32位系统下可以执行的程序,64位系统不能执行

A:   > dpkg –add-architecture i386
      > apt install libc6:i386


Q: Linux普通用户如何安装自己的应用程序 

A: 获取源代码;常用wget/curl下载,也可以用类似apt-get source的方式获取仓库中软件源代码;
解压源代码安装包;例如对于gzip格式的tar包:tar -zxvf xxx.tar.gz;
切换到解压后的目录,运行 ./configure;./configure --help可以列出配置项,非root用户最重要的配置项是安装目录prefix,例如./configure --prefix=/path/to/bin。在无法自动找到依赖库位置的情况下,用--with-xx-dir=xxx的形式配置依赖库位置;
编译源代码并复制可执行文件到指定的安装目录:make && make install。这两条命令可以分开执行,make时指定 -j 参数并行编译,能显著减少编译耗时(单进程编译GCC需要几个小时,开启并行编译后可缩短到十几分钟);
使用export PATH=/path/to/bin:$PATH更新PATH变量。命令行窗口运行此命令只对本次会话中有效,可将其写到.bashrc或者.bash_profile中;
如果安装的是动态链接库,则需要更新动态链接库路径:export LD_LIBRARY_PATH=/path/to/library:$LD_LIBRARY_PATH。最好将此命令写在.bashrc文件中,用户下次打开会话时自动执行。

Q: 缺少libgcc_s.so.1库

A: CentOS => https://pkgs.org/ =>  rpm -ivh libgcc-4.8.5-16.el7.i686.rpm
    Ubuntu 18=> sudo apt install lib32gcc1

 

Q: Ubuntu 18 安装 32位库

A:  >su
     >dpkg --add-architecture i386
     >apt update
     >apt install libc6:i386 libstdc++6:i386
     >apt install lib32ncurses5 lib32z1

你可能感兴趣的:(Linux,Learning)