linux系统中静态库文件以.a结尾,
动态库文件以.so结尾
调用动态库在程序运行时,操作系统会将.so文件加入到内存中,可以做到内存共享同时提供给多个客户使用
linux的编译中有两种风格(C和C++)
默认是使用C风格的。在
动态链接库中,输出的是函数,而不输出类,若输出类只能被C++调用。
程序执行时,系统查找文件目录的顺序为:
在
windows中是首先在当前目录,其次是
system32目录、最后是在path路径中。
而在
linux中是在
/usr/lib中查找的。
编译动态链接库:
一、在Eclipse中建立新的C++ Project,选择Shared Library,Cross GCC点确定。
动态库文件的使用
一、首先在项目工程中添加动态库中的所有头文件(添加方法:复制动态库中的所有头文件,在Eclipse的工程项目中右击Paste[这里可以在工程下自己建立一个src文件夹,将所有源文件和头文件放在文件夹中,方便管理])
二、在编译时,需要告诉当前工程我们LIB的名字以及存放的路径。
C++工程--->右键属性--->C/C++Build--->Setting--->Cross G++ Linker--->Library
上栏填动态库的名称。[
libTestLib.so ===其中第一个lib代表是文件类型,.so代表是动态库,
剩下的字母是真正的库的名称 ]
下栏选.so文件所在的目录
三、在执行时,需要将.so文件拷贝到/user/lib目录里
最后,大功告成,我们可以调用动态链接库来运行我们的程序!!!
预备知识:linux系统中静态库文件以.a结尾,动态库文件以.so结尾调用动态库在程序运行时,操作系统会将.so文件加入到内存中,可以做到内存共享同时提供给多个客户使用linux的编译中有两种风格(C和C++)默认是使用C风格的。在动态链接库中,输出的是函数,而不输出类,若输出类只能被C++调用。程序执行时,系统查找文件目录的顺序为:在windows中是首先在当前目
在
Linux
下编写多线程程序,在调用pthread.h下的函数时需要添加链接
库
,如果是在命令行的环境下只需要在gcc命令后加上 -pthread就可以
编译
、连接通过,但是如何在
eclipse
下添加-pthread?不然会出现如下错误
其实很简单,只要右击工程选择properties或者单击project ->properties也没
Linux
下创建C/
C++
工程,依赖其他so
库
文件时,我们常习惯通过
Project->Properties->C/
C++
General ->Path and Symbols 来添加Include 目录和so目录及文件。
使用
cygwin
编译
所需交叉工具链
配置
eclipse
环境:
a.配置工具链前缀及路径,这里是 ppc-eabi- 及 D:\cygwin\home\admin\build-ppc\ppc-eabi-tools\bin
b.配置
编译
头文件路径,这里为 D:\cygwin\home\admin\build-ppc\ppc-eabi-tools\ppc-eabi\include
最近在进行Arm平台下的
Linux
系统编程,需要配置交叉
编译
器。习惯了在Windows环境下
使用
编程软件。下载
Eclipse
最新的Oxygen版本C/
C++
编程环境。
本人建议还是下载
eclipse
-cpp-oxygen-1-win32-x86_64.zip版本的为好。原因是:安装版本默认是将.p2插件仓
库
安装到系统盘的用户目录下,而解压版默认是在
eclipse
目录下。你懂得,非常方便打
下面是在
Linux
中
安装
Eclipse
的简单步骤:
1. 下载
Eclipse
安装包:从
Eclipse
官方网站下载最新版本的
Eclipse
安装包,通常是一个.tar.gz文件。
2. 解压安装包:
使用
命令行解压安装包,例如:
tar -zxvf
eclipse
-inst-
linux
64.tar.gz
3. 运行安装程序:进入解压出的目录,运行安装程序,例如:
./
eclipse
-installer/
eclipse
-inst
4. 选择安装路径:在安装程序
中
选择
Eclipse
安装的路径。
5. 完成安装:按照安装程序的提示完成安装。
6. 运行
Eclipse
:打开终端,进入
Eclipse
安装目录,运行
Eclipse
,例如:
./
eclipse
/
eclipse
完成这些步骤后,
Eclipse
就已经安装完成了!