glibc

CentOS7安装Oracle 11g数据库

柔情痞子 提交于 2019-12-05 14:52:56
转载: https://blog.csdn.net/lia17/article/details/82256565 rpm -ivh --force --nodeps *.rpm 强制装 rpm依赖包下载(oracle):yumdownloader --resolve --destdir /home/oracle/package binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-static kernel-headers pdksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel 依赖包安装(oracle):yum install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel

getpwnam_r memory leak

心不动则不痛 提交于 2019-12-05 14:44:25
I use getpwnam_r to handle client connections in my programs. Sadly enough, it seems to allocate a buffer it never frees. The relevant valgrind output: ==15774== 536 (104 direct, 432 indirect) bytes in 2 blocks are definitely lost in loss record 1 of 3 ==15774== at 0x4C24CFE: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so) ==15774== by 0x5143B5A: nss_parse_service_list (in /lib64/libc-2.10.1.so) ==15774== by 0x51442E6: __nss_database_lookup (in /lib64/libc-2.10.1.so) ==15774== by 0x57BE35F: ??? ==15774== by 0x57BF3F6: ??? ==15774== by 0x51014D2: getpwnam_r@@GLIBC_2.2.5 (in

Linux下安装Redis报错

a 夏天 提交于 2019-12-05 13:43:27
1、Linux为虚拟机,并且无法联网 2、按照步骤安装Redis,在make的时候报: gcc: Command not found 3、开始安装gcc: 3-1、虚拟机插入镜像 3-2、进入图形桌面,并进入镜像,并进入Packages,然后依次安装如下: kernel-headers-2.6.18-308.el5.i386.rpm glibc-headers-2.5-81.i386.rpm glibc-devel-2.5-81.i386.rpm libgomp-4.4.6-3.el5.1.i386.rpm gcc-4.1.2-52.el5.i386.rpm libstdc++-devel-4.1.2-52.el5.i386.rpm gcc-c++-4.1.2-52.el5.i386.rpm 3-3、检查gcc是否安装成功:rpm -qa|grep gcc 4、删除解压后的Redis,然后重新解压,重新make。 来源: https://my.oschina.net/u/2332532/blog/3133280

Understanding assembly language _start label in a C program

早过忘川 提交于 2019-12-05 13:02:04
I had written a simple c program and was trying to do use GDB to debug the program. I understand the use of following in main function: On entry push %ebp mov %esp,%ebp On exit leave ret Then I tried gdb on _start and I got the following xor %ebp,%ebp pop %esi mov %esp,%ecx and $0xfffffff0,%esp push %eax push %esp push %edx push $0x80484d0 push $0x8048470 push %ecx push %esi push $0x8048414 call 0x8048328 <__libc_start_main@plt> hlt nop nop nop nop I am unable to understand these lines, and the logic behind this. Can someone provide any guidance to help explain the code of _start ? Here is the

GLIBC_2.7 not found

妖精的绣舞 提交于 2019-12-05 12:57:22
问题 I am getting the following error when trying to run several executables: /lib/libc.so.6: version `GLIBC_2.7' not found (required by .tools/bridge/bridge) I have recently upgraded from CentOS 5.3 to 5.7 (I am required to run these tools on CentOS 5, so I can't upgrade to 6). I recompiled the whole code but this error still appears. Has anyone encountered this type of error? Thanks, Claudiu 回答1: The error means that you built .tools/bridge/bridge on a system with glibc-2.7 (or later), and are

Moving to different Linux build system, getting error: undefined symbol: stat

落爺英雄遲暮 提交于 2019-12-05 11:16:05
This may just be an issue with the build system I am migrating to, but I'll include differences in the two systems and how I encountered the problem. My old build system is a SLES 10 machine. The gcc/cpp/g++ version is 4.1.0 My new system is on SLES 11 SP4, and the gcc/cpp/g++ version is 4.3.4. I am building a shared library; building and linking work fine on the new system. However, at load time on the new system, I get the following: error ./mysharedlib.so: undefined symbol: stat Since the stat() function is included from /usr/include/sys/stat.h, I looked at glibc on both systems. Old: # rpm

Understanding glibc malloc trimming

给你一囗甜甜゛ 提交于 2019-12-05 11:09:58
Some program that I am currently working on consumes much more memory than I think it should. So I am trying to understand how glibc malloc trimming works. I wrote the following test: #include <malloc.h> #include <unistd.h> #define NUM_CHUNKS 1000000 #define CHUNCK_SIZE 100 int main() { // disable fast bins mallopt(M_MXFAST, 0); void** array = (void**)malloc(sizeof(void*) * NUM_CHUNKS); // allocating memory for(unsigned int i = 0; i < NUM_CHUNKS; i++) { array[i] = malloc(CHUNCK_SIZE); } // releasing memory ALMOST all memory for(unsigned int i = 0; i < NUM_CHUNKS - 1 ; i++) { free(array[i]); }

pthread_cond_broadcast broken with dlsym?

一笑奈何 提交于 2019-12-05 10:02:57
I am trying to interpose calls to pthread_cond_broadcast using LD_PRELOAD mechanism. My interposed pthread_cond_broadcast function just calls the original pthread_cond_broadcast. However, for a very simple pthread code where both pthread_cond_wait and pthread_cond_broadcast get invoked, I either end up with a segfault in glibc (for glibc 2.11.1) or the program hangs (for glibc 2.15). Any clues on that is going on? The interposition code (that gets compiled as a shared library): #define _GNU_SOURCE #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <dlfcn.h> static int (*orig

How do the standard C library and system calls work together?

扶醉桌前 提交于 2019-12-05 09:58:14
I recently got interested about inner workings of compilers, standard libraries and kernels. While I was searching for the source code of the standard C library, I came across with Glibc. But what it says in Glibc's official website is: the library which defines the ''system calls'' and other basic facilities such as open, malloc, printf, exit... So I guess that Glibc actually doesn't provide the source code of the standard C library, but instead provides the system calls for those functions, and then the kernel takes care of them, am I right? I would like to learn more about those things. For

Linux上安装Oracle11g

筅森魡賤 提交于 2019-12-05 09:37:07
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq_28643817/article/details/85295831 ———————————————— 资料: https://blog.csdn.net/u013634348/article/details/53552266 转自: https://blog.csdn.net/mchdba/article/details/43086037 需要安装oracle dataguard,所以先要安装单台oracle11g,下面是单台oracle11g的详细安装过程。 1,安装环境 硬件环境:2台linux虚拟机,Centos6.4 ,4G ,4核,磁盘50G Oracle软件版本: linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip 下载地址为: http://pan.baidu.com/s/1bnk1hxH rlwrap软件安装参考: http://blog.csdn.net/mchdba/article/details/8745894 2,解压缩 unzip linux.x64_11gR2_database_1of2.zip unzip