linux下将程序中用到的第三方库编译到自己的程序中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下将程序中用到的第三方库编译到自己的程序中相关的知识,希望对你有一定的参考价值。
参考技术A 举例,头文件名 abc.h 函数名为 abc_test(); 第三方库头文件目录为/abc/include/ 链接库目录为/abc/lib/1、头文件和源文件:这是最好的情况,引用头文件和相关函数即可。如:#include "abc.h"abc_test();//直接调用即可编译时,Makefile中加入编译选项 -I/abc/include 为了能将库的头文件引进来。而且你的程序运行时,不再需要这个第三方库。2、静态链接库:引用头文件和相关函数,设提供的静态库名为 libabc.lib编译时,Makefile中加入 编译选项1)-I/abc/include #编译时加,为了能将库的头文件引进来;2)-L/abc/lib -labc #链接时加的而且你的程序运行时,不再需要这个第三方库。3、动态链接库,设动态链接库为libabc.so调用动态链接库文件,需要dlopen等函数编译时,Makefile中加入 编译选项1)-I/abc/include #编译时加,为了能将库的头文件引进来;2)-L/abc/lib -labc #链接时加的注意:你的程序运行时,需要这个第三方库的libabc.so文件。本回答被提问者采纳程序开发常用第三方类库一览表(VendorLib)
以下是自己开发过程中用到的第三方类库,记录下来方便查阅
---------------------------------------------------------------------------------------------------
///////////////////////////////////////////////////JAVA第三方类库///////////////////////////////////////////////
---------------------------------------------------------------------------------------------------
================Apache POI================
最新版本: 3.16
官方网站: http://poi.apache.org/
下载页面: http://poi.apache.org/download.html
软件简介: Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 Microsoft Office文档的功能。
================Apache Log4j================
最新版本: 2.8.2
官方网站: http://logging.apache.org/
下载页面: http://logging.apache.org/log4j/2.x/download.html
软件简介: Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
================Apache MINA================
最新版本: 2.0.16
官方网站: https://mina.apache.org/
下载页面: https://mina.apache.org/downloads-mina.html
软件简介: Apache MINA(Multipurpose Infrastructure for Network Applications) 是一个能够帮助用户开发高性能和高伸缩性网络应用程序的框架,它通过Java nio技术基于TCP/IP和UDP/IP协议提供了抽象的、事件驱动的、异步的API。
================DOM4J================
最新版本: 2.0.0
官方网站: https://dom4j.github.io/
下载页面: https://github.com/dom4j/dom4j
软件简介: DOM4J是dom4j.org出品的一个易用的、开源的XML解析库,用于XML,XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。
================Jackson================
最新版本: 2.9.0
官方网站: https://github.com/FasterXML/jackson-core
下载页面: https://github.com/FasterXML/jackson-core
软件简介: Jackson 是一个 Java 用来解析 JSON 格式数据的类库,性能非常好。Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。
================Jakarta Taglibs================
最新版本: 1.2.3
官方网站: http://tomcat.apache.org/taglibs/index.html
下载页面: http://tomcat.apache.org/taglibs/standard/
软件简介: Jakarta Taglibs是为JSP定制标签库和相关的项目提供的一个开源仓库,如TagLibraryValidator类,和对页面生成工具的扩展来支持标签库。Jakarta Taglibs 也包括了对JSP Standard Tag Library (JSTL)的参考实现。这个实现基于项目标准。目前,在Jakarta Taglibs中没有其它标签库代表了Java Community Process (JCP) 标准。
================JUnit================
最新版本: 4.12
官方网站: http://junit.org/junit4/
下载页面: https://github.com/junit-team/junit4
软件简介: JUnit是一个开放源代码的Java语言的单元测试框架。用于编写和运行可重复的测试。它由Kent Beck和Erich Gamma建立。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。
================MySQL ConnectorJ================
最新版本: 5.1.42
官方网站: https://dev.mysql.com/downloads/connector/j/
下载页面: https://dev.mysql.com/downloads/connector/j/
软件简介: MySQL ConnectorJ 是MySQL官方提供的用于Java语言的连接MySQL数据库的工具包。
================Microsoft SQL Server JDBC 驱动程序================
最新版本: 6.0
官方网站: https://www.microsoft.com/zh-CN/download/details.aspx?id=11774
下载页面: https://www.microsoft.com/zh-CN/download/details.aspx?id=11774
软件简介: 支持的操作系统有Linux, Unix, Windows 10 , Windows 7, Windows 8, Windows 8.1, Windows Server 2008 R2, Windows Server 2012, Windows Vista。支持的 Java 版本具体如下: Sqljdbc41.jar 需要 JRE 7 并支持 JDBC 4.1 API;Sqljdbc42.jar 需要 JRE 8 并支持 JDBC 4.2 API。受支持的 SQL Server 版本: Microsoft SQL Server 2016、Microsoft SQL Server 2014、Microsoft SQL Server 2012、Microsoft SQL Server 2008 R2、Microsoft SQL Server 2008、Azure SQL 数据库、Azure SQL 数据仓库或并行数据仓库。
================ZXing================
最新版本: 3.3.0
官方网站: https://github.com/zxing/zxing/
下载页面: https://github.com/zxing/zxing/releases
软件简介: ZXing是一个开源Java类库,用于解析多种格式的1D/2D条形码。目标是能够对QR二维码编码、Data Matrix、UPC的1D条形码进行解码。 其提供了多种平台下的客户端包括:J2ME、J2SE和Android。
---------------------------------------------------------------------------------------------------
///////////////////////////////////////////////////DotNet第三方类库///////////////////////////////////////////////
---------------------------------------------------------------------------------------------------
================https://logging.apache.org/log4net/================
最新版本: 2.0.8
官方网站: https://logging.apache.org/
下载页面: https://logging.apache.org/log4net/download_log4net.cgi
软件简介: Apache log4net是一个可以帮助程序员把日志信息输出到各种不同目标的.net类库,又简称为.net日志工具。该工具免费开源,用户利用log4net可以方便地将日志信息记录到文件、控制台、Windows事件日志和数据库(包括MS SQL Server, Access, Oracle9i,Oracle8i,DB2,SQLite)中。并且还可以记载控制要记载的日志级别,可以记载的日志类别包括:FATAL(致命错误)、ERROR(一般错误)、WARN(警告)、INFO(一般信息)、DEBUG(调试信息)。
================SharpZipLib================
最新版本: 0.86.0.518
官方网站: http://icsharpcode.github.io/SharpZipLib/
下载页面: https://github.com/icsharpcode/SharpZipLib/releases
软件简介: SharpZipLib是一个使用C#编写的开源的 .NET 压缩库,在VB.NET、C#或其他的.NET语言中都可以使用它创建Zip文件、并进行读取和更新等操作,支持 zip 以及存储和 deflate 压缩模式。
================AvalonEdit================
最新版本: 5.0.3
官方网站: https://github.com/icsharpcode/AvalonEdit
下载页面: https://github.com/icsharpcode/AvalonEdit/releases
软件简介: AvalonEdit是基于微软WPF的语法编辑器,支持语法高亮、智能提示、代码折叠、撤销&重做,另外,还支持不少快捷键。
================ICSharpCode.TextEditor================
最新版本:
官方网站: 无
下载页面: 无 (点击下载本地存档:http://files.cnblogs.com/files/sochishun/ICSharpCode.TextEditor-3.2.1.zip)
软件简介: AvalonEdit语法编辑器的前身,基于微软WinForm开发。
================EPPlus================
最新版本: 4.1
官方网站: http://epplus.codeplex.com/
下载页面: http://epplus.codeplex.com/
软件简介: EPPlus是使用Open Office XML格式(xlsx)读写Excel 2007 / 2010文件的.NET开发库,它通过Open XML方式来读写Office文件,所以使用它生成Office文件完全不需要Microsoft Office。
================FluentFTP===============
最新版本: 17.4.2
官方网站: https://github.com/hgupta9/FluentFTP
下载页面: https://github.com/hgupta9/FluentFTP/releases
软件简介: FluentFTP是一款基于.Net的支持FTP及的FTPS 的FTP类库,FluentFTP是完全托管的FTP客户端,被设计为易于使用和易于扩展。它支持文件和目录列表,上传和下载文件和SSL / TLS连接。它可以连接到Unix和Windows IIS建立FTP服务器。这个项目是完全开发托管C#。FluentFTP是MIT许可下发布许可。
================Html Agility Pack (HAP)================
最新版本: 1.4.9
官方网站: http://html-agility-pack.net/
下载页面: https://github.com/zzzprojects/html-agility-pack/releases
软件简介: HTML Agility Pack 基于.NET的HTML解析类库,由法国的一位软件架构师 Simon Mourier 所创建,并且由 DarthObiwan 以及 Jessynoo 辅助开发。HtmlAgilityPack是一个支持用XPath来解析HTML的类库,它提供了标准的DOM API 和XPath 导航--即使 HTML 不是适当的格式!它可以让剖析松散格式 HTML 的工作就像剖析 XML 一样简单,它也有类似于 System.Xml 命名空间中的 XML DOM 的许多类别,除了可以使用阶层的方式存取 HTML 以外,它也支援使用 XPath 的方式来搜寻 HTML,这会较以往使用文字比对或是 Regular Expression 的比对方式来得更明确。
================ScrapySharp================
最新版本: 2.6.2
官方网站: https://bitbucket.org/rflechner/scrapysharp/wiki/Home
下载页面: https://www.nuget.org/packages/ScrapySharp
软件简介: ScapySharp是对HTML Agility Pack的封装框架。提供一个模式真实的浏览器包装类(处理Reference,Cookie等),可以使用类似于jQuery一样的Css选择器和Linq语法。
================Microsoft Ajax Minifier================
最新版本: 5.14
官方网站: https://ajaxmin.codeplex.com/
下载页面: https://ajaxmin.codeplex.com/
软件简介: Microsoft Ajax Minifier可以对对javascript和css进行瘦身处理,减少网络流量,提高网页的下载速度。微软 AJAX Minifier可以让你提高你的Ajax应用程序的性能,减少级联样式表和JavaScript文件的大小。微软Ajax Minifier支持去除不必要的空格,注释,分号和大括号,缩短局部变量的名称,并删除不必要的代码。
================MySQL ConnectorNet================
最新版本: 6.9.9
官方网站: https://dev.mysql.com/downloads/connector/net/
下载页面: https://dev.mysql.com/downloads/connector/net/
软件简介: MySQL ConnectorNet 是MySQL官方提供的用于DotNet语言的连接MySQL数据库的工具包。
================System.Data.SQLite================
最新版本: 1.0.105.2
官方网站: http://system.data.sqlite.org/index.html/doc/trunk/www/index.wiki
下载页面: http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
软件简介: System.Data.SQLite是SQLite官方提供的用于DotNet语言的连接SQLite数据库的工具包。
================Newtonsoft.Json================
最新版本: 10.0.3
官方网站: http://www.newtonsoft.com/json
下载页面: https://github.com/JamesNK/Newtonsoft.Json/releases
软件简介: Newtonsoft.Json是一款基于.NET语言的开源的高效的Json序列化和反序列化类库。它使得在.Net环境下使用Json更加简单。通过Linq To JSON可以快速的读写Json,通过JsonSerializer可以序列化你的.Net对象。让你轻松实现.Net中所有类型(对象,基本数据类型等)和Json的转换。
================ZXing.Net================
最新版本: 0.15.0
官方网站: https://github.com/micjahn/ZXing.Net
下载页面: https://github.com/micjahn/ZXing.Net/releases
软件简介: ZXing是一个开源DotNet类库,用于解析多种格式的1D/2D条形码。目标是能够对QR二维码编码、Data Matrix、UPC的1D条形码进行解码。
---------------------------------------------------------------------------------------------------
///////////////////////////////////////////////////PHP第三方类库///////////////////////////////////////////////
---------------------------------------------------------------------------------------------------
================PHP Simple HTML DOM Parser================
最新版本: 1.5
官方网站: http://simplehtmldom.sourceforge.net/
下载页面: https://sourceforge.net/projects/simplehtmldom/files/
软件简介: 这是一个 PHP5 的 HTML 文档解析器。
================HtmlParser================
最新版本: 3.0.0
官方网站: http://git.oschina.net/mirrors/htmlparsermodel
下载页面: http://git.oschina.net/mirrors/htmlparsermodel/tags
软件简介: php html解析工具,类似与PHP Simple HTML DOM Parser。 由于基于php模块dom,所以在解析html时的效率比 PHP Simple HTML DOM Parser 快好几倍。
================QueryPath================
最新版本: 3.0.5
官方网站: http://querypath.org/
下载页面: https://github.com/technosophos/querypath/releases
软件简介: QueryPath是一个解析XML和HTML的PHP库。QueryPath库,即jQuery JavaScript库面向PHP的一个版本,为使用 XML、HTML 和 HTTP 提供了一个方便的 API。从 Web 页面到 Web 服务、从 SVG 到 SPARQL、从 RDF 到 Atom,QueryPath 为目前使用 PHP 的 Web 开发提供了一个健壮而简单的 API。为了提供简单性,QueryPath 使用一种简洁的语法。方法名称简短地表示出它们所做的事情(例如,text()、append()、 remove())。由于大多数方法返回一个 QueryPath 对象,因此方法调用是可链接的(chainable),也就是说,可以在一个语句中依次调用多个方法。 这一惯例有时被称作连续接口(fluent interface)。为了让 JavaScript 开发人员感到熟悉,QueryPath 实现了大部分的 jQuery 遍历和操纵函数和行为。
================PHPExcel================
最新版本: 1.8.1
官方网站: https://github.com/PHPOffice/PHPExcel
下载页面: https://github.com/PHPOffice/PHPExcel/releases
软件简介: PHPExcel是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格。
================Microsoft Drivers for PHP for SQL Server================
最新版本: 4.0
官方网站: https://www.microsoft.com/en-us/download/details.aspx?id=20098
下载页面: https://www.microsoft.com/en-us/download/details.aspx?id=20098
软件简介: Microsoft Drivers for PHP for SQL Server 4.0、3.2、3.1和3.0为PHP提供了从PHP应用程序到Microsoft SQL服务器的连接。对PHP支持如下:Version 4.0 supports PHP 7.0+ on Windows and Linux;Version 3.2 supports PHP 5.6, 5.5, and 5.4 on Windows;Version 3.1 supports PHP 5.5 and 5.4 on Windows;Version 3.0 supports PHP 5.4 on Windows。系统环境依赖如下:Version 4.0 requires Microsoft ODBC Driver 11 or Microsoft ODBC Driver 13. Version 4.0 for Linux requires Microsoft ODBC Driver 13. Versions 3.2 and 3.1 of the driver require Microsoft ODBC Driver 11. You can download the Microsoft ODBC Driver 11 here. Version 3.0 requires the x86 version of Microsoft SQL Server 2012 Native Client.(ODBC Driver 11 for SQL Server下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=36434)
版权声明:本文采用署名-非商业性使用-相同方式共享(CC BY-NC-SA 3.0 CN)国际许可协议进行许可,转载请注明作者及出处。 |
以上是关于linux下将程序中用到的第三方库编译到自己的程序中的主要内容,如果未能解决你的问题,请参考以下文章