我可以使用git clone之后存在的文件吗? [英] Can I use the files present after a git clone?
问题描述
我正在尝试了解制造问题,并且不确定发生了什么.我不确定我是否遇到make或git的问题.
I'm trying to understand a make problem, and I'm not sure what is going on. I'm not sure if I'm experiencing a problem with make or a problem git.
如果我执行:
$ git clone git://git.openssl.org/openssl.git openssl-git
然后我得到的似乎是OpenSSL的源文件:
Then I get what appears to be OpenSSL's source files:
$ cd openssl-git
$ ls
ACKNOWLEDGMENTS INSTALL.VMS README demos os2
CHANGES INSTALL.W32 README.ASN1 doc perl
CHANGES.SSLeay INSTALL.W64 README.ECC e_os.h shlib
Configure INSTALL.WCE README.ENGINE e_os2.h ssl
...
这些文件看起来与精确完全一样,就像我下载OpenSSL tarball并将其解压缩时得到的那样.
Those files look exactly like I get when I download an OpenSSL tarball and unpack it.
那些文件不可用吗?我不允许对它们执行make
吗?
Are those files not usable? Am I not allowed to perform a make
on them?
我问这样一个简单问题的原因是:打开Configure
,修改其中一个configure行,然后执行clean,configure和make.使随后失败.当我问到这个问题时,我被告知我没有正确使用git.
The reason I'm asking such a simple question is: I open Configure
, I modify one of the configure lines, and then I perform a clean, configure and make. Make subsequently fails. When I ask about it, I'm told I'm not using git correctly.
以下是一些人告诉我make没问题,而我使用git的方式不正确(来自OpenSSL Testing邮件列表):
Here are the folks telling me make is OK and I'm using git incorrectly (from the OpenSSL Testing mailing list): openssl-dev, link error [heartbeat_test] Error 2.
以下是一些人告诉我,我使用的git不正确(来自Stack Overflow):
Here are the folks telling me I'm using git incorrectly (from Stack Overflow): Why does deleting a conflicted file break a project?.
注意:我在两个SO问题中都遇到了相同的问题,只是这个问题使用的是新克隆.
Note: I experience the same problem in both SO question, except this question uses a fresh clone.
# Standard checkout
git clone git://git.openssl.org/openssl.git openssl-git
cd openssl-git
# This is a false start. A config is needed to create a Makefile
export KERNEL_BITS=64
./config
# Clean up developer checked-in cruft
make clean && make dclean
# Open Configure, find debug-darwin64-x86_64-cc, change -g2 to -g3
./Configure debug-darwin64-x86_64-cc no-ssl2 enable-ec_nistp_64_gcc_128
make depend
make
...
duplicate symbol _main in:
heartbeat_test.o
testutil.o
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [link_app.] Error 1
make[1]: *** [heartbeat_test] Error 2
make: *** [build_tests] Error 1
我也可以将./Configure debug-darwin64-x86_64-cc no-ssl2 enable-ec_nistp_64_gcc_128
更改为./config no-ssl2 enable-ec_nistp_64_gcc_128
,结果相同. export KERNEL_BITS=64
确保我得到64位Darwin配置(darwin64-x86_64-cc
).
I can also change ./Configure debug-darwin64-x86_64-cc no-ssl2 enable-ec_nistp_64_gcc_128
to ./config no-ssl2 enable-ec_nistp_64_gcc_128
with the same results. The export KERNEL_BITS=64
ensures I get the 64-bit Darwin configuration (darwin64-x86_64-cc
).
推荐答案
您应该能够使用该克隆进行make
.
You should be able to use that clone to do a make
.
But note that INSTALL
advices to use ./config
, not Configure
directly.
You can modify Configure
, but you should do a ./config
after, not ./Configure
(unless you want to configure OpenSSL for your operating system manually).
这篇关于我可以使用git clone之后存在的文件吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!