地址 https://github.com/msng4t/TNF-mutithread

地址 https://github.com/msng4t/TNF

目的:想要寻找一套性能,可读性相对较好的Socket管理代码,用在即将开始的CrossPlatformSDK中

编译环境 CentOS

遇到问题

1 ASynchClient.cpp 中使用的AsynchClient.h ,头文件名写错了,应该是ASynchClient.h

2 SockAddr.h,SockAddr.cpp需要从TNF那个源里拷贝过来,原有的SockAddr.cpp 应改为sockaddr.cpp,和原有的小写文件对应.

3 Configuration.c 删除,和Configuration.cpp重了.

4 Lua配置,一开始使用的CentOS没有lua安装,需要自己安装,具体过程请放狗.(oh,shit,狗不行了,得用bing)

5 编译完成,还是有警告,但可以运行,下一步进行代码分析,重新拾起咱丢了很久的C++.

6 g++ -o minia ASynchClient.cpp   Connector.cpp      Exception.cpp    HttpHandler.cpp  Memblock.cpp       ProcessCycle.cpp    SockAddr.cpp   UpHandler.cpp Channel.cpp       Cycle.cpp          Filter.cpp    IoAcceptor.cpp     MessageTable.cpp  Queue.cpp           SocketOpt.cpp  mina_rbtree.cpp Config.cpp       DaemonService.cpp  FilterChain.cpp    IoEvent.cpp     OsAction.cpp       SessionManager.cpp  Synch.cpp      sockaddr.cpp Configuration.cpp  EventDo.cpp          GroupManager.cpp    IoService.cpp     Poll.cpp       SharedMemory.cpp    Thread.cpp Connection.cpp       EventPosted.cpp    Http.cpp        Log.cpp         Process.cpp       SharedMutex.cpp     Timer.cpp  main.c liblua.a -I./ -I/tmp/tnfm/lua-5.1.4/include -L./ -lrt -lpthread

目标:

1 内容分析完毕后,替换epoll方式为select或者其他.(宿主机iOS+Mac)

2 集成到已有系统中,替换现有的C版本的Socket管理,一团乱麻.

TNF-mutithread 编译过程记录的更多相关文章

  1. win10--vs2015--libjpeg--64位库的编译过程记录

    win10--vs2015--libjpeg--64位库的编译过程记录 1. 下载源代码:   http://libjpeg.sourceforge.net/    或者  http://www.ij ...

  2. OpenSift源代码编译过程记录

    本文记录了在CentOS6.5上编译Sift的开源实现OpenSift的编译过程,同一时候记录了编译过程中的几个问题. sift的理论已经有非常多了,以下会给出链接: 1.Requirements a ...

  3. 将gdal源码转化为VS工程编译过程记录

    作者:朱金灿 来源:http://blog.csdn.net/clever101 为什么要用VS工程的方式来编译gdal库?主要还是为了调试方便,虽然理论上使用命令行方式生成库也能调试,详见:GDAL ...

  4. QtZint编译过程记录(要使用 QTMAKE_CFLAGS += /TP 参数)

    1,下载zint后,在zint-2.4.3\win32\vcx目录下找到zlib.props和libpng.props文件,分别改为zlib和libpng的源码目录.这2个开源库最好是找工程中使用的版 ...

  5. 使用VS2010编译Qt 5.6.1过程记录

    由于Qt官方发布的Qt 5.6.1二进制安装包没有对应VS2010版本的,而我的电脑上只安装了VS2010,因此只能自己编译. 本文记录本人的编译安装过程,以及其中遇到的一些问题. 本文使用VS201 ...

  6. linux-i386(ubuntu)下编译安装gsoap_2.8.17过程记录

    过程记录 :  1.下载gsoap_2.8.17.zip 并 解压 : $unzip gsoap_2.8.17.zip     2.进入解压后的目录gsoap-2.8   3.自动配置编译环境:  $ ...

  7. openWRT自学---自己编译的第一个 backfire10.03 版本的过程记录(转)

    基于 backfire10.03(从http://downloads.openwrt.org/backfire/10.03/ 中下砸的源码包backfire_10.03_source.tar.bz2: ...

  8. [原创]Nexus5 源码下载、编译、真机烧录过程记录

    asop使用清华镜像源https://mirror.tuna.tsinghua.edu.cn/help/AOSP/ 一开始使用每月初始化包的方式因为无法搞定版本的问题,没能通过编译,无奈,老老实实一点 ...

  9. 记录在Python2.7 x64 bit 下 PyQt5.8的编译过程

    由于工作需要使用python下面的Qt库.PyQt现在只提供针对Python3.X系列的PyQt,所有需要自己手动编译.防止忘记,特意写下随笔记录备忘. 工 作  环境:Python版本:Python ...

随机推荐

  1. 纯JS省市区三级联动

    代码下载

  2. MSP430G2553之timerA产生PWM

    总结:选SMCLK(可以测出来)         若选ACLK,经示波器PWM时有时无 举例一: #include <MSP430G2553.h> #define CPU_F ((doub ...

  3. C++学习之类的构造函数、析构函数

    在C++的类中,都会有一个或多个构造函数.一个析构函数.一个赋值运算操作符.即使我们自己定义的类中,没有显示定义它们,编译器也会声明一个默认构造函数.一个析构函数和一个赋值运算操作符.例如: //声明 ...

  4. linux安装时出现your cpu does not support long mode的解决方法

    如果你确定你的电脑支持64bit且是64bit的宿主系统,则需要修改BIOS中的Inter Virtualization Technology为enabled.

  5. mac终端下运行shell脚本

    最近公司要弄关于IOS下自动化打包的东西,研究了用命令行的形式来代替手工的方式来处理.即: 用xcodebuild 和xcrun  语法来进行脚本实现.    但由于语法的结构够了,另一个问题产生了, ...

  6. 监听cell 滑动到 摸个分区

    //滑动过程中 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { //    NSLog(@"000---%ld", ...

  7. php的预定义数组

    PHP预定义变量数组 1.$_SERVER 变量由Web服务器设定或者直接与当前的脚本的执行环境相关联 $_SERVER超级全局变量包含由web服务器创建的信息,它提供了服务器和客户配置及当前请求环境 ...

  8. fragment的一些bug

    自从Android3.0引入了Fragment之后,使用Activity去嵌套一些Fragment的做法也变得更加流行,这确实是 Fragment带来的一些优点,比如说:Fragment可以使你能够将 ...

  9. oracle中的cluster表

    大家对通常oracle中的cluster的理解是不准确的,经常和sql server中的cluster index混淆.Cluster是存储一组table的一种方法,这些table共享同一数据块中的某 ...

  10. How to set up a basic working Appium test environment

    Appium is a test framework targeting devices; although it is very handy and powerful, it is not so s ...