我可以使用git clone之后存在的文件吗? [英] Can I use the files present after a git clone?

查看:443
本文介绍了我可以使用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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