【开源ace源码分析】【代挂删除源码】【萝卜影视源码安装】glib源码卸载

1.yum和apt-get的源码区别详解
2.C++ 如何加载lib?

glib源码卸载

yum和apt-get的区别详解

       yum和apt-get的区别

       一般来说著名的linux系统基本上分两大类:

       1.RedHat系列:Redhat、Centos、卸载Fedora等

       2.Debian系列:Debian、源码Ubuntu等

RedHat 系列

       1 常见的卸载安装包格式 rpm包,安装rpm包的命令是rpm -参数

       2 包管理工具 yum

       3 支持tar包

Debian系列

       1 常见的安装包格式 deb包,安装deb包的命令是dpkg -参数

       2 包管理工具 apt-get

       3 支持tar包

       tar 只是一种压缩文件格式,所以,源码它只是卸载开源ace源码分析把文件压缩打包而已。

       rpm 相当于windows中的源码安装文件,它会自动处理软件包之间的卸载依赖关系。

       优缺点来说,源码rpm一般都是卸载预先编译好的文件,它可能已经绑定到某种CPU或者发行版上面了。源码

       tar一般包括编译脚本,卸载你可以在你的源码环境下编译,所以具有通用性。卸载

       如果你的源码代挂删除源码包不想开放源代码,你可以制作成rpm,如果开源,用tar更方便了。

       tar一般都是源码打包的软件,需要自己解包,然后进行安装三部曲,./configure,萝卜影视源码安装 make, make install. 来安装软件。

       rpm是redhat公司的一种软件包管理机制,直接通过rpm命令进行安装删除等操作,最大的优点是自己内部自动处理了各种软件包可能的依赖关系。

       -------------------------------- *.rpm形式的二进制软件包[centos]

       安装:rpm -ivh *.rpm

       卸载:rpm -e packgename

       rpm -q nginx 查看是否已经安装

        升级:rpm -Uvh xxx

        查询:

       查询所有安装的包: rpm -qa

       查询某个包:rpm -qa | grep xxx

       rpm -qi xxx

       查询软件的安装路径:rpm -ql xxx

       rpm -qc xxx

       查询某个文件是那个rpm包产生:rpm -qf /etc/yum.conf

       rpm -qpi xxx

       rpm -qa|grep php 查看已安装的RMP包

       安装:rpm -ivh xxx

       移除:rpm -e xxx

       升级:rpm -Uvh xxx

       查询:

       查询所有安装的包: rpm -qa

       查询某个包:rpm -qa | grep xxx

       rpm -qi xxx

       查询软件的安装路径:rpm -ql xxx

       rpm -qc xxx

       查询某个文件是那个rpm包产生:rpm -qf /etc/yum.conf

       rpm -qpi xxx

       -------------------------------- src.rpm 源代码分发软件包的安装与卸载

       Linux软件的源代码分发是指提供了该软件所有程序源代码的发布形式,需要用户自己编译成可执行的二进制代码并进行安装,其优点是配置灵活,可以随意去掉或保留某些功能/模块,正版影视系统源码适应多种硬件/操作系统平台及编译环境,缺点是难度较大,一般不适合初学者使用。

       1、*.src.rpm形式的源代码软件包

       安装:rpm -rebuild *.src.rpm

       cd /usr/src/dist/RPMS

       rpm -ivh *.rpm

       卸载:rpm -e packgename

       说明:rpm rebuild *.src.rpm命令将源代码编译并在/usr/src/dist/RPMS下生成二进制的rpm包,然后再安装该二进制包即可。packgename如前所述。源码站2020

       --------------------------------dpkgubuntu

       dpkg -l | grep 'php' 使用dpkg -l 来查看已经安装了的软件

       dpkg 是Debian[待宾] Package 的简写。为 Debian 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自Debian的Linux 发行版都使用 dpkg,例如 Ubuntu、Knoppix 等。

       以下是一些 Dpkg 的普通用法:

       1、dpkg -i package.deb

       安装一个 Debian 软件包,如你手动下载的文件。

       2、dpkg -c package.deb

       列出 package.deb 的内容。

       3、dpkg -I package.deb

       从 package.deb 中提取包裹信息。

       4、dpkg -r package

       移除一个已安装的包裹。

       5、dpkg -P package

       完全清除一个已安装的包裹。和 remove 不同的是,remove 只是删掉数据和可执行文件,purge 另外还删除所有的配制文件。

       6、dpkg -L package

       列出 package 安装的所有文件清单。同时请看 dpkg -c 来检查一个 .deb 文件的内容。

       7、dpkg -s package

       显示已安装包裹的信息。同时请看 apt-cache 显示 Debian 存档中的包裹信息,以及 dpkg -I 来显示从一个 .deb 文件中提取的包裹信息。

       8、dpkg-reconfigure package

       重新配制一个已经安装的包裹,如果它使用的是 debconf (debconf 为包裹安装提供了一个统一的配制界面)。

       -------------------------------- 使用yum和apt-get。软件管理方法的升级.

       yum的配置文件是/etc/yum.conf

