【linux – -O2优化打破了某些机器上的C代码】教程文章相关的互联网学习教程文章

工具只给出构建的linux源代码【代码】

Linux是一个复杂的大型软件.系统中正在运行的内核不会使用所有代码. 我正在寻找一个工具,它可以为我提供我用于构建内核的.config所需的源代码.我希望它删除ifdefs跳过的所有行和未用于构建的源文件,甚至是drivers文件夹中的文件. 有这样的工具吗? 我正在寻找这个的原因是我不确定在内核中实际构建了哪些代码.我同意我可以手动完成,但我认为没有不需要的ifdefs会让我更清楚地了解代码.解决方法:Linux内核的配置最终定义了C编译器的...

linux – 如何获取“xdg-mime query filetype”命令的错误代码(退出代码)?【代码】

我运行了xdg-mime查询文件类型<文件名>检查文件的MIME类型,但失败了.如何打印xdg-mime命令的错误代码(退出代码)? 我想知道发生了什么错误: >命令行语法错误.>命令行上传递的文件之一不存在.>找不到所需的工具.>行动失败了.>无权读取命令行上传递的其中一个文件.解决方法:在Bourne派生的shell(sh,ash,bash,dash,zsh ……)中,最后运行的程序的退出代码在$?变量:$ls /no-such-file ls: /no-such-file: No such file or directory ...

linux – 在jdk7中找到java源代码【代码】

我已经在Ubuntu 14.04中安装了Jdk7并且它已成功配置,我可以在代码中使用java库.问题是我正在尝试定位java源代码代码,但无法找到jar文件. 以下部分更新 – 我在位置/ opt / sun / jdk7中运行以下命令find . -name *.zip它没有找到任何东西.鉴于源代码可以位于Julien建议的位置.$JAVA_HOME/src.zip这是我在安装jdk7时所做的sudo apt-get install openjdk-7-jdk 它下载了java-7-openjdk-amd64包,似乎没有类似src.zip的东西. 所以现在...

从源代码在Linux上安装第三方软件【代码】

制作Linux安装的好方法是什么? 假设我想在Linux系统上安装一些非常有用的我自己的设计和文档/参考库.在这种情况下哪个部分应该去哪里?解决方法:如果对放置物品的位置有疑问,请查阅Filesystem Hierarchy Standard(您的系统中的版本也可能存在于7小时内).它是这类东西的首选文档,大多数类Unix操作系统都遵循它. 您可能希望将您创建的库放在/usr/lib中.这是一个标准位置,通常在使用库的程序中搜索.还有/lib,/lib32, and /lib64,但您...

如何从内核源代码制作一个最小的可启动linux(仅限终端)?【代码】

参见英文答案 > What are the minimum root filesystem applications that are required to fully boot linux? 4个我想制作一个非常小的linux操作系统,它只有一个终端接口和基本命令/应用程序(busybox是我选择的命令/应用程序).我不想在我的操作系统上安装选项.我只想让它从RAM启动并完全运行.我打算使用ISO-Linux作为引导加载程序.没有网络,没有虚拟化支持,没有不必要的驱动程序等.我希望它是...

linux – FreeBSD不是Unix.但它的Unix-Like Unix.那么主Unix在哪里阅读源代码?

我想要真正了解System V,它是Unix的主要起源(不是类Unix,也不是修改Unix到Linux).主要起源非常令人困惑,并没有真正谨慎地写在某处. 是真的FreeBSD不是Unix吗?但是什么是Unix或者它在哪里呢?我在哪里可以找到原始源代码来阅读它,看看传奇是如何诞生的. http://upload.wikimedia.org/wikipedia/commons/7/77/Unix_history-simple.svg 跟进: http://www.lemis.com/grog/Documentation/Lions/index.php http://v6.cuzuco.com/解决方...

linux – 如何使用docker exec运行源代码?【代码】

我想在运行Ubuntu的docker容器中获取一个文件而不进入容器内部. 我曾经:docker exec -it CONTAINER_ID bash source FILE现在我想做:docker exec -it CONTAINER_ID source FILE并且惊讶于错误弹出:exec: "source": executable file not found in $PATH真的,我意识到源似乎不是你的标准命令,因为我无法通过哪个源找到它.我的表现很好. 无论如何这个源命令是什么类型的,以及如何通过docker exec -it执行它?解决方法:源不是可执行文...

用于将文件从一台Linux机器复制到另一台Linux机器的Java代码

我正在寻找java代码将文件复制到远程linux系统.我通过传递一个scp命令尝试了Runtime.getRuntime().exec()函数,但每次运行程序时都要求输入远程系统密码.我想避免这种情况. 我查看了Jsch库 – 使用它我可以登录到远程系统 – 但是我无法将文件复制到远程系统.一旦我登录,我可以scp到我的主机,但它再次需要主机系统用户名和密码.但是,我只有远程系统的信息.解决方法:将文件从一个主机复制到另一个主机需要远程主机上的守护程序,实现一...

linux – 是否可以在堆空间中执行代码?

我想知道我是否可以执行堆空间内的代码片段?解决方法:也许.如果堆是可执行的,则可以转移到该代码.但是一些unix变种使得heap space non-executable变得更加困难,以便利用缓冲区溢出等一些安全漏洞更加困难(那么即使你可以将代码注入程序,你也可能无法分支到它). (有关unix变体及其配置的讨论,请参阅链接文章.)此外,某些处理器体系结构具有separate caches for code and data,因此您可能需要发出缓存刷新指令.总而言之,这不是您想要...

linux – 在没有源代码的情况下隐藏程序参数【代码】

我需要隐藏一些我正在运行的程序的敏感参数,但我无法访问源代码.我也在共享服务器上运行它,所以我不能使用像hidepid这样的东西,因为我没有sudo权限. 以下是我尝试过的一些事情: >导出SECRET = [我的参数],然后调用./program $SECRET,但这似乎没有帮助.> ./program`cat secret.txt`其中secret.txt包含我的参数,但全能的ps能够嗅出我的秘密. 有没有其他方法可以隐藏不涉及管理员干预的论点?解决方法:正如here所解释的,Linux将程序的...

如何开始更改linux源代码以制作自定义操作系统?

我正在攻读CS专业的本科学习,具有C,C和Java的中等水平知识,并且还学习了一些操作系统概念(因为它们在我的课程大纲中).我听说我们可以通过更改源代码来自定义Linux(比如Ubuntu),并可以制作全新的操作系统.我从www.kernel.org网站下载了linux内核的源代码.但通过看到它,我无法理解任何东西,文件中有如此多的目录,文件(因为我认为会有一个单独的大程序).我想这样做是一个大学项目,我也希望通过对其进行必要的更改来为Linux做出贡献.但...

如何测试Linux二进制文件是否编译为位置无关代码?【代码】

我最近了解到(至少在Fedora和Red Hat Enterprise Linux上),编译为位置无关可执行文件(PIE)的可执行程序可以获得更强的地址空间随机化(ASLR)保护. 那么:如何在Linux上测试特定可执行文件是否被编译为位置独立可执行文件?解决方法:您可以使用加固检查包available in Fedora和Debian中包含的perl脚本(作为加固包含).有关检查编译标志的详细信息,请阅读此Debian wiki page.这是Debian特有的,但该理论也适用于Red Hat. 例:$hardening...

linux – 使用GRUB自定义代码?

我可以在GRUB加载时运行一些自定义代码吗?换句话说,GRUB是否提供了在加载任何操作系统之前运行一些自定义代码的工具?解决方法:由于GRUB支持the Multiboot specification,是的,你可以.您将通过GRUB加载您的代码,然后您必须自己加载操作系统(您可以通过自己支持多引导规范来完成…).根据您的想法,这可能不是最简单的方法. 如果要在加载基于Linux的操作系统之前运行一些自定义代码,创建custom initramfs会容易得多.

如何在Windows Vista上编译为Linux / Unix编写的C源代码(给出代码)【代码】

我有一个c源代码,由其他作者在linux / unix环境中编写.当我在windows vista环境中编译它时,它给了我错误.我正在使用Bloodshed Dev C v 4.9.请帮忙.#include <iostream.h> #include <map> #include <vector> #include <string> #include <string.h> #include <strstream> #include <unistd.h> #include <stdlib.h>using namespace std;template <class T> class PrefixSpan { private:vector < vector <T> > transactio...

Way Cross编译可在Windows,Linux和Mac OS上运行的C/C++代码?

有没有办法获取我的C代码并交叉编译它以在Windows,Mac OS和Linux上运行?是否有工具可以执行此操作,还是必须通过Terminal / Cygwin在每个操作系统上手动编译?解决方法:您可以使用所谓的交叉编译器进行交叉编译. Mingw可以这样安装.我相信MacOS只使用g,所以你也可以为它做一个交叉编译器.从来没有自己做过.您可以在网上搜索方向.这是我从谷歌获得的顶级链接: http://linux.bytesex.org/cross-compiler.html