i386

Assembly Language Integer registers

坚强是说给别人听的谎言 提交于 2019-12-11 06:57:01
问题 I don't understand what this assembly instruction does. What is its effect and why? imull $16, (%eax, %edx,4) The initial values of the registers are %eax= 0x100x %edx= 0x3 回答1: I'm assuming you're trying to understand how to interpret that AT&T style assembly instruction, in particular the addressing part. I'm sure you don't need help understanding what the imull $16 part does - it simply performs a signed multiplication, the last l standing for long word. (%eax, %edx, 4) is a form of

While using two static library in project, conflict due to class with same name compiled in both static libraries

可紊 提交于 2019-12-11 02:01:41
问题 I have implemented two static library having the following structure: FirstStaticLibrary.a BaseClass.h @interface BaseClass -some methods @end FirstDerivedClass.h @interface FirstDerivcedClass:BaseClass { } -some methods @end SecondStaticLibrary.a BaseClass.h @interface BaseClass -some methods; @end SecondDerivedClass.h @interface SecondDerivedClass:BaseClass { } -someMethods; @end Above two static library is having the common file BaseClass.h and BaseClass.m These static libraries are added

Linux 安装MySQL+apache+openssl+php

半世苍凉 提交于 2019-12-10 14:36:51
平台环境:virtual PC 2007 + CentOS 5.8(软件只装基本+开发) 在刚装好的CentOS 5.8上发现已默认安装 http-2.2.3-63.el5.centos,openssl-0.9.8e-22.el5,如下图,需要更新到最新版本。 下载的新安装包均放于/usr/local/src 1、更新openssl 下载最新的包:openssl-1.0.1c.tar.gz #cd /usr/local/src #tar -xzvf openssl-1.0.1c.tar.gz #mv -xzvf openssl-1.0.1c.tar.gz openssl #./config shared #make #make test #make install 【注意openssl默认安装路径 : /usr/local/ssl】 #mv /usr/bin/openssl /usr/bin/openssl.OFF #mv /usr/lib/openssl /usr/lib/openssl.OFF #ln –s /usr/local/ssl/bin/openssl /usr/bin/openssl #ln –s /usr/local/ssl/include/openssl /usr/include/openssl 配置库文件搜索路径 #echo “/usr/local/ssl

IOSbug调试-01-错误-duplicate symbols for architecture

不羁岁月 提交于 2019-12-10 05:23:36
错误-duplicate symbols for architecture i386 duplicate symbol _main in: /Users/mac/Library/Developer/Xcode/DerivedData/ItcastWeibo-ejradctorpweaxgnoyvyothlpxbj/Build/Intermediates/ItcastWeibo.build/Debug-iphonesimulator/ItcastWeibo.build/Objects-normal/i386/main-BCA160EE79D38D53.o /Users/mac/Library/Developer/Xcode/DerivedData/ItcastWeibo-ejradctorpweaxgnoyvyothlpxbj/Build/Intermediates/ItcastWeibo.build/Debug-iphonesimulator/ItcastWeibo.build/Objects-normal/i386/main-F335E396EB42357.o ld: 1 duplicate symbol for architecture i386 clang: error: linker command failed with exit code 1 (use -v to

Undefined symbols for architecture i386:问题解决

試著忘記壹切 提交于 2019-12-09 19:24:49
这里优先感谢 azhou_hui ,大部分内容引用自他的博文,增加了一种错误可能,部分有增删,原文传送门 http://blog.csdn.net/azhou_hui/article/details/18312047 ***************************我是无节操的分割线**************************** 多个人共同操作同一个项目或拷贝项目时,经常会出现类似这样的问题: Undefined symbols for architecture i386: "_OBJC_CLASS_$_xx文件名", referenced from: 大概有下面4种可能,前三种网上好多人都说过了,而其中第四种情况是最近刚刚被困绕过的,如果前三种方法都使用后也不能解决,可以考虑排查一下第四种可能; 1.相关工程文件未导入 你可以直接在这里+进来,也可以在左边工程目录中把文件全部重新导人一遍(多人操作工程时,一般这种解决办法) 2. .framework文件未导入 把xx文件库+进来,本问题"_OBJC_CLASS_$_ASIdentifierManager", 就是因为 AdSupport.Framework类库未加 3.文件路径缺失 检查是否某些文件路径未加入进来或者写错了 4.所提示的文件内创建了未实现的类的对象 这种情况多是由于编码人员失误造成的,只在

ShareSDK Undefined symbols for architecture i386: "_OBJC_CLASS_$_xx文件名", referenced from:

送分小仙女□ 提交于 2019-12-09 18:58:29
[iOS常见问题] 关于最新版的腾讯的SDK不支持i386的问题解决方案 由于腾讯SDK在5月17号更新了最新的V3.1.0版本,他们的更新说明的第6: 支持cpu指令集版本由arm7、arm7s、arm64、i386 、x86_64 变更到 armv7、x86_64、arm64 导致一些用户出现如下的报错: Undefined symbols for architecture i386: " OBJC_CLASS $_QQApiInterface", referenced from: objc-class-ref in AppDelegate.o " OBJC_CLASS $_TencentOAuth", referenced from: objc-class-ref in AppDelegate.o ld: symbol(s) not found for a rchitecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation) 解决办法:不要使用5S以下的模拟器去测试了,对真机没有影响。有方案是修改Architectures的东西 我是在导入speex文件库时,修改后此文件后qq的报错,修改回去后Speex的报错,用真机就可以测试运行了

CentOS的基本信息和ssh

好久不见. 提交于 2019-12-09 17:07:14
CentOS CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS完全开源。 CentOS的介绍 CentOS 是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本。每个版本的 CentOS都会获得十年的支持(通过安全更新方式)。新版本的 CentOS 大约每两年发行一次,而每个版本的 CentOS 会定期(大概每六个月)更新一次,以便支持新的硬件。这样,建立一个安全、低维护、稳定、高预测性、高重复性的 Linux 环境。CentOS是Community Enterprise Operating System的缩写。 CentOS 是RHEL(Red Hat Enterprise Linux)源代码再编译的产物,而且在RHEL的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。 CentOS在2014初,宣布加入Red Hat。 SSH的基本概念

More efficient assembly code?

一世执手 提交于 2019-12-08 07:26:20
问题 I've recently began studying assembly. Just wondering why this assembly is written the way it is instead of the alternative "My Assembly" I list below. It cuts out one instruction. Any ideas? Is it too rare of a case where this works? Just seems wasteful to me to move the value of 3 to eax first. C code: #include<stdio.h> int main() { int a = 1; int b = 3; a = a+b; return a; } Assembly: Dump of assembler code for function main: 0x080483dc <+0>: push ebp 0x080483dd <+1>: mov ebp,esp 0x080483df

More efficient assembly code?

≯℡__Kan透↙ 提交于 2019-12-07 23:38:28
I've recently began studying assembly. Just wondering why this assembly is written the way it is instead of the alternative "My Assembly" I list below. It cuts out one instruction. Any ideas? Is it too rare of a case where this works? Just seems wasteful to me to move the value of 3 to eax first. C code: #include<stdio.h> int main() { int a = 1; int b = 3; a = a+b; return a; } Assembly: Dump of assembler code for function main: 0x080483dc <+0>: push ebp 0x080483dd <+1>: mov ebp,esp 0x080483df <+3>: sub esp,0x10 0x080483e2 <+6>: mov DWORD PTR [ebp-0x4],0x1 0x080483e9 <+13>: mov DWORD PTR [ebp

[CENTOS] 安装glibc

点点圈 提交于 2019-12-07 07:42:48
在你准备升级GLIBC库之前,你要好好思考一下, 你真的要升级GLIBC么? 你知道你自己在做什么么? http://baike.baidu.com/view/1323132.htm?fr=aladdin glibc是 gnu 发布的libc 库 ,即c 运行库 。glibc是 linux系统 中最底层的 api ,几乎其它任何 运行库 都会依赖于glibc。glibc除了 封装 linux 操作系统 所提供的 系统服务 外,它本身也提供了许多其它一些必要功能服务的实现... 总的来说,不说运行在linux上的一些应用,或者你之前部署过的产品,就是很多linux的基本命令,比如cp, rm, ll之类,都得依赖于它 网上很多人有惨痛教训,甚至升级失败后系统退出后无法重新进入了。。 对于CentOS这样的系统,为了追求稳定性(这个值得商榷)往往各种库版本都很低,比如6.5甚至7.0自带的还是glibc2.12, 而ubuntu 14.04带glibc2.19 如果升级基本C运行库到一个太新的版本,可能会影响CentOS的运行。所以大家如果遇到CentOS基本库的问题,影响了自己程序的运行,应该可以考虑: 1. 在低版本的系统编译自己的产品,如果自己的产品确实不需要新版才支持的新特性 2. 用版本高的系统来编译,比如ubuntu,和centos的新版,但可能需要部署到较低版本