compilation相关内容
好吧,我一直在使用 Dev-C++ 来学习语言 [c++],但有些东西无法正常工作,例如全局变量和局部变量.然后我决定下载 Microsoft Visual C++ 来看看它的比较,它绝对很棒;尤其是它的美学.不过,让我感到困扰的一件事是,由于我需要制作大量小源文件来测试我学到的东西,因此我必须每次都制作一个大型项目文件,这会占用 ~18mb 的空间.我试图只制作一个源 C++ 文件,但它永远不会
..
当我在发布模式下使用 cmake 时,我有以下二进制文件: 64 位 LSB 可执行文件,x86-64,版本 1 (SYSV),动态链接,解释器/lib64/ld-linux-x86-64.so.2,用于 GNU/Linux 2.6.32,BuildID[sha1]=485ac09b0a3aa879f88b7f5db6c00ea8d8e1eaf6,未剥离 我想剥离二进制文件.我怎么能以干净的方
..
C# 将如何编译它? if (info == 8)信息 = 4;其他的东西(); 它会包含代码块中的后续行吗? if (info == 8){信息 = 4;其他的东西();} 还是只需要下一行? if (info == 8){信息 = 4;}其他的东西(); 解决方案 是的,它支持它 - 但它需要下一个语句,而不是下一个行.例如: int a = 0;int b = 0;如果 (s
..
我已经了解了 CPU/ASM/C 的基础知识,但不明白为什么我们需要为不同的操作系统目标编译不同的 C 代码.编译器所做的是创建汇编代码,然后将其组装成二进制机器代码.由于指令集架构不同,ASM 代码当然因 CPU 架构(例如 ARM)而异. 但是由于Linux和Windows运行在同一个CPU上,像MOVE/ADD/...这样的机器操作应该是相同的.虽然我确实知道有特定于操作系统的功能,例
..
我尝试了许多 stackoverflow 选项,例如 加载现有组件动态 Angular 2 最终版本. 我想要做的是获取一个带有 ajax 请求的 html 页面,并在我的自定义组件中渲染/编译这个模板. 我发现 angular2 有两个已弃用的组件,我必须使用 ComponentFactoryResolver. 在我的旧解决方案中,我可以设置一个“[innerHtml]"来呈现
..
使用 CMake 制作项目时出现错误: -- 找不到线程(丢失:Threads_FOUND) 错误日志显示 CMake 被一些真正平庸的东西绊倒了: /usr/bin/cc -std=c11 -D_GNU_SOURCE -Wall -Wextra -Wpointer-arith -Wundef -Wvla -Wwrite-strings -Werror -Wno-error=extra -W
..
我有一个项目要为 Windows 交叉编译.我有合适的 Makefile 并且一切都适用于 g++.我跑了 $ apt install mingw-w64 并下载了 500 MB 的软件包,但我不知道如何实际运行它.没有 mingw 可执行文件,那么我如何实际使用它进行编译? 解决方案 如果您查看 mingw-w64 的组成软件包的 Ubuntu 软件包网络服务器上的文件列表:
..
我在链接过程中收到以下警告: /usr/bin/ld: 警告:libxxx.so.6,/a/b/c/libyyy.so 需要,未找到(尝试使用 -rpath 或 -rpath-link) 设置环境变量 LD_LIBRARY_PATH=path_to_libxxx.so.6 使警告静音(添加 -Lpath_to_libxxx.so.6 没有帮助). 我有一个单独的编译服务器,只编译生成的二
..
我尝试了无数次尝试将我的 .o 文件移动到我的 obj 文件夹,但无论我做什么,它都无法正常工作. 从提供的 makefile 来看,将 .o 文件移动到指定文件夹的最佳方法是什么? BIN = bin/对象=对象/目标 = opengl_03DEPS = main.o displayinit.o initializer.o algorithm.o matrix3f.o window.o
..
我在 Ubuntu 12.10 上安装了带有 UCS2 版本的 Python2.7.我只想用UCS4重新编译python或启用UCS4.我该怎么做? 解决方案 使用: ./configure --enable-unicode=ucs4 配置源以使用 UCS4 支持进行构建. 从 ./configure --help 输出: --enable-unicode[=ucs[24]]
..
有没有办法把 Erlang 编译成一个独立的可执行文件?这意味着,将它作为没有 Erlang 运行时的 exe 运行. 解决方案 虽然可以将所有内容都包含在单个 EXE 中,但您不会远离 Erlang 运行时.例如,由于其性质,像 Erlang 这样的动态语言无法真正编译为原生 x86 代码.那里必须有翻译. 可以想出一个方案,将解释器和所有 BEAM 文件捆绑到一个单独的 EXE
..
我知道如何使用 cx_freeze 将 CPython 文件编译为 exe,但是是否可以使用 PyPy 将一个简单的程序编译为 Exe? 解决方案 就我所知,没有现成的方法或教程来说明如何使用 PyPy 解释器从程序创建 EXE.恐怕要让事情顺利进行并不是一件容易的事. 原则上,有两种方法可以考虑使用 PyPy 的翻译来获取 EXE 文件,要么使用 PyPy 解释器,要么编写自己的
..
在问我的问题之前,我想介绍一些技术细节,以确保我的回答是正确的: 位置独立可执行文件 (PIE) 是一种无论加载到哪个内存地址都能够执行的程序,对吗? ASLR(地址空间布局随机化)几乎说明为了保持地址静态,我们会以某种方式随机化它们, 我读过专门在基于 Linux 和 Unix 的系统中,无论我们的代码是 PIE,还是 PIE,所有跳转、调用和偏移都是相对的,因此我们没有问题,
..
在使用以下命令安装 Opencv 后,我正在尝试编译示例程序: g++ hello-world.cpp -o hello-world -I/usr/local/include/opencv -L/usr/local/lib -lm -lcv -lhighgui -lcvaux 但是,我收到一条错误消息: /usr/bin/ld: 找不到 -lcv/usr/bin/ld: 找不到 -lhigh
..
我对一些研究或经验数据非常感兴趣,这些研究或经验数据显示了两个相同的 C++ 项目之间编译时间的比较,除了一个尽可能使用前向声明而另一个不使用. 与完整包含相比,前向声明对编译时间的改变有多大? #include "myClass.h" 对比 class myClass; 是否有任何研究对此进行检验? 我意识到这是一个模糊的问题,很大程度上取决于项目.我不希望有一个硬性数字来回
..
我有以下 C/C++ 函数: unsigned div3(unsigned x) {返回 x/3;} 在 -O3 使用 clang 10 编译时,结果为: div3(无符号整数):mov ecx, edi # tmp = xmov eax, 2863311531 # 结果 = 3^-1imul rax, rcx # 结果 *= tmpshr rax, 33 # 结果 >>= 33退 我所理
..
我曾尝试在 Android 上的 Janino 上使用一些东西,但得出的结论是它们根本无法在 Dalvik VM 中运行. 所以我只想问一个简单的问题:在 Android 上,是否可以在运行时编译包含代码的字符串以在应用程序中使用.如果是这样,是否有任何库可以让我这样做和/或您可以分享如何执行此操作的代码示例? 对于(一个非常简单的) 示例,如果我有一个包含以下内容的 String 对
..
我正在 Windows 7 下用 bjam 编译 boost(64 位应该无关紧要) D:\development\boost\boost_1_44\libs\iostreams\build>bjam stage ^--toolset=msvc-10.0 链接=静态 ^--build-type=完成 ^-s ZLIB_SOURCE=C:\zlib125-dll ^-s ZLIB_LIBPATH=
..
我最近注意到有一些 Java 库(JDK、joda time、iText)在编译时没有一些/所有调试信息.要么缺少局部变量信息,要么缺少局部变量信息和行号. 有什么原因吗?我意识到它使编译后的代码更大,但我认为这不是一个特别大的考虑.还是只是使用默认编译选项进行构建? 谢谢. 解决方案 默认编译选项不包含调试信息,您必须明确告诉编译器包含它.大多数人忽略它的原因有几个:
..
我现在正在我的编译理论课程中学习解析器.我需要找到一个在 LL(1) 中但不在 LALR 中的语法示例.我知道它应该存在.请帮我想一个最简单的例子来解决这个问题. 解决方案 一些谷歌搜索提出了这个非 LALR(1) 语法的例子,即 LL(1): S ::= '(' X|']'|F ')'X ::= E ')'|F ']'E ::= AF ::= AA ::= ε LALR(1) 构造失
..