lib

深入浅出计算机组成原理学习笔记:第十讲

半城伤御伤魂 提交于 2019-12-29 14:21:12
一、为什么需要动态链接库 1、链接在生活中的应用 链接 其实有点像我们日常生活中的 标准化、模块化 生产、我们有一个可以生产标准螺帽的生产线,就可以生产很多个不同的螺帽, 只有需要螺帽,我们就可以通过链接的方式、去复制一个出来,放到需要的点,大道汽车、小到信箱 2、静态链接的缺点 但是、如我们有很多个程序都要通过装载器装载到内存的里面,那里面链接好的同样的功能代码,也需要再装载一遍、再占一遍内存空间。 这就好比,假设每个人有骑自行车的需求,那我们给每个人生产一辆自行车带在身边,固然大家都有自行车用,但是马路上肯定会特别拥挤 二、链接可以分动、静、共享运行升内存 1、内存不够用 2、链接过程 3、图解动态链接过程 三、地址无关很重要,相对地址解烦恼 1、地址无关 2、地址相关 3、动态共享库无法做到地址无关 四、PLT 和 GOT,动态链接的解决方案 1、示例代码 1、首先lib.h定义了动态链接库的一个函数show_me_the_money [root@luoahong 10]# cat lib.h #ifndef LIB_H #define LIB_H void show_me_the_money(int money); #endif 2、lib.c包含了lib.h的实际实现 [root@luoahong 10]# cat lib.c #include <stdio.h>

VS2015配置OpenCV,使用mfc摄像头程序测试

两盒软妹~` 提交于 2019-12-29 04:30:07
转自: https://blog.csdn.net/Lee_Dk/article/details/80466523 这只是介绍了如何加入OpenCV,怎么查找OpenCV请看出处。 新建一个项目。找到属性管理器,debug-win32。后4个是原本就有的。 Micross.Cpp.Win32.user是vs的默认属性表 ,如果在这个表中配置了,以后的项目都不用再配置了。因为我之前装了opencv3.2的,所以这里新建了一个属性表用来配置opencv2.4.9. 自己取得名:opencv249_debug_win32。 以后需要用到opencv249,只需要添加这个表就可以了。 1.包含目录, 打开opencv249_debug_win32. 通用属性->VC++目录->包含目录。 添加前面test中 install下的 include,include下的opencv,和opencv2. 2.库目录。 通用属性->VC++目录->库目录。添加前面test中 install下的 lib 3.附加依赖项。 链接器->输入->附加依赖项。 将下面的粘贴进去即可。 opencv_calib3d249d.lib opencv_contrib249d.lib opencv_core249d.lib opencv_features2d249d.lib opencv_flann249d.lib

opencv2.4.10与VS2013的环境配置

落爺英雄遲暮 提交于 2019-12-29 04:29:40
前言 项目几乎都是图像相关的,一般都会用到opencv开源库,就涉及到windows下opencv的环境配置问题,本文对此进行介绍。 环境 系统环境:win10_x64(其他windows系统类似); opencv版本:2.4.10(其他版本类似); VS版本:VS2013; 实现步骤 1.下载安装opencv开源库; 2.配置环境变量; 3.配置项目属性; 4.测试工程; 操作过程 1.下载安装opencv开源库; 下载对应版本的opencv源 here ,解压到某一目录即可,最好的是固定的,这样可以同样应用于其他工程的配置; 博主的目录是D:\lib\OpenCV\opencv2410,也是方便将所有可能用到的库安装在一个固定的路径。 2.配置环境变量; 2.1 打开win10的设置信息的系统一栏,关于 -> 系统信息 -> 高级系统设置 -> 环境变量; 2.2 用户变量一栏,新建用户变量如下,注意变量值要根据自己的安装目录进行修改; 2.3 系统变量一栏,点击path进行编辑如下图所示,注意目录按安装目录进行修改; 2.4 到此环境变量配置完毕。重启电脑或注销电脑,使环境变量生效。 注意,其他系统可能与win10的配置过程有些微不同,但大致都一样的。 3.配置项目属性; 3.1 编辑opencv工程属性表; 新建两个文件opencvdebug

vs2013中opencv的配置

 ̄綄美尐妖づ 提交于 2019-12-29 04:29:04
下面开始介绍如何配置,我用的系统是win8.1 64位系统,vs用的是vs3013 ultimate,先到 官网下载opencv 我用的的版本是最新的版本3.0 ALPHA,下载下来直接执行即可,实际上就是解压,我解压到D:\Program Files文件夹下。 配置环境变量,右击我的电脑选择属性,在左侧选择高级系统设置,会弹出系统属性对话框, 点击环境变量,点击新建环境变量,变量名可以任意,我在这起的是OPENCV,将变量值设为opencv/build的路径 添加路径,点击编辑path,在path中添加 ;%OPENCV%\x86\vc12\bin ,其中vc12对应的是vs2013,vc11对应的是vs2012,vc10对应的是vs2010,根据自己的版本进行选择 新建opencv的工程属性表,在opencv目录下新建opencv300. props,可以新建一个txt文档,将后缀名改为.props即可,下面是我的属性工程表,第7,8行分别是32位和64位平台,如果没有定义系统变量,里面的$(OPENCV)可以换成绝对路径,我的是D:\Program Files\opencv\build,在vc12下面有3个文件夹bin,lib,staticlib,将lib和staticlib添加到LibraryPath中,可能版本不同需要添加的也不同,主要是查看vc12有哪些文件夹

文本语音转换入门

吃可爱长大的小学妹 提交于 2019-12-29 03:52:03
下载源代码 内容简介 文本语音(Text-to-Speech,以下简称TTS),它的作用就是把通过TTS引擎把文本转化为语音输出。 本文不是讲述如何建立自己的TTS引擎,而是简单介绍如何运用Microsoft Speech SDK 建立自己的文本语 音转换应用程序。 Microsoft Speech SDK简介 Microsoft Speech SDK是微软提供的软件开发包,提供的Speech API (SAPI)主要包含两大方面: 1. API for Text-to-Speech 2. API for Speech Recognition 其中API for Text-to-Speech,就是微软TTS引擎的接口,通过它我们可以很容易地建立功能强大的文本 语音程序,金山词霸的单词朗读功能就用到了这写API,而目前几乎所有的文本朗读工具都是用这个SDK 开发的。至于API for Speech Recognition就是与TTS相对应的语音识别,语音技术是一种令人振奋的技术, 但由于目前语音识别技术准确度和识别速度不太理想,还未达到广泛应用的要求。 Microsoft Speech SDK可以在微软的网站免费下载,目前的版本是5.1,为了支持中文,还要把附加的语 言包(LangPack)一起下载。 为了在VC中使用这SDK,必需在工程中添加SDK的include和lib目录

文本语音转换入门(zz)

北城以北 提交于 2019-12-29 03:50:27
内容简介 文本语音(Text-to-Speech,以下简称TTS),它的作用就是把通过TTS引擎把文本转化为语音输出。本文不是讲述如何建立自己的TTS引擎,而是简单介绍如何运用Microsoft Speech SDK 建立自己的文本语音转换应用程序。 Microsoft Speech SDK简介 Microsoft Speech SDK是微软提供的软件开发包,提供的Speech API (SAPI)主要包含两大方面: 1. API for Text-to-Speech 2. API for Speech Recognition 其中API for Text-to-Speech,就是微软TTS引擎的接口,通过它我们可以很容易地建立功能强大的文本语音程序,金山词霸的单词朗读功能就用到了这写API,而目前几乎所有的文本朗读工具都是用这个SDK开发的。至于API for Speech Recognition就是与TTS相对应的语音识别,语音技术是一种令人振奋的技术,但由于目前语音识别技术准确度和识别速度不太理想,还未达到广泛应用的要求。 Microsoft Speech SDK可以在微软的网站免费下载,目前的版本是5.1,为了支持中文,还要把附加的语言包(LangPack)一起下载。 为了在VC中使用这SDK,必需在工程中添加SDK的include和lib目录,为免每个工程都添加目录

linux centos 6.5 运行MySQL Workbench 6.0找不到 libmysqlclient.so.16和libmysqlclient_r.so.16

◇◆丶佛笑我妖孽 提交于 2019-12-28 18:32:28
找到已安装mysql/lib目录下有类似文件: -rw-r--r-- 1 root root 8334106 12月 27 22:59 libmysqlclient.a lrwxrwxrwx 1 root root 16 12月 27 23:10 libmysqlclient_r.a -> libmysqlclient.a lrwxrwxrwx 1 root root 17 12月 27 23:10 libmysqlclient_r.so -> libmysqlclient.so lrwxrwxrwx 1 root root 17 12月 27 23:10 libmysqlclient_r.so.18 -> libmysqlclient.so lrwxrwxrwx 1 root root 17 12月 27 23:10 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so lrwxrwxrwx 1 root root 20 12月 27 23:10 libmysqlclient.so -> libmysqlclient.so.18 lrwxrwxrwx 1 root root 24 1月 11 10:42 libmysqlclient.so.16 -> libmysqlclient.so.18.0.0 lrwxrwxrwx 1 root

makefile的一个错误:*** missing separator

旧街凉风 提交于 2019-12-28 07:09:48
原文转自:http://blog.sina.com.cn/s/blog_87c063060101c9yp.html 1、在写 多目录下makefile的时候,碰到一个错误提示,让我纠结许久,后面还是解决了,这个错误不容易被发现。 2、错误提示如下: Makefile:8: *** missing separator (did you mean TAB instead of 8 spaces?). Stop. 3、先来说一下我想干什么,有些什么? 想干什么: 搭建一个Linux LCD的裸机开发环境,注意是多目录下面的,想写 一个比较通用的makefile。 有什么:父目录①←子目录①(build目录)、子目录①(code目录) 子目录①(build目录)←Makefile make.rule 子目录①(code目录)← 子目录②(startup)、子目录②(lib)、子目录②(foo)、子目录②(huge) 如下图: 1.工程目录下: 2.build 目录下 3.code目录下 4.code目录下的子目录都有2个子目录: src目录(存放.c文件) 、 include目录(存放.h文件) 5、下面贴一下makefile的内容 a. build下面的make.rule: .PHONY:all clean CC = arm-linux-gcc LD = arm-linux-ld AR

Java Win7及Linux Centos 7环境配置

为君一笑 提交于 2019-12-28 01:48:03
1. Win7 环境配置 JAVA_HOME C:\Program Files\Java\jdk1.8.0_162 CLASSPATH .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar Path ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 2. Centos7 环境配置 vi /etc/profile export JAVA_HOME=/usr/local/jdk1.8.0_151 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin source /etc/profile 来源: CSDN 作者: Freedom3568 链接: https://blog.csdn.net/zhanggqianglovec/article/details/103734819

Dockerfile使用:Docker+alpine+jdk1.8

半腔热情 提交于 2019-12-27 11:44:15
Dockerfile示例: docker+alpine+jdk1.8: 基于安装包安装 基于wget安装 jdk8_基于安装包 用Alpine跑了JDK8的镜像结果发现,JDK还是无法执行.后来翻阅文档才发现 Java是基于GUN Standard C library(glibc) Alpine是基于MUSL libc(mini libc) 所以Alpine需要安装glibc的库,以下是官方给出wiki https://wiki.alpinelinux.org/wiki/Running_glibc_programs 操作: #下载包,解压 tar -zxvf jdk-8u231-linux-x64.tar.gz #进入目录 cd jdk1.8.0_231 #删除文本文件 rm -rf COPYRIGHT LICENSE README release THIRDPARTYLICENSEREADME-JAVAFX.txt THIRDPARTYLICENSEREADME.txt Welcome.html #删除其他无用文件 rm -rf lib/plugin.jar \ lib/ext/jfxrt.jar \ bin/javaws \ lib/javaws.jar \ lib/desktop \ plugin \ lib/deploy* \ lib/*javafx* \ lib/*jfx