V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Hardrain
V2EX  ›  问与答

彻底清除自行编译并通过 make install 安装的包?

  •  
  •   Hardrain · 2016-12-10 09:25:33 +08:00 · 3567 次点击
    这是一个创建于 2897 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Ubuntu 16.04
    自己编译安装了一个 OpenSSL 1.1.0c ./configure 没指定--prefix
    所以完全不知道安装到了哪里.

    后来发现这个版本没有 3DES 的 Cipher(一个托管在上面的网站需要)准备卸载
    不论通过 apt list --installed 还是 dpkg 都只能找到之前安装的 1.0.2j 版本
    发现似乎无解了.

    还是我应该备份站点数据和配置文件后 Reinstall OS ?
    第 1 条附言  ·  2016-12-10 11:28:06 +08:00
    谢谢大家了...
    解决了
    先 apt remove openssl 卸载由 apt 安装的 1.0.2 版本后
    使用 whereis 查找 ssl openssl 等关键字一点一点删
    然后 openssl 回车 终于发现没了
    最后再 apt install openssl.
    12 条回复    2016-12-10 11:29:51 +08:00
    adminsb
        1
    adminsb  
       2016-12-10 09:29:28 +08:00 via iPhone
    看 makefile
    Hardrain
        2
    Hardrain  
    OP
       2016-12-10 09:37:53 +08:00
    @adminsb 算是 log?
    编译的时候似乎也没指定 log ……
    htfy96
        3
    htfy96  
       2016-12-10 09:41:21 +08:00 via Android
    如果有 make uninstall 就用那个
    指定--prefix 再安装一遍,然后看看产生了哪些文件,对应删掉;再看看 Makefile 里改了哪些配置再还回来

    另外,这就是为什么要有 cmake, 软件包等东西的原因
    hosiet
        4
    hosiet  
       2016-12-10 09:48:49 +08:00 via Android
    对楼上表示不服, openssl 用的 Autotools 和 CMake 是一个性质的东西。只要源代码目录留着, make uninstall 就可以卸载。

    应该说这就是发行版软件包出现的原因。
    wql
        5
    wql  
       2016-12-10 09:49:32 +08:00 via Android
    默认是 /usr/local/openssl
    应当指定开启弱算法的配置指令
    wql
        6
    wql  
       2016-12-10 09:49:46 +08:00 via Android
    纠正:/usr/local/ssl
    skydiver
        7
    skydiver  
       2016-12-10 09:52:37 +08:00 via iPad
    没指定就是在 /usr/local

    有些软件再 make uninstall 一下就没了
    有些就自己删一下吧。
    htfy96
        8
    htfy96  
       2016-12-10 09:54:35 +08:00 via Android
    @hosiet 嗯…之前没看过其代码,所以
    我的意思是 cmake, 软件包 > 没有卸载办法
    你的意思是 软件包 > autotools, cmake?

    不过考虑到 CPack 的存在, CMake 也能制作软件包
    Hardrain
        9
    Hardrain  
    OP
       2016-12-10 11:25:30 +08:00
    @htfy96 可是当时并没有 cmake...
    Hardrain
        10
    Hardrain  
    OP
       2016-12-10 11:25:44 +08:00
    @htfy96 这就很麻烦了...
    hosiet
        11
    hosiet  
       2016-12-10 11:28:03 +08:00 via Android
    @htfy96 我的意思是:

    纯手写 Makefile :如果上游作者没写 uninstall target 就没法卸载,得自己找文件
    Autotools, CMake, 用心写的 Makefile : make uninstall 就可以卸载
    软件包及发行版的软件包管理系统:安装卸载不用操心,由打包者解决,只需要用发行版工具照着操作即可

    CPack 不在讨论范围内,它不属于构建系统。
    Hardrain
        12
    Hardrain  
    OP
       2016-12-10 11:29:51 +08:00
    @hosiet 其实也不知道能不能 make uninstall
    去 Google 有人提到这种方法 但是我已经把源码文件夹删了

    但是关于 cmake 安装的时候我是压根没想到.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5839 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 01:50 · PVG 09:50 · LAX 17:50 · JFK 20:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.