问题标签 [mingw]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mingw - mingw 3.4.5 缺少 dlfcn.h?
我的 mingw 3.4.5 安装有可能有问题吗?或者这是在其他一些浮动的图书馆上提供的?
如果您想知道,dlfcn.h 是定义 dlopen 和 dlclose 之类的东西的地方,所以它应该是非常标准的
c - 当前正在运行的 C 程序如何找出它所在的目录?
假设我有一个当前正在执行的命令行 C 程序,并且我想在同一目录中读取文件或执行另一个二进制文件 - 我怎样才能找出那个目录?
请注意,我不是在寻找当前的工作目录。用户可能通过以下任何方式调用了我的原始程序(可能还有其他我不知道的方式)。
- ../../程序
- /home/matt/程序
- PATH=$PATH:/home/matt 程序
理想情况下,我正在寻找可以通过 MinGW 在 unix 系统和 windows 上运行的东西。
c++ - MingW 中的多线程 Windows 服务
我正在尝试使用 MingW 构建 Windows 服务。它需要线程安全异常,所以我添加了链接器标志-mthreads。该应用程序从命令行运行良好,但是当我尝试从services.msc启动它时,会引发 1054 错误(“服务未及时响应启动或控制请求”)。如果我在没有-mthreads标志的情况下重新构建它,服务就会启动。我怎样才能让它与-mthreads一起工作?
compiler-construction - MinGW - 交叉编译工具 - 最新版本?
在MinGW 下载页面,您可以下载“Cross-Hosted MinGW Build Tool”,它是一个用于构建“MinGW 交叉编译器”的 shell 脚本,以便您能够将“Linux”上的程序编译到“Windows”目标。
我已经下载了那个脚本,运行它并回答了脚本问我的交互式问题。我不得不下载一些名为“ gcc-core ”的文件。我在该页面上找到的“gcc-core 源代码”的“最新”版本是“gcc-core- 3.4.5 -20060117-2-src.tar.gz” - 所以“ 3.4.5 ”版本。
但在“Ubuntu Linux”上,我可以下载“ 4.2.1 ”版本的预编译“mingw32”包。MinGW的“Ubuntu软件包”版本怎么可能比MinGW“主页”中的版本更新?
那么“MinGW交叉编译工具”的最新版本是什么?
mingw - 在 MinGW/MSYS 上进行安装不喜欢 --prefix=/mingw
我已经开始使用 MinGW/MSYS 来尝试在 Windows 上使用一些 Linux 库。使用
到目前为止运行良好,但我有两个不同的库在 'make install' 和 'ln -s' 调用上失败。它是这样的:
首先,makefile 的用意是什么?/mingw/lib/libvamp-sdk.so.2.0.0 存在,因此将上面的“ln -s”调用替换为
会起作用,但我不确定这是否是作者的意图。
更重要的是,为什么会发生这种情况(我猜它在本机 Linux 系统上运行良好)以及解决它的最简单方法是什么?我可以手动编辑makefile,但我想知道是否有更好的解决方案。
非常感谢您的意见!
c - 一个没有#include的简单C程序
如何在不包括 stdio.h 的情况下直接调用“printf”?
我在这里找到了一个有趣的教程:
http ://www.halcode.com/archives/2008/05/11/hello-world-c-and-gnu-as/
所以,这是我的尝试:
我正在使用 MinGW 4.4,这是我的编译方式:
gcc -c hello.c -o hello.o
ld hello.o -o hello.exe C:/mingw/lib/crt2.o C:/mingw/lib/gcc/mingw32/4.4.0/crtbegin.o C: /mingw/lib/gcc/mingw32/4.4.0/crtend.o -LC:/mingw/lib/gcc/mingw32/4.4.0 -LC:/mingw/lib -lmingw32 -lgcc -lmsvcrt -lkernel32
不幸的是,它失败了:
hello.o:hello.c:(.text+0x26): 未定义对 `ss' 的引用
如何解决这个问题?
c++ - 带有嵌入式函数调用的 C++ 输出评估顺序
我是介绍 C++ 课程的助教。上周在一次测试中提出了以下问题:
以下程序的输出是什么:
对我和我所有的同事来说,答案显然是:
但现在有几个学生指出,当他们在某些环境中运行它时,他们实际上得到了相反的结果:
当我使用 gcc 在我的 linux 环境中运行它时,我得到了我所期望的。在我的 Windows 机器上使用 MinGW 我明白他们在说什么。它似乎首先评估对 myFunc 的最后一次调用,然后是第二次调用,然后是第一次调用,然后一旦获得所有结果,它就会以正常顺序输出它们,从第一个开始。但是因为电话是乱序的,所以数字是相反的。
在我看来是编译器优化,选择以相反的顺序评估函数调用,但我真的不知道为什么。我的问题是:我的假设是否正确?这就是在后台发生的事情吗?或者有什么完全不同的东西?另外,我真的不明白为什么向后评估函数然后向前评估输出会有好处。由于 ostream 的工作方式,输出必须向前,但似乎对函数的评估也应该向前。
谢谢你的帮助!
c++ - c++中整数的幂
我需要从pow(a,b)
整数中获取结果(a 和 b 也是整数)。目前(int) pow( (double)a, (double)b)
包含的计算是错误的。也许有人可以帮助使用整数执行 pow(a,b) 并返回整数的函数?
但奇怪的是:我在 Linux 中使用 Geany(和 g++/gcc 编译器)制作了我的脚本,并且只pow(a,b)
编译了脚本并且运行良好。但在大学里,我有 Dev-C++(和 MS Windows)。在 Dev-C++ 中,脚本没有编译错误[Warning] converting to
int' 来自double'
我也需要让这个脚本在 Windows(和 Mingw 编译器)下工作。