.PHONY:clean install CC=g++ CFLAGS=-Wall -g BIN=libecho.a INCLUDE=echo SRC=src OBJS=Socket.o Rio.o TcpConnection.o PollPoller.o InetAddress.o TcpServer.o Thread.o Condition.o ThreadPool.o Exception.o Timer.o TimerThread.o STARD=-std=c++0x -rdynamic $…
  最近在编写的一个Apache  kafka 的C/C++客户端,,在看他写的 example中,他的编译是用librdkafka++.a和librdkafka.a    静态库编译的,,,而我们这边要求使用动态库方法编译,,,所以简单了解一下,静态库编译的动态库编译的区别,下边是一个网上搜的一篇文章,到最后有一点简单介绍! [转]在Linux下如何使用GCC编译程序.简单生成 静态库及动态库.   本文适用于Linux下开发初学者.本文初步讲解在Linux下如何使用GCC编译程序.简单生成静…
Linux下用gcc/g++生成静态库和动态库(Z) 2012-07-24 16:45:10|  分类: linux |  标签:链接库  linux  g++  gcc  |举报|字号 订阅     在 linux 下,库文件一般放在 /usr/lib 和 /lib 下, 静态库的名字一般为 libxxxx.a ,其中 xxxx 是该 lib 的名称 动态库的名字一般为 libxxxx.so.major.minor , xxxx 是该 lib 的名称, major 是主版本号, minor 是…
本文转自http://blog.csdn.net/fengbingchun/article/details/17994489 Ubuntu环境:14.04 首先创建一个test_makefile_gcc文件夹,此test_makefile_gcc文件夹下包括:src文件夹用于存放源文件: include文件夹用于存放头文件:bin文件夹用于存放生成的动态库.so文件:lib文件夹用于存放生成的静态库.a文件:project_makefile文件夹存放此工程的makefile文件:test文件夹存…
Lunix下编译静态库文件: .o后缀文件:编译生成的中间代码文件: .a后缀文件:静态库文件,编译的时候会合到可执行程序中,文件比较大: .so后缀文件:动态库文件,只是一个指向,不会合到可执行程序中,当要调用函数库的时候才使用: 用一个简单的例子阐述下在lunix环境下生成静态库文件的过程: 一.   源码文件: so_test.h: void test_a(); void test_b(); void test_c(); test_a.c: #include "so_test.h"…
Xcode 生成静态库相关设置: #Build Setting1. Architectures ------- Architectures -----> $(ARCHS_STANDARD) --- Armv7, Arm64 ------- Build Active Architecture Only --> NO 若选项设为YES,在其编译时只生成当前机器的框架. 将其设置为NO后,发现用模拟器编译后生成的framework同时包含x86_64和i386架构. 2. Build Option:…
//StaticMath.h #include <iostream> class StaticMath { public: //StaticMath(void); //~StaticMath(void); static double add(double a, double b);//加法 void print(); }; //StaticMath.cpp #include "StaticMath.h" double StaticMath::add(double a, do…
问题描述 利用toolchian.cmake设置好编译器后,利用make指令生成静态库,出现以下问题 Error running link command: No such file or directory 出错原因,toolchain.cmake文件内没有声明静态库生成器AR:解决方式,在toolchian.cmake文件内添加下面的声明 SET(CMAKE_AR $(TOOLCHAIN_DIR)/bin/arm-linux-gnueabihf-ar CACHE FILEPATH "Arch…
VS2017也推出很久了,在单位的时候写linux的服务端程序只能用vim,这让用惯了IDE的我很难受. 加上想自己撸一套linux上的轮子,决定用VS开工远程编写调试linux程序. 在windows下编写静态库并在另一个项目中引用很简单 新建项目的时候选择静态库,进去把代码撸好,即可编译出静态库*.lib 随后在希望使用该静态库的项目中设置一下链接器“附加库目录”为"../Debug"(和你的输出路径有关),然后添加"附加依赖项"静态库名.lib",然…
1. 首先,如何制作一个静态库(lib)? 额, 对于静态库,我们知道,里头是不应该有Main函数,它只是一个配合文件.之所以称之为lib静态库,其实就是指,我们需要用到lib里头的函数时,我们才会去手动打包到我们的可执行文件当中.我们知道,打包一个文件,里面的东西非常之多,当我们加载时,内存会被很多的代码块锁占用,因而常常有一种,调用一个函数,而不得不去读取一大片的代码块儿的感觉.这就是静态库的缺点没有之一 就像写一个这样的程序: #include<stdio.h> #include<…