1. 我们来先讲Redhat的yum 这种高级的包管理.

       yum install gcc [centos]

       更新:yum update

       安装:yum install xxx

       移除:yum remove xxx

       清除已经安装过的档案(/var/cache/yum/):yum clean all

       搜寻:yum search xxx

       列出所有档案:yum list

       查询档案讯息:yum info xxx

       #sudo -s

       #LANG=C

       #yum -y install gcc gcc-c autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel

       用YUM安装软件包

       yum -y package_name

       命令:yum install package_name

       用YUM删除软件包

       命令:yum remove package_name

       yum -y remove ment (lib,"*.lib"),这种方法优点是可以利用条件预编译指令链接不同版本的LIB文件。因为,在Debug方式下,产生的LIB文件是Debug版本,如Regd.lib;在Release方式下,产生的LIB文件是Release版本,如Regr.lib。然后在首先要使用该函数的地方加上该LIB的头文件,如#include "..\lib.h"即可(没有头文件当然就不用了)。

       å½“应用程序对DLL的LIB文件加载后,还需要把DLL对应的头文件(*.h)包含到其中,在这个头文件中给出了DLL中定义的函数原型,然后声明

       äºŒï¼Œ 显式的运行时链接  ,(我用的是此方法) 隐式链接虽然实现较简单,但除了必须的*.dll文件外还需要DLL的*.h文件和*.lib文件,在那些只提供*.dll文件的场合就无法使用,而只能采用显式链接的方式。这种方式通过调用API函数来完成对DLL的加载与卸载,能更加有效地使用内存,在编写大型应用程序时往往采用此方式。这种方法编程具体实现步骤如下: ①使用Windows API函数Load Library或者MFC提供的AfxLoadLibrary将DLL模块映像到进程的内存空间,对DLL模块进行动态加载。 ②使用GetProcAddress函数得到要调用DLL中的函数的指针。 ③不用DLL时,用Free Library函数或者AfxFreeLibrary函数从进程的地址空间显式卸载DLL。 例:在应用程序中调用dll文件

       â€”—在应用程序中要首先装入dll后才能调用导出表中的函数,例如用mfc

       åˆ›å»ºåŸºäºŽå¯¹è¯æ¡†çš„工程test,并在对话框上放置"load"按钮,先添加装载代码。 1.首先在testdlg.cpp的首部添加变量设置代码:

       //设置全局变量glibsample用于存储dll句柄

       HINSTANCE  glibsample=null;   //如果定义成HANDLE类型,则出错

       //第二个变量showme是指向dll 库中showme()函数的指针

       typedef int(* Showme)(void);

       Showme showme;

       2.利用classwizard为"load"按钮添加装载dll的代码

       void ctestdlg::onloadbutton()

       {

       //要添加的代码如下

       if(glibsample!=NULL)

       {

       AfxMessageBox("the sample.dll has already been load.");

       return;

       }

       //装载sample.dll,未加路径,将在三个默认路径中寻找 (1)windows的系统目录:\windows\system;

       //(2)dos中path所指出的任何目录;

       //(3)程序所在的目录;

       glibsample=Loadlibrary("sample.dll");

       //返回dll中showme()函数的地址

       showme=(Showme)GetProcAddress(glibsample,"showme");

更多内容请点击【时尚】专栏

精彩资讯