我在使用编译器时有点像菜鸟。我想在win 8 C:\ drive上添加一个任意目录到Cygwin gcc默认搜索路径。
这是我到目前为止所尝试的内容。使用gcc --help
我找到了命令-print-search-dirs
和-B <directory>
(“将目录添加到编译器的搜索路径中”)。
使用前一个命令输出:
install: /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/
programs: =/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/:/usr/lib/gcc/x86_64-pc-cygwin/4.
9.2/:/usr/lib/gcc/x86_64-pc-cygwin/:/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/:/usr/li
b/gcc/x86_64-pc-cygwin/:/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/../../../../x86_64-p
c-cygwin/bin/x86_64-pc-cygwin/4.9.2/:/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/../../.
./../x86_64-pc-cygwin/bin/
libraries: =/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/:/usr/lib/gcc/x86_64-pc-cygwin/4
.9.2/../../../../x86_64-pc-cygwin/lib/x86_64-pc-cygwin/4.9.2/:/usr/lib/gcc/x86_6
4-pc-cygwin/4.9.2/../../../../x86_64-pc-cygwin/lib/../lib/:/usr/lib/gcc/x86_64-p
c-cygwin/4.9.2/../../../x86_64-pc-cygwin/4.9.2/:/usr/lib/gcc/x86_64-pc-cygwin/4.
9.2/../../../../lib/:/lib/x86_64-pc-cygwin/4.9.2/:/lib/../lib/:/usr/lib/x86_64-p
c-cygwin/4.9.2/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/../../../..
/x86_64-pc-cygwin/lib/:/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/../../../:/lib/:/usr/
lib/
/usr
的完整路径为C:\cygwin64\usr
。我要添加的目录是c:\directory
所以我尝试了gcc -B /../directory
和其他变体,但是我收到了错误
gcc: fatal error: no input files
compilation terminated
似乎它认为我正在尝试编译某些东西。我想永久地将目录添加到默认搜索路径列表中。
答案 0 :(得分:1)
这里有两个问题。
第一个问题与Cygwin查看其目录树/
的顶部位于Windows目录C:\cygwin64
内的事实有关。因此,您无法在文件系统中移动到该点之上。解决方案是通过Cygwin的目录/cygdrive
,这是安装所有Windows磁盘驱动器的访问点。您可以从Cygwin访问顶级Windows目录C:\
/cygdrive/c
。因此,针对上述问题,请尝试使用gcc -B /../directory
。
gcc -B /cygdrive/c/directory
第二个问题是将目录添加到搜索路径,而不是告诉它编译特定的源文件。鉴于这个问题的日期,我认为你现在已经解决了这个问题的一部分了吗?