-
-
Notifications
You must be signed in to change notification settings - Fork 9.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
87bea6550ae0dda7c40937cff2e86cc2b0b09491 (Stable 1.1.1) breaks compilation #9839
Comments
|
Please run this and tell me the result: |
|
I have tried configuring with So unless I get a little more details, @LordOfDragons, I simply cannot reproduce your issue. |
Here it is: The config options mostly resulted from getting around compilation problems because this build is done for multiple OS, including the notorious trouble maker windows (cross mingw compiler). |
|
The mistake you're doing is to configure with You would make your life easier if you configured like this: Or if you must use |
|
The problem is two-fold. First OpenSSL seems to not support "out of tree" building and we need to build for various targets at the same time. The Configure had been the only solution so far I found which worked. The same for linux-generic64. All other linux targets fail to compile. This had been the only configuration which worked at all. If you have a working configuration which allows building OpenSSL sanely out-of-tree with unix-64, unix-32, windows-64, windows-32 and arm platforms statically then I'm all ears. So far that's the best I could find. |
|
OpenSSL absolutely supports "out of tree" building. See: Lines 823 to 859 in 7f0a8dc
|
|
So far this did not work (configure fails with missing files in the source directory). That though had been on an openssl version some month ago. Did this change? I'll give this a try tomorrow. |
I'm not aware of any problems in this area, and I've just tried it and it worked fine for me. |
|
mattcaswell wrote:
OpenSSL absolutely supports "out of tree" building. See:
Hmm, sure on system without links ;)
|
|
If there are cases where out-of-source-tree configuration / build does not work, we want to know. |
|
Richard Levitte wrote:
If there are cases where out-of-source-tree configuration / build does not work, *we want to know*.
(we know that it doesn't work for 1.0.2, that support was added with the so called "unified" build for 1.1.0)
Let use following terminology :
(1) canonical path - path with dereferenced all links , aka realparh
(2) absolute path - path without references to current or parent
directory, aka pwd
Program that fail on system with links:
- moc : QT Meta-Object Compiler (unless is fixed in recent releases ,
not used in last 5 years)
- libtool : 2.N(?), still fail and is not usable is some cases.
Relative path calculation based on canonical path usually produces wrong
result.
Work-around - to add parasite symbolic links.
Roumen
|
|
I did mean cases where OpenSSL configuration / build goes wrong. |
|
I did now the following and compilation fails right at the start: |
|
Hmm. Very strange. I just did exactly the same as you above (same config options) and it works with no problems. |
|
I compared the gcc line from my build with yours and interestingly they are different: Mine: Yours: They are actually identical except for the beginning. Mine additionally has these command line options to gcc: Which obviously explains why yours is failing to find that include file. The question is why aren't you getting those command line opts? |
|
I'm hoping @levitte will step in at this point with an insightful comment... |
|
I have no clue. I just tried this in my 1.1.1 source tree: |
|
@LordOfDragons, do you have any local modifications we should know about (including hacking the resulting Makefile)? |
|
I did not change anything, no. But I deleted now the entire openssl directory and checked it out again. Using this command line it would go through building. Okay so far but when I try using "linux-x86_64" as you suggested it fails to compile: That's why I used linux-generic64 in the first place. That said using your new command line both "linux-x64_64" and "linux-generic64" fail with the same error. |
|
When you get that, |
|
/contrib/openssl/config --debug no-dso no-shared no-threads no-zlib no-afalgeng no-asm --api=1.0.0 linux-x86_64 |
|
Ok, so how about trying this: See, there's a difference between the |
|
Yes, we know this is confusing, and an effort to merge the two scripts is underway (but only going forward, i.e. for OpenSSL 3.0 and on) |
|
I see. Then I need to stick with Configure since we are cross-compiling for different targets on the same machine for the same final build. |
|
Sure... but if you use the generic target platform targets, you usually have to add |
With the linux-generic64 target the build is broken if we don't add the no-asm option: openssl/openssl#9839 We fix that by switching to the linux-x86_64 target. At the same time we also switch the linux-generic32 target to linux-x86.
Use no-asm when building with generic architectures such as gcc or linux-generic32, see openssl/openssl#9839 This will fix a static build failure on x86_64 due to the removal of x86/x86_64 BSAES and AES_ASM support by openssl/openssl@87bea65 Fixes: - http://autobuild.buildroot.org/results/e4f04bb13ec1b82b73db645bea4933e52bca4185 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Use no-asm when building with generic architectures such as gcc or linux-generic32, see openssl/openssl#9839 This will fix a static build failure on x86_64 due to the removal of x86/x86_64 BSAES and AES_ASM support by openssl/openssl@87bea65 Fixes: - http://autobuild.buildroot.org/results/e4f04bb13ec1b82b73db645bea4933e52bca4185 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> (cherry picked from commit 027c026) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Use no-asm when building with generic architectures such as gcc or linux-generic32, see openssl/openssl#9839 This will fix a static build failure on x86_64 due to the removal of x86/x86_64 BSAES and AES_ASM support by openssl/openssl@87bea65 Fixes: - http://autobuild.buildroot.org/results/e4f04bb13ec1b82b73db645bea4933e52bca4185 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> (cherry picked from commit 027c026) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
This question seems to have been answered. Closing. |
The commit 87bea65 in the Stable 1.1.1 branch breaks compiling (in this case static compiling OpenSSL):
Reverting right before this commit fixes the issue. Any commit after this commit breaks compiling.
(Edit by mspncp: replaced single backquotes by triple backquotes)
The text was updated successfully, but these errors were encountered: