#53549 closed defect (fixed)
Error: org.macports.configure for port libssh returned: configure failure: command execution failed
Reported by: | ppiseri | Owned by: | Mihai Moldovan <ionic@…> |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.3 |
Keywords: | tiger | Cc: | cal@…, ionic@… |
Port: | libssh |
Description
Configure fails. Apparently due to missing libraries and header files?
Platform detail mac-mini (intel), OSX 10.4.11
Attachments (11)
Change History (43)
Changed 8 years ago by ppiseri
Attachment: | CMakeOutput.log added |
---|
Changed 8 years ago by ppiseri
Attachment: | CMakeError.log added |
---|
Changed 8 years ago by ppiseri
Attachment: | libssh__main.log added |
---|
comment:1 Changed 8 years ago by kencu (Ken)
comment:2 Changed 8 years ago by ppiseri
thank you Ken, I updated openssl, now I get:
openssl @1.0.2k_0 (active) platform='darwin 8' archs='i386'
the header files are found now, but still installation of libssh fails with similar output (missing Threads_FOUND and NACL_LIBRARIES NACL_INCLUDE_DIRS). I'm attaching new logs.
Changed 8 years ago by ppiseri
Attachment: | libssh__main.2.log added |
---|
Changed 8 years ago by ppiseri
Attachment: | CMakeOutput.2.log added |
---|
Changed 8 years ago by ppiseri
Attachment: | CMakeError.2.log added |
---|
comment:3 Changed 8 years ago by Ionic (Mihai Moldovan)
NACL
is not necessary, this check failing is normal.
As to OpenSSL
... well, the port does have a library dependency upon libssl.dylib and defaults to the openssl
port for that to satisfy. This either means that you installed a libssl.dylib
binary yourself in your MacPorts prefix or port
is not working properly, but I really doubt the latter...
The first main.log file is incomplete, too, so we'll never know.
If you take a good look at your second main.log file, you'll notice that the check for openssl/des.h
is still failing.
Please always run the clean target between consecutive runs. sudo port clean libssh
. Then try the other operation again.
comment:4 Changed 8 years ago by ppiseri
Thank you Mihai, I did run the clean now, but got the same result. openssl/des.h is still missing.
Also, argp.h, pty.h, libutil.h, byteswap.h could not be found, but these should belong to some kind of standard library and are presumably not connected to the fail triggered by bad openssl port.
CMakeError.log also says:
ld: library not found for -lssp_nonshared
Changed 8 years ago by ppiseri
Attachment: | openssl_contents.txt added |
---|
comment:6 Changed 8 years ago by ppiseri
I attached the output, and it seems des.h is there. So, I guess there's something wrong with the search path.
comment:7 follow-up: 17 Changed 8 years ago by Ionic (Mihai Moldovan)
Or your compiler is crashing in some way. Can you upload a clean build log, including the CMake-generated logfiles, please?
comment:8 follow-up: 9 Changed 8 years ago by kencu (Ken)
I wonder if you have something in /usr/local/include
. You can check this in several ways, open /usr/local/include
or ls -la /usr/local/include/*
.
If you do, that is your problem. Macports compilers look there before they look in /opt/local/include
, and that causes lots of troubles if you have something in there (although it can be useful if you use it correctly).
comment:9 Changed 8 years ago by Ionic (Mihai Moldovan)
Replying to kencu:
... although it can be useful if you use it correctly ...
It should be nuked from orbit. I still hope trace mode will be the default mode of operation one day (although it's known to not work correctly on older systems.)
Certainly, anything in /usr/local/
might screw with any build process, spot on.
comment:10 follow-up: 14 Changed 8 years ago by kencu (Ken)
So, I just tried installing libssh on 10.4 PPC and ran into the same error as you -- openssl/des.h
is not found, although it's there. So there's something wrong with libssh that it is not finding it -- probably the cmake openssl search script is not working right. Haven't dug into that yet. Usually there's a way to override it, but I don't need libssh for anything so no motivation at present.
libssh2 installs perfectly well, though (go figure). However, I see that x2goclient doesn't use that.
x2goclient (your ultimate end point) also requires qt4-mac, and you'll have lots of trouble with that on Tiger unless you use my custom Tiger repo (more hassles). If you want to try that, it's at https://github.com/kencu/TigerPorts . But then now you have more hassles - learn about and install custom repos, etc.
So -- give up, I'd say. Go to 10.6 or 10.7, and try this again. You'll be happy you did, I think.
comment:11 follow-up: 16 Changed 8 years ago by Ionic (Mihai Moldovan)
Have you tried our 10.6 bundle for X2Go Client on the project homepage? A few years ago I tried hacking in 10.4 support, but it's difficult to say if that still works. I only ever tested that it starts up and basically connects back then in a 10.4 VM. We're not offering PPC support any longer, though...
This said, AFAIK the last version to properly support PPC was 10.5, so that's the only such users could possibly upgrade to. Still hopelessly outdated...
Given he's using i386, at least he might be able to get to at least 10.6.
What I do see in his CMake output is that there's no -I/opt/local/include
flag passed anywhere. Only the CPATH
env variable includes it. Need to dig deeper to find out why.
comment:12 follow-up: 19 Changed 8 years ago by Mihai Moldovan <ionic@…>
Owner: | set to Mihai Moldovan <ionic@…> |
---|---|
Resolution: | → fixed |
Status: | new → closed |
comment:13 follow-up: 18 Changed 8 years ago by Ionic (Mihai Moldovan)
If it doesn't work, report back and I'll re-open the ticket.
comment:14 Changed 8 years ago by ppiseri
Replying to kencu:
So, I just tried installing libssh on 10.4 PPC and ran into the same error as you --
openssl/des.h
is not found, although it's there. So there's something wrong with libssh that it is not finding it -- probably the cmake openssl search script is not working right. Haven't dug into that yet. Usually there's a way to override it, but I don't need libssh for anything so no motivation at present.libssh2 installs perfectly well, though (go figure). However, I see that x2goclient doesn't use that.
x2goclient (your ultimate end point) also requires qt4-mac, and you'll have lots of trouble with that on Tiger unless you use my custom Tiger repo (more hassles). If you want to try that, it's at https://github.com/kencu/TigerPorts . But then now you have more hassles - learn about and install custom repos, etc.
So -- give up, I'd say. Go to 10.6 or 10.7, and try this again. You'll be happy you did, I think.
well, I'm glad that this could lead to discover something affecting more machines than only my old (probably messed up) system. Maybe it will help someone else, thanks to you guys! I ordered Lion on the apple store and I'll find the time to upgrade my system..
comment:16 Changed 8 years ago by ppiseri
Replying to Ionic:
Have you tried our 10.6 bundle for X2Go Client on the project homepage? A few years ago I tried hacking in 10.4 support, but it's difficult to say if that still works. I only ever tested that it starts up and basically connects back then in a 10.4 VM. We're not offering PPC support any longer, though...
Yes, I tried it but it didn't work. Hitting the launcher simply had no visible effect. I didn't dig much to find the reason because the wiki pages were not claiming it should work on earlier systems than 10.6, and I thought the port solution could have better chances.
Changed 8 years ago by ppiseri
Attachment: | CMakeError.3.log added |
---|
Changed 8 years ago by ppiseri
Attachment: | CMakeOutput.3.log added |
---|
Changed 8 years ago by ppiseri
Attachment: | libssh__main.3.log added |
---|
comment:17 Changed 8 years ago by ppiseri
Replying to Ionic:
Or your compiler is crashing in some way. Can you upload a clean build log, including the CMake-generated logfiles, please?
I just did it, if they are still useful.
comment:18 Changed 8 years ago by ppiseri
Replying to Ionic:
If it doesn't work, report back and I'll re-open the ticket.
Sorry, I'm new to macports and I didn't get what I should do. I tried again with the -isystem option, but still didn't work.
Should I point somehow at a development version of the port? I tried to figure out how by reading the doc pages, but I could not find out how it works. Should I download the portfile and use local files?
by the way: yes, /usr/local does have contents under ./include and ./lib (this is the missing answer to comments 9 and 10)
comment:19 Changed 8 years ago by Ionic (Mihai Moldovan)
No, way easier than that.
sudo port clean libssh sudo port selfupdate
Then try again whatever you ran the first time around.
comment:20 Changed 8 years ago by ppiseri
Ok, than that is what I did actually.
As a matter of fact, selfupdate failed itself, but
sudo port -d livecheck libssh
was showing the correct today's modification date for the portfile
comment:21 follow-up: 24 Changed 8 years ago by Ionic (Mihai Moldovan)
The selfupdate failed? How did that happen? I can't see CPPFLAGS being set in the environment, which is weird. Normally it should now include something. Are you sure that you synced up successfully?
comment:22 Changed 8 years ago by kencu (Ken)
I know it takes a while for github updates to filter through to be picked up by a port selfupdate. 24 hours?
comment:23 Changed 8 years ago by Ionic (Mihai Moldovan)
Most mirrors sync at reasonable intervals. A few hours at most.
comment:24 Changed 8 years ago by ppiseri
Replying to Ionic:
The selfupdate failed? How did that happen? I can't see CPPFLAGS being set in the environment, which is weird. Normally it should now include something. Are you sure that you synced up successfully?
The failure happens at the configure stage (missing script; the target folder is empty indeed), before setting the environment variables. The tail of debug output is:
configure: === configuring in vendor/tcl/unix (/opt/local/var/macports/sources/rsync.macports.org/release/base/vendor/tcl/unix) configure: error: no configure script found in vendor/tcl/unix Command failed: cd /opt/local/var/macports/sources/rsync.macports.org/release/base && CC=/usr/bin/cc OBJC=/usr/bin/cc ./configure --prefix=/opt/local --with-install-user=root --with-install-group=admin --with-directory-mode=0775 --enable-readline && make SELFUPDATING=1 && make install SELFUPDATING=1 Exit code: 1 DEBUG: Error installing new MacPorts base: command execution failed while executing "macports::selfupdate [array get global_options] base_updated" Error: Error installing new MacPorts base: command execution failed To report a bug, follow the instructions in the guide: http://guide.macports.org/#project.tickets Error: /opt/local/bin/port: port selfupdate failed: Error installing new MacPorts base: command execution failed
About syncing with the latest port modification, I was relying on the output from livecheck debug, saying:
DEBUG: Executing org.macports.livecheck (libssh) DEBUG: Portfile modification date is Sun Feb 12 00:09:23 CET 2017
comment:25 Changed 8 years ago by kencu (Ken)
Macports 2.40 base has just been updated, but is not yet compatible with 10.4. It has been fixed, but 2.4.1 is not rolled out yet. For now, you need to do this instead:
sudo port -v sync
comment:26 Changed 8 years ago by Ionic (Mihai Moldovan)
Ah, you probably are still using rsync
without the newer tarball mechanism then.
Please edit /opt/local/etc/macports/macports.conf
, search for rsync_options
and change the value to -rtzvl --delete-after
(i.e., adding the -l
option.)
Selfupdate should work afterwards - in theory, at least. Ken, will a successful upgrade to 2.4.0 break his current setup on 10.4?
comment:27 Changed 8 years ago by ppiseri
Hi,
I added the -l option to rsync in macports.conf adn now it does proceed much further, but cannot complete anyway. Error message is atached.
The
sudo port -v sync
command apparently does his job although only 4 port files are processed (some python versions), so I assume the ports update via selfupdate was working at least on the file-transfer part of the job.
Changed 8 years ago by ppiseri
Attachment: | selfupdate_debug_tail.txt added |
---|
comment:28 Changed 8 years ago by neverpanic (Clemens Lang)
Please don't add the -l
option in rsync_options
, but instead follow the instructions in #53414, comment 1 & 2.
comment:29 Changed 8 years ago by neverpanic (Clemens Lang)
Also, on tiger 2.4.0 won't compile, only 2.4.1 will, which has not been released.
comment:30 Changed 8 years ago by ppiseri
Hi Clemens, I did follow your suggestion but it ended up in the same error as produced with -l option and rsync_dir ending with release/base. Only the path changes in the error message with "release/tarball/base" appearing where it was "release/base".
comment:31 Changed 8 years ago by kencu (Ken)
AFAIK, the only way to get a working 2.4.x on TIger is to download the latest sources from github and install from source. I would just wait, use the sync
option mentioned above, and check later (a week or two?) to see if 2.4.1. is out.
there is no advantage that I know of for you to upgrade to 2.4.x on Tiger right now, and it's not worth the hassle of installing from source at present (especially given you're about to upgrade to 10.7 anyway, as you said). having said that, 2.4.x appears to work fine on Tiger once installed.
don't forget to empty out whatever it is you have found in /usr/local in the upgrade process, or there will likely be trouble with macports.
comment:32 Changed 8 years ago by ppiseri
Thank you Ken, I'll take your wise advice.
Thanks everybody for great support!
Hi - as you noticed, your log says
so go ahead and please check if you have openssl installed.
If not, go ahead and install it
sudo port -v install openssl
and try your libssh install again. OpenSSL seems to install perfectly fine on 10.4.