Articles of Linux操作系统

使用glibc在非标准位置build立GCC

我有一个我没有root权限的系统,但是我需要安装当前版本的GCC(4.7.2)。 系统正在运行Linux 2.6.18的x86_64版本,并且已经有了GCC 4.1(即使–version说它是用它构build的,也不支持C ++支持)。 编辑5:在这一点上,下面的步骤只是我试过的一套。 从那时起我已经开始干净了几次了。 我正在寻找一个人来详细说明我需要的所有开关所需的确切顺序。 这是我到目前为止所经历的过程(其中ROOT是我的主目录中的一个文件夹) make-3.82>./configure –prefix=$ROOT && make && make install && hash -r binutils-2.23>./configure –prefix=$ROOT && make && make install autoconf-2.69>./configure –prefix=$ROOT && make && make install automake-1.9>./configure –prefix=$ROOT && make && make install flex-2.5.37>./configure –prefix=$ROOT && make && make install libunwind-1.1>./configure –prefix=$ROOT && make && make install gcc-4.7.2-scratch>../gcc-4.7.2/configure […]

停止打印php错误信息到浏览器

我使用PHP 5.3,CentOS 6.2,httpd 2.2.15,NetBeans 7.0.1(通过ftp远程运行)。 我想停止向浏览器打印错误消息,这足以打印到httpd的error_log。 我认为做try / catch我会决定如何处理错误,但它仍然打印到error_log和浏览器。 function smic_gettext($phrase){ try{ $tr_text = $this->language_array[$phrase]; } catch(Exception $e){ error_log("Couldn't find any entry in the translation file for ".$phrase.". ".$e); return $phrase; } return $tr_text; } 我应该如何configuration才能阻止这种行为? 我曾尝试在php.ini中设置display_errors = Off和display_errors = 0。 没有区别(我没有重启httpd)。

更改文件描述符的读/写权限

我正在开发一个Linux C项目,并且在处理文件描述符时遇到了麻烦。 我有一个孤立的文件描述符(该文件是打开()'d然后取消链接()'D,但FD仍然是好的)具有只写权限。 原来的支持文件具有完全的权限(使用S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH创build),但是,该文件是用O_WRONLY打开的。 是否可以复制文件描述符并将副本更改为O_RDWR? psudo代码: //open orphan file int fd = open(fname, O_WRONLY, …) unlink(fname) //fd is still good, but I can't read from it //… //I want to be able to read from orphan file int fd2 = dup(fd) //—-change fd2 to read/write???—- 提前致谢! -安德鲁

如何避免由于Linux中的信号而中断睡眠呼叫

我在Linux中使用实时信号来通知串口中新数据的到达。 不幸的是,当有信号时,会导致睡眠呼叫中断。 有没有人知道一种方法来避免这种行为。 编辑:我试过使用一个常规的信号(SIGUSR1),但我一直得到相同的行为。 谢谢Joao

什么时候和为什么运行的替代品 – 安装java jar javac javaws在linux中安装jdk

在linux下安装java(我用的是CentOS,RHEL也一样),我用这个命令 rpm -Uvh /path/to/binary/jdk-7u55-linux-x64.rpm 并validation了java java -version 看一个教程,它说运行以下4个命令,不知道为什么 ## java ## alternatives –install /usr/bin/java java /usr/java/latest/jre/bin/java 200000 ## javaws ## alternatives –install /usr/bin/javaws javaws /usr/java/latest/jre/bin/javaws 200000 ## Install javac only alternatives –install /usr/bin/javac javac /usr/java/latest/bin/javac 200000 ## jar ## alternatives –install /usr/bin/jar jar /usr/java/latest/bin/jar 200000 我知道如果有多个版本的Java安装,你可以select使用的版本 alternatives –config java 那么为什么要运行alternative –install分别为每个可执行文件。 我看过这个问题,但没有得到我的答案

如何在编辑Android XML文件时避免Eclipse上的Eclipse泄漏?

当我在Eclipse中编辑XML文件(主要是Android布局等)时,它会导致XServer泄漏,并且会结束吃掉我所有的RAM(4GB),所以我必须按Ctrl + Alt + Backspace才能继续。 你知道有什么补救吗?

Linux以编程方式向上/向下接口内核

在内核空间中启用或禁用接口的编程方式是什么? 应该做什么?

为什么堆栈溢出导致分段错误,而不是Linux中的堆栈溢出?

可能重复: 分段错误和堆栈溢出有什么区别? 我只是想知道,为什么堆栈溢出导致分段错误,而不是堆栈溢出。 是否因为堆栈限制的边界交叉而导致SIGSEGV? 为什么我们在Linux中不会遇到堆栈溢出,而是一个分段错误? int foo() { return foo(); } 这个小代码应该会导致堆栈溢出,但在Linux中会导致分段错误。

遵循SVN中的符号链接

我有一个Linux目录(并不需要任何Windows结帐): /home/me/projects/project1 在这个项目中,我需要SVN(1.8.8)来遵循一个符号链接“link1”: /home/me/projects/project1/link1/<some_directories_and_files> 但SVN不会让我这样做,它只是添加link1而不是它的内容。 如果我尝试添加其内容,则会出现错误: svn add link1/* svn: E145001: Can't schedule an addition of '/home/me/projects/project1/link1/first_directory' below a not-directory node 我试图转换链接到硬链接,但我不能这样做: ln /path/to/my/linked/directory link1 ln: '/path/to/my/linked/directory': hard link not allowed for directory 任何想法? 你如何处理这种configuration? 我只需要从/home/me/projects/project1 svn commit一个简单的svn commit

当两个进程试图同时执行一个perl文件时,“文本文件繁忙”是否会发生?

当我尝试执行一个perl文件,而这个文件当前被另一个进程使用时,我得到了这个消息 – “文本文件繁忙”。 根据这个/ usr / bin / perl:糟糕的解释器:文本文件忙 ,当我尝试执行它时,当perl文件被打开写入时,这个问题发生。 但文件的权限是-r-xr-xr-x。 它不提供写入权限。 当两个进程试图同时执行一个perl文件时,“文本文件繁忙”是否会发生?