我一直在编写一个解析Visual Studio 2010解决方案并试图使用GCC编译它的应用程序。
当我构建应用程序时,我已经在标准控制台窗口中运行它并且我没有遇到任何问题(假设您忽略了我的轻微GCC不兼容性;)。)。
问题在于,当我在Visual Studio下执行此应用程序时,它会正常启动但是当它生成GCC子进程时会报告:
cc1plus.exe:加载共享库时出错:?:无法打开共享对象文件:没有这样的文件或目录
这非常令人困惑,因为它作为一个独立的控制台应用程序运行良好。那么有谁知道发生了什么?这是什么 ”?”图书馆?为什么它在控制台下工作,而不是通过VStudio?
我从构建应用程序中转储我的PATH env var,它肯定包含我的cygwin / bin目录。这之后会立刻迷路吗?如果我运行cygwin bash shell,那么/ usr / bin就在路径中。
那是什么给出的?有没有人有任何想法?
答案 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并查看哪些文件无法加载?