1、Cygwin下把make从v382换成v381折腾:【未解决】Cygwin下配置Linux内核出错:Makefile:419: * mixed implicit and normal rules. Stop.期间,需要把Cygwin中的,新的版本的,3.82的make,换为旧的,3.81版本的。【折腾过程】1.目前能想到的,只能是重新运行setup,然后试试能否找到3.81的make,然后重新安装。2.后来参考:How to install new packages on Cygwin?提到了,貌似可以通过apt-cyg去安装一个软件包的。而此apt-cyg,之前就在别处的cygwin下安装过
2、。所以,此处,再去在此处的cygwin下安装一下:找到:然后去下载和安装:?12345678910111213141516171819CLiPC-CLI-1 /develop/kernel/linux-2.6.19.1$ svn -force export http:/apt- /bin/A /binA /bin/apt-cygExported revision 18.CLiPC-CLI-1 /develop/kernel/linux-2.6.19.1$ chmod +x /bin/apt-cygCLiPC-CLI-1 /develop/kernel/linux-2.6.19.1$ apt-c
3、yg -versionapt-cyg version 0.57Written by Stephen JungelsCopyright (c) 2005-9 Stephen Jungels. Released under the GPL.CLiPC-CLI-1 /develop/kernel/linux-2.6.19.1$ which apt-cyg/usr/bin/apt-cyg即可。3.试试能否去安装make,结果连不上服务器:?123456789101112131415161718192021222324252627282930313233343536373839CLiPC-CLI-1 /
4、develop/kernel/linux-2.6.19.1$ apt-cyg cache search makeapt-cyg: Installs and removes Cygwin packages.apt-cyg install to install packagesapt-cyg remove to remove packagesapt-cyg update to update setup.iniapt-cyg show to show installed packagesapt-cyg find to find packages matching patternsapt-cyg de
5、scribe to describe packages matching patternsapt-cyg packageof to locate parent packagesOptions:-mirror, -m : set mirror-cache, -c : set cache-file, -f : read package names from file-noupdate, -u : dont update setup.ini from mirror-help-versionCLiPC-CLI-1 /develop/kernel/linux-2.6.19.1$ apt-cyg find
6、 makeWorking directory is /setupMirror is ftp:/mirror.mcs.anl.gov/pub/cygwin-2013-08-22 14:03:25- ftp:/mirror.mcs.anl.gov/pub/cygwin/setup.bz2= .listingResolving mirror.mcs.anl.gov (mirror.mcs.anl.gov). 146.137.96.7, 2620:0:dc0:1800:214:4fff:fe7d:1b9Connecting to mirror.mcs.anl.gov (mirror.mcs.anl.g
7、ov)|146.137.96.7|:21. failed: Connection timed out.Connecting to mirror.mcs.anl.gov (mirror.mcs.anl.gov)|2620:0:dc0:1800:214:4fff:fe7d:1b9|:21. failed: Connection timed out.Retrying.-2013-08-22 14:04:09- ftp:/mirror.mcs.anl.gov/pub/cygwin/setup.bz2(try: 2) = .listingConnecting to mirror.mcs.anl.gov
8、(mirror.mcs.anl.gov)|146.137.96.7|:21. failed: Connection timed out.Connecting to mirror.mcs.anl.gov (mirror.mcs.anl.gov)|2620:0:dc0:1800:214:4fff:fe7d:1b9|:21. failed: Connection timed out.Retrying.-2013-08-22 14:04:53- ftp:/mirror.mcs.anl.gov/pub/cygwin/setup.bz2(try: 3) = .listingConnecting to mi
9、rror.mcs.anl.gov (mirror.mcs.anl.gov)|146.137.96.7|:21. failed: Connection timed out.Connecting to mirror.mcs.anl.gov (mirror.mcs.anl.gov)|2620:0:dc0:1800:214:4fff:fe7d:1b9|:21.4.所以,貌似,此处,只能放弃apt-cyg了。那就想办法,通过setup去安装3.81的make。看到cygwin主页:的说明,貌似现在又出现一个for x64的:setup-x86_64.exe当前此处win7是x64的,所以,不知道要不要用
10、这个for x64的setup。因为担心,会不会运行此x64的setup,和之前已经(用x86的setup)安装的cygwin,会有冲突。所以还是先去看看,能否找到原先已有的那个setup.exe了。找到了之前用的setup.exe:所以,就可以重新去运行了:暂时还是先从本地看看再说:结果,本地只有3.82的make:所以,放弃从本地安装。重新运行setup.exe,选择在线安装:直接连接:选择163的源:然后结果竟然出错了“Unable to get setup.ini from 【已解决】Cygwin安装时,选择163的源后出错:Unable to get setup.ini from 5
11、.然后还是看到只有3.82的make,但是注意到,当前是选择了“Hide obsolete packages”的:6.所以,取消选择“Hide obsolete packages”,看看能否有其他版本的make,结果还是没有:7.然后尝试切换到Exp试试:看看能否有其他版本的make,结果还是没有:8.貌似163的cygwin的mirror中,没有3.81的make?所以去看了看:结果真的没有搜到3.81的make。不过倒是在:中搜到了3.81的make: makesdesc: The GNU version of the make utilityldesc: A GNU tool for c
12、ontrolling the generation of executables and othernon-source files of a program from the programs source files. Makeallows users to build and install packages without any significantknowledge about the details of the build process. The details abouthow the program should be built are provided for ma
13、ke in the programsmakefile.category: Develrequires: cygwin coreutils bash libintl8 libiconv2version: 3.82.90-1install: x86/release/make/make-3.82.90-1.tar.bz2 452564 5f7a3fa41811b2309b735862a291615bsource: x86/release/make/make-3.82.90-1-src.tar.bz2 1312867 6758bbbd3315c37d9e8df888a276cef6prevversio
14、n: 3.81-2install: x86/release/make/make-3.81-2.tar.bz2 358213 8c54e2611401c435cec0a9a95fd0e9dcsource: x86/release/make/make-3.81-2-src.tar.bz2 1114196 615bc53f9c86f365974caeb41006975e9.所以,接下来,就是去:重新用cygwin官网的最新的setup.exe,去加载163的x86的mirror:然后应该就可以找到对应的3.81的make了。去下载然后去安装:然后同样设置x86的163的mirror:此处,好像是,第
15、二个:结果是地址搞错了,弄了两个x86:换成正确的:然后正确解析了,再去找3.81的make,结果如上,也是找不到。10.然后,再次去确认一下,本地的setup.in:D:tmpdev_toolscygwinhttp%3a%2f%2fcygwin%2fx86%2fsetup.ini其中是包含了3.81的make的: makesdesc: The GNU version of the make utilityldesc: A GNU tool for controlling the generation of executables and othernon-source files of a
16、program from the programs source files. Makeallows users to build and install packages without any significantknowledge about the details of the build process. The details abouthow the program should be built are provided for make in the programsmakefile.category: Develrequires: cygwin coreutils bas
17、h libintl8 libiconv2version: 3.82.90-1install: x86/release/make/make-3.82.90-1.tar.bz2 452564 5f7a3fa41811b2309b735862a291615bsource: x86/release/make/make-3.82.90-1-src.tar.bz2 1312867 6758bbbd3315c37d9e8df888a276cef6prevversion: 3.81-2install: x86/release/make/make-3.81-2.tar.bz2 358213 8c54e26114
18、01c435cec0a9a95fd0e9dcsource: x86/release/make/make-3.81-2-src.tar.bz2 1114196 615bc53f9c86f365974caeb41006975e但是还是找不到。11.后来的后来,无意间发现,原来,make的那个keep,是可以点击切换的,除了之前的uninstall等选项之外,还可以切换到,之前的3.81的版本的:如此,就可以实现了:卸载旧的3.82的make,重新安装旧的3.81的make了。然后,另外也顺带,把src选上:12.继续去安装:由于默认的选择了其他的一些软件包,结果会去另外下载和安装这些包:然后就是漫
19、长的等待了。13.其中,此处,发现:原先下载的位置是:D:tmpdev_toolscygwinhttp%3a%2f%2fcygwin%2frelease而此处,没有下载到:D:tmpdev_toolscygwinhttp%3a%2f%2fcygwin%2fx86%2f而是下载到了:D:tmpdev_toolscygwinhttp%3a%2f%2fcygwin%2fx86下面的release了,即:D:tmpdev_toolscygwinhttp%3a%2f%2fcygwin%2fx86release所以,为了加速,减少部分内容的下载,就把D:tmpdev_toolscygwinhttp%3a%
20、2f%2fcygwin%2frelease下面所有的包,全部都拷贝到D:tmpdev_toolscygwinhttp%3a%2f%2fcygwin%2fx86release下面去了,这样,就可以减少N多内容的下载,加快速度了。14.经过漫长的等待,下载完毕后,就是去安装了:然后就是运行一些脚本:15.最后,终于安装完成了:然后再去启动Cygwin,确认一下make的版本,果然是3.81了:?123456789CLiPC-CLI-1 /develop/kernel/linux-2.6.19.1$ make -vGNU Make 3.81Copyright (C) 2006 Free Software Foundation, Inc.This is free software; see the source for copying conditions.There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE.This program built for i686-pc-cygwin【总结】本来只是把cygwin中的make从3.82换成3.81的,结果却是重新完整的安装了一遍cygwin,太耗时间了。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1