![](https://img-blog.csdnimg.cn/20181210171813924.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Linux编程
Linux编程学习记录
gerrylon007
这个作者很懒,什么都没留下…
展开
-
linux命令之prlimit
命令介绍prlimit - get and set a process resource limits.prlimit 这个命令用来设置或者获取某进程的资源限制的.如临时设置某进程可打开的文件数,prlimit --pid=9999 --nofile=102400:102400, 这条命令表示设置pid为9999的进程的可打开的文件最大数改为102400(soft & hard).还有其他选项, 基本和ulimit一致:prlimit --help用法: prlimit [选项原创 2021-05-16 14:21:10 · 6200 阅读 · 0 评论 -
APUE学习笔记之:进程通信方式之: pipe
linux进程间通信之pipe示例:#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>#include <string.h>int main() { int fd[2]; int err; pid_t pid; // 创建管道, pipefd[0]为读端, pi原创 2020-10-13 14:28:37 · 261 阅读 · 0 评论 -
gcc xx.c:(.text+0x11): undefined reference to `sqrt'
gcc prime.c -o prime报错 undefined reference to `sqrt’由于代码中使用了math库中的sqrt方法, 所以要这样写 gcc prime.c -o prime -lm-l选项是链接某个库, 这里我们链接math库. Linux的库命名是一致的,一般为libxxx.so,或libxxx.a,libxxx.la,那么你要链接某个库就用-lxxx原创 2017-10-06 00:22:21 · 4228 阅读 · 0 评论 -
gcc常用选项
对gcc常用选项的总结:-Werror 将警告转为错误输出-o filename 指定输出文件名-D 编译时指定宏源文件_D.c内容如下:#include &amp;amp;amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;amp;amp;gt;int main(int argc, char *argv[]) {#ifdef DEBUG printf(&amp;amp;amp;amp;am原创 2018-11-22 21:53:25 · 256 阅读 · 0 评论 -
/usr/bin/ld: errno: TLS definition in /lib64/libc.so.6 section .tbss mismatches non-TLS...
gcc执行报错:$ gcc oobrecv.c/usr/bin/ld: errno: TLS definition in /lib64/libc.so.6 section .tbss mismatches non-TLS reference in /tmp/cccdLepY.o/lib64/libc.so.6: could not read symbols: Bad valuecollec...原创 2018-11-28 20:59:40 · 2470 阅读 · 0 评论 -
linux C之basename, dirname函数
环境:$ uname -r2.6.32-754.el6.x86_64函数定义:// /usr/include/libgen.hextern char *__xpg_basename (char *__path) __THROW;#define basename __xpg_basename这个basename函数可以返回路径最后一个路径分隔符之后的内容,比如bas...原创 2018-11-28 00:01:25 · 7873 阅读 · 0 评论 -
linux C之exec函数族
exec函数族用来执行一个程序(execute program).下述中的引用内容如无特别说明, 均来自man page一共有6个, 其函数原型为:#include &amp;amp;lt;unistd.h&amp;amp;gt;extern char **environ;int execl(const char *path, const char *arg, ...);int execlp(const char...原创 2018-12-10 23:02:32 · 1971 阅读 · 0 评论 -
安装C库函数man page
以最小化安装的centos6, 查看linux c api函数时, 发现找不到:[root@mycentos ~]# man setitimerNo manual entry for setitimer可安装man-pages来解决:yum install -y man-pages# ... 省略安装过程# 查看c api[root@mycentos ~]# man setiti...原创 2018-12-22 23:12:50 · 875 阅读 · 0 评论 -
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.212.el6.x86_64
系统环境: CentOS 6.10 64bitgdb调试时, 发现有如下错误提示信息:(gdb) runStarting program: /var/workspace/linux/high_perf/process/a.outProgram received signal SIGSEGV, Segmentation fault.0x00007ffff7a8fd0c in vfprin...原创 2018-12-27 18:52:06 · 1490 阅读 · 2 评论 -
linux C之setitimer函数简单使用
在说setitimer函数之前, 先来说说alarm函数:unsigned int alarm(unsigned int seconds);alarm函数会建立一个定时器, 在seconds后, 给当前进程发送SIGALRM信号.setitimer也用来创建定时器, 不过它比alarm功能多, 最显著的区别就是它可以指定到微秒, 而且可以循环发送.setitimer manpage: m...原创 2018-12-23 00:06:13 · 1496 阅读 · 0 评论