Opened 8 years ago

Closed 8 years ago

Last modified 4 years ago

#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)

CMakeOutput.log (12.9 KB) - added by ppiseri 8 years ago.
CMakeError.log (22.6 KB) - added by ppiseri 8 years ago.
libssh__main.log (12.9 KB) - added by ppiseri 8 years ago.
libssh__main.2.log (39.4 KB) - added by ppiseri 8 years ago.
CMakeOutput.2.log (12.9 KB) - added by ppiseri 8 years ago.
CMakeError.2.log (22.6 KB) - added by ppiseri 8 years ago.
openssl_contents.txt (87.8 KB) - added by ppiseri 8 years ago.
CMakeError.3.log (22.6 KB) - added by ppiseri 8 years ago.
CMakeOutput.3.log (12.9 KB) - added by ppiseri 8 years ago.
libssh__main.3.log (45.3 KB) - added by ppiseri 8 years ago.
selfupdate_debug_tail.txt (2.4 KB) - added by ppiseri 8 years ago.

Download all attachments as: .zip

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)

Hi - as you noticed, your log says

134  :info:configure -- Looking for openssl/des.h
135  :info:configure -- Looking for openssl/des.h - not found

so go ahead and please check if you have openssl installed.

port -v installed | grep ssl

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.

  openssl @1.0.2f_0 platform='darwin 8' archs='ppc' date='2016-03-01T11:02:05-0800'
  openssl @1.0.2h_1 platform='darwin 8' archs='ppc' date='2016-07-11T18:20:25-0700'
  openssl @1.0.2i_0 platform='darwin 8' archs='ppc' date='2016-09-22T21:20:27-0700'
  openssl @1.0.2j_0 platform='darwin 8' archs='ppc' date='2016-10-01T09:46:12-0700'
  openssl @1.0.2k_0 (active) platform='darwin 8' archs='ppc' date='2017-02-08T09:48:24-0800'

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.

Last edited 8 years ago by Ionic (Mihai Moldovan) (previous) (diff)

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
Last edited 4 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:5 Changed 8 years ago by Ionic (Mihai Moldovan)

What's the output of port contents openssl?

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 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 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).

Last edited 8 years ago by kencu (Ken) (previous) (diff)

comment:9 in reply to:  8 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 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 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 Changed 8 years ago by Mihai Moldovan <ionic@…>

Owner: set to Mihai Moldovan <ionic@…>
Resolution: fixed
Status: newclosed

In daeceb0c/macports-ports:

devel/libssh: don't zero out configure.cppflags, use -isystem.

Zeroing configure.cppflags leads to build failures on older systems (at
least 10.4.)

Keep the directory in the list, but forcefully move it to the end
without beating the build system into submission.

Fixes: #53549

comment:13 Changed 8 years ago by Ionic (Mihai Moldovan)

If it doesn't work, report back and I'll re-open the ticket.

comment:14 in reply to:  10 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:15 Changed 8 years ago by Mihai Moldovan <ionic@…>

In daeceb0c/macports-ports:

devel/libssh: don't zero out configure.cppflags, use -isystem.

Zeroing configure.cppflags leads to build failures on older systems (at
least 10.4.)

Keep the directory in the list, but forcefully move it to the end
without beating the build system into submission.

Fixes: #53549

comment:16 in reply to:  11 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 in reply to:  7 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 in reply to:  13 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 in reply to:  12 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

Last edited 4 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:21 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 in reply to:  21 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
Last edited 4 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

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.

Last edited 4 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

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.

Last edited 8 years ago by kencu (Ken) (previous) (diff)

comment:32 Changed 8 years ago by ppiseri

Thank you Ken, I'll take your wise advice.

Thanks everybody for great support!

Note: See TracTickets for help on using tickets.