boost编译

Ubuntu下编译boost for Android

依然范特西╮ 提交于 2019-11-29 15:13:10
下载https://github.com/moritz-wundke/Boost-for-Android 解压后进入目录 运行 ./build-android.sh $(NDK_ROOT) NDK_ROOT就是ndk-build所在的那个目录 然后会自动下载源码进行编译,NDK r19以上自动选择c++_shared runtime library,生成多个ABI的库 若要选择其它的运行时库等等,需要修改 build-android.sh???具体不会 生成后在Android studio里使用,如下配置cmake ##########添加boost库 begin######### #因为不存在findboost.cmake所以手动配置 #之后就可使用后就可用${Boost_INCLUDE_DIR}和${Boost_LIBRARIES}了 #set(Boost_ADDITIONAL_VERSIONS "1.70") set(BOOST_ROOT /home/hk/Android/boost/${ANDROID_ABI}) set(Boost_INCLUDE_DIR ${BOOST_ROOT}/include/boost-1_70) set(Boost_LIBRARY_DIR ${BOOST_ROOT}/lib) #用通配符同时添加多个lib库文件依赖 file(GLOB Boost

基于EPICS实现西门子S7通信

时光怂恿深爱的人放手 提交于 2019-11-28 07:38:55
(1) EPICS官网下载Demo并复制文件到指定位置 (2) 创建Modules文件夹,wget https://epics.anl.gov/download/modules/asyn4-35.tar.gz (3) 解压文件,修改configure RELEASE 的EPICS Base路径 (4) 注释RELEASE再编译 (5) 编译boost yum install boost yum install boost-devel yum install boost-doc (6)s7nodaveAsyn.cc添加以下代码: #include <fcntl.h> #include <sys/types.h> #ifdef _WIN32 #define NOMINMAX #include <winsock2.h> #include <ws2tcpip.h> typedef const char* SOARGTYPE; #else #include <netdb.h> #include <sys/socket.h> #include <unistd.h> typedef int SOCKET; #define INVALID_SOCKET -1 typedef const void* SOARGTYPE; #define closesocket close #endif (7)

编译安装mysql

ⅰ亾dé卋堺 提交于 2019-11-27 16:40:59
mysql的编译安装 编译安装MySQL的软件包:浏览器搜索mysql 进入官网 选择source code 在里面选linux通用版 安装cmake编译工具 MySQL需要依赖 Boost 的C++扩展,而且只能是 1.59.0 版本; Boost 下载地址: https://link.zhihu.com/?target=http%3A//www.boost.org/users/history ;选择1.59.0版本下载,在编译是填写相应参数,指定Boost源码位置即可 [root@ytserver1 ~]# yum -y install cmake [root@ytserver1 ~]# tar zxf boost_1_59_0.tar.gz [root@ytserver1 ~]# mv boost_1_59_0 /usr/local/boost [root@ytserver1 ~]# groupadd mysql [root@ytserver1 ~]# useradd -r -g mysql -s /bin/false mysql [root@ytserver1 ~]# mkdir -p /usr/local/mysql/data 创建安装目录和数据存放目录,并修改权限 [root@ytserver1 ~]# mkdir -p /usr/local/mysql/data

ubuntu上源码编译安装mysql5.7.27

老子叫甜甜 提交于 2019-11-27 13:23:20
一、查看操作系统环境和目录结构,并创建mysql用户和组,以及规划安装mysql所需要的目录。 #cat /etc/issue 查看发行版本信息: #cat /proc/version 查看正在运行的内核版本信息 #uname -a 查看电脑以及操作系统的相关信息。 #df -Th 查看系统目录结构和存储空间分配情况 创建组: #sudo groupadd mysql 创建用户并指定用户所属组: #sudo useradd -r -g mysql mysql 创建mysql的安装目录: #mkdir -p /usr/local/mysql5727/installdir 创建mysql的数据存放目录: #mkdir -p /usr/local/mysql5727/datadir/3306/data 创建mysql的源码存放目录: #mkdir -p /usr/local/mysql5727/src 创建mysql的日志存放目录: #mkdir -p /usr/local/mysql5727/logdir/3306 二、安装准备工具 1、安装cmake工具,因为MySQL是使用cmake可跨平台生成makefile文件工具。 #sudo apt-get install cmake 2、安装bison工具,它是Linux下C/C++语法分析器。 #sudo apt-get install

boost.asio编译有错啊! tcp_async_echo_client.cpp:(.text+0x1f2):对‘boost::system::generic_category()’未定义的引用

≡放荡痞女 提交于 2019-11-27 05:30:59
# [error_01] # tcp_async_echo_client.cpp:88:83: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings] # tcp_async_echo_client.cpp:88:83: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings] # /tmp/cc879aYR.o:在函数‘__static_initialization_and_destruction_0(int, int)’中: # tcp_async_echo_client.cpp:(.text+0x1f2):对‘boost::system::generic_category()’未定义的引用 # tcp_async_echo_client.cpp:(.text+0x1fe):对‘boost::system::generic_category()’未定义的引用 # tcp_async_echo_client.cpp:(.text+0x20a):对‘boost::system::system_category()’未定义的引用 # /tmp/cc879aYR.o:在函数

websocket++库的使用:基于websocket模块收发RTSP 消息,作为一个RTSP测试工具

房东的猫 提交于 2019-11-27 02:25:58
一般来说,*.h里面只有声明,没有实现,而*.hpp里声明实现都可以有,后者可以减少.cpp的数量。 .h放声明,.cpp放实现,.hpp就是声明与实现在一起,比如模块类。 hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再 将cpp加入到project中进行编译。而实现代码将直接编译到调用者的 obj文件 中,不再生成单独的obj,采用hpp将大幅度减少调用 project中的cpp文件数与编译次数,也不用再发布烦人的lib与dll,因此非常适合用来编写公用的开源库。 不可包含全局对象和全局函 由于hpp本质上是作为.h被调用者include,所以当hpp文件中存在全局对象或者全局函数,而该hpp被多个调用者include时,将在链接时导致符号重定义错误。要避免这种情况,需要去除全局对象,将全局函数封装为类的静态方法。 随着手机游戏、H5游戏以及微信小游戏的普及,越来越多的客户端-服务器端的通讯采用websocket协议。Websocket协议是全双工的、基于数据帧的、建立在tcp之上的长连接协议。Websocket的协议是头是字符串的兼容http的,而握手之后的数据帧则是紧凑的二进制,所以websocket是紧凑和高效的