通过Visual Studio运行GCC

时间:2011-01-20 19:43:34

标签: c++ visual-studio-2010 gcc msbuild cygwin

我一直在编写一个解析Visual Studio 2010解决方案并试图使用GCC编译它的应用程序。

当我构建应用程序时,我已经在标准控制台窗口中运行它并且我没有遇到任何问题(假设您忽略了我的轻微GCC不兼容性;)。)。

问题在于,当我在Visual Studio下执行此应用程序时,它会正常启动但是当它生成GCC子进程时会报告:

  

cc1plus.exe:加载共享库时出错:?:无法打开共享对象文件:没有这样的文件或目录

这非常令人困惑,因为它作为一个独立的控制台应用程序运行良好。那么有谁知道发生了什么?这是什么 ”?”图书馆?为什么它在控制台下工作,而不是通过VStudio?

我从构建应用程序中转储我的PATH env var,它肯定包含我的cygwin / bin目录。这之后会立刻迷路吗?如果我运行cygwin bash shell,那么/ usr / bin就在路径中。

那是什么给出的?有没有人有任何想法?

2 个答案:

答案 0 :(得分:5)

我没有尝试使用visual studio这个问题,我不确定这是否解决了你的问题,但是在尝试使用emacs在windows中使用cygwin的gcc编译程序时遇到了类似的问题。 Siince cygwin的gcc.exe不是可执行文件,而是实际可执行文件的一种符号链接(根据你安装的内容,它是gcc-3.exe或gcc-4.exe)。在BASH shell中,这些符号链接很容易解析,在cmd.exe中它们不是。

答案 1 :(得分:3)

运行SysInternals ProcMon并查看哪些文件无法加载?