Opened 9 years ago

Closed 17 months ago

#48437 closed defect (fixed)

kerberos5 @1.13.2: ld: -dylib_compatibility_version must be greater than zero

Reported by: mrkapqa Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.3.3
Keywords: tiger Cc: pascaldragon@…, grobbelaar@…, sparcdr@…, rickyzhang82 (Ricky Zhang), ppiseri, mmolinac
Port: kerberos5

Description (last modified by ryandesign (Ryan Carsten Schmidt))

hello i am new to macports - trying to install git via macports

there are a lot of dependencies to be fulfilled.

building process stops at kerberos5

computer is powerpc g5.

--->  Attempting to fetch krb5-1.13.2-final.tar.gz from http://fco.it.distfiles.macports.org/mirrors/macports-distfiles/kerberos5
--->  Verifying checksums for kerberos5
--->  Extracting kerberos5
--->  Applying patches to kerberos5
--->  Configuring kerberos5
--->  Building kerberos5
Error: org.macports.build for port kerberos5 returned: command execution failed
Error: Failed to install kerberos5
Please see the log file for port kerberos5 for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_kerberos5/kerberos5/main.log
Error: The following dependencies were not installed: p5.16-authen-sasl p5.16-gssapi kerberos5 p5.16-error p5.16-net-smtp-ssl p5.16-io-socket-ssl p5.16-io-socket-inet6 p5.16-io p5.16-socket6 p5.16-io-socket-ip p5.16-net-libidn libidn p5.16-net-ssleay p5.16-test-exception p5.16-sub-uplevel p5.16-test-simple p5.16-test-nowarnings p5.16-test-warn p5.16-term-readkey pcre rsync popt
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port git failed

here the last part of the main.log

info:build make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sour$
:info:build rm -f libkrad.0.0.dylib
:info:build building shared krad library (0.0)
:info:build set -x; objlist=`set -x && perl -p -e 'BEGIN { $SIG{__WARN__} = sub {die @_} }; $e=$ARG$
:info:build ++ set -x
:info:build ++ perl -p -e 'BEGIN { $SIG{__WARN__} = sub {die @_} }; $e=$ARGV; $e =~ s/OBJS\...$//; $
:info:build + objlist= attr.so attrset.so client.so code.so packet.so remote.so
:info:build + /usr/bin/gcc-4.0 -undefined error -dead_strip -dynamiclib -compatibility_version 0 -c$
:info:build ld: -dylib_compatibility_version must be greater than zero
:info:build /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/libtool: internal link edit command failed
:info:build make[2]: *** [libkrad.0.0.dylib] Error 1
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sourc$
:info:build make[1]: *** [all-recurse] Error 1
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sourc$
:info:build make: *** [all-recurse] Error 1
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_$
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsyn$
:info:build Exit code: 2
:error:build org.macports.build for port kerberos5 returned: command execution failed
:debug:build Error code: CHILDSTATUS 23952 2
:debug:build Backtrace: command execution failed
    while executing
"system -nice 0 $fullcmdstring"
    ("eval" body line 1)
    invoked from within
"eval system $notty $nice \$fullcmdstring"
    invoked from within
"command_exec build"
    (procedure "portbuild::build_main" line 8)

Attachments (5)

main.log (53.6 KB) - added by mrkapqa 9 years ago.
main.2.log (41.9 KB) - added by mrkapqa 9 years ago.
main.3.log (547.3 KB) - added by pascaldragon@… 8 years ago.
main.4.log (519.5 KB) - added by grobbelaar@… 8 years ago.
build log after clean, OSX 10.4.11, Mac mini PPC G4
main.5.log (765.5 KB) - added by mrkapqa 7 years ago.

Download all attachments as: .zip

Change History (42)

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: kerberos5 gcc git removed
Owner: changed from macports-tickets@… to ryandesign@…
Port: kerberos5 added
Status: newassigned
Summary: {OSXTiger}{git} dependencies - kerberos5 fails to buildkerberos5 @1.13.2: ld: -dylib_compatibility_version must be greater than zero

There are many other open tickets about problems building kerberos5 on Tiger; for now, I recommend you try to avoid kerberos5 on Tiger. Unfortunately, it looks like it cannot be avoided if you want to use the git port.

comment:2 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Please also attach the entire main.log file.

Changed 9 years ago by mrkapqa

Attachment: main.log added

Changed 9 years ago by mrkapqa

Attachment: main.2.log added

comment:3 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Both of the log files you attached are from unclean build attempts. Please clean kerberos5 and try again then attach the complete main.log file.

Changed 8 years ago by pascaldragon@…

Attachment: main.3.log added

comment:4 Changed 8 years ago by pascaldragon@…

Since I've encountered the same error (on Tiger PPC), I've decided to upload a clean log myself in the hope that this will help to fix the build problem.

comment:5 Changed 8 years ago by pascaldragon@…

Cc: pascaldragon@… added

Cc Me!

comment:6 Changed 8 years ago by p3k (Tobi Schäfer)

Cc: interface@… added

Cc Me!

Changed 8 years ago by grobbelaar@…

Attachment: main.4.log added

build log after clean, OSX 10.4.11, Mac mini PPC G4

comment:7 Changed 8 years ago by grobbelaar@…

Cc: grobbelaar@… added

Cc Me!

comment:8 Changed 8 years ago by sparcdr@…

Using MacPorts-2.3.3-10.4-Tiger.dmg as a starting base on an upgraded 10.4.11 system (Mac Mini G4 1.42GHz / 1GB) I encountered the Kerberos5 dependency while attempting to install nmap. After doing port sync and then port clean kerberos5, I was still not able able to build the port with version 1.14.2. The error is the same as others in this report.

:info:build /usr/bin/ld: -dylib_compatibility_version must be greater than zero
:info:build collect2: ld returned 1 exit status
:info:build make[2]: *** [libkrad.0.0.dylib] Error 1
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_kerberos5/kerberos5/work/krb5-1.14.2/src/lib/krad'

comment:9 Changed 8 years ago by sparcdr@…

Cc: sparcdr@… added

Cc Me!

comment:10 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: zhangchaowang@… ppiseri added

Has duplicates #52061 (which offers a patch) and #53539.

comment:11 Changed 7 years ago by kencu (Ken)

I had no significant trouble installing kerberos 5 on 10.4 PPC, and also git.

$ port -v installed | grep kerb
  cyrus-sasl2 @2.1.26_5+kerberos platform='darwin 8' archs='ppc' date='2016-03-01T18:03:13-0800'
  cyrus-sasl2 @2.1.26_6+kerberos (active) platform='darwin 8' archs='ppc' date='2016-07-11T18:43:33-0700'
  kerberos5 @1.14_0 platform='darwin 8' archs='ppc' date='2016-03-01T18:01:08-0800'
  kerberos5 @1.14.2_0 platform='darwin 8' archs='ppc' date='2016-07-11T18:41:33-0700'
  kerberos5 @1.14.3_0 platform='darwin 8' archs='ppc' date='2016-07-25T22:44:51-0700'
  kerberos5 @1.14.4_0 platform='darwin 8' archs='ppc' date='2016-10-15T15:16:42-0700'
  kerberos5 @1.15_0 (active) platform='darwin 8' archs='ppc' date='2016-12-24T09:24:17-0800'

now I'm just trying to remember if I did something special to do it...

comment:12 Changed 7 years ago by kencu (Ken)

No - I just built it again on 10.4 PPC, and destrooted it, and it all builds through to completion nicely. When I build it, it builds (by itself) with apple-gcc-42 (macports version). The -compatibility_version is 0, I notice. No link errors. git works normally. -K

building shared krad library (0.0)
set -x; objlist=`set -x && perl -p -e 'BEGIN { $SIG{__WARN__} = sub {die @_} }; $e=$ARGV; $e =~ s/OBJS\...$//; s/^/ /; s/ $//; s/ / $e/g;' OBJS.SH` && /opt/local/bin/gcc-apple-4.2 -undefined error -dead_strip -dynamiclib -compatibility_version 0 -current_version 0.0 -install_name "/opt/local/lib/libkrad.0.0.dylib" -exported_symbols_list darwin.exports -pipe -Os -arch ppc -fno-common -o libkrad.0.0.dylib $objlist -L../../lib -lkrb5 -lk5crypto -lcom_err -lkrb5support  -lcrypto -lintl -lresolv   -lverto -Wl,-headerpad_max_install_names -arch ppc -Wl,-search_paths_first 
++ set -x
++ perl -p -e 'BEGIN { $SIG{__WARN__} = sub {die @_} }; $e=$ARGV; $e =~ s/OBJS\...$//; s/^/ /; s/ $//; s/ / $e/g;' OBJS.SH
+ objlist= attr.so attrset.so client.so code.so packet.so remote.so
+ /opt/local/bin/gcc-apple-4.2 -undefined error -dead_strip -dynamiclib -compatibility_version 0 -current_version 0.0 -install_name /opt/local/lib/libkrad.0.0.dylib -exported_symbols_list darwin.exports -pipe -Os -arch ppc -fno-common -o libkrad.0.0.dylib attr.so attrset.so client.so code.so packet.so remote.so -L../../lib -lkrb5 -lk5crypto -lcom_err -lkrb5support -lcrypto -lintl -lresolv -lverto -Wl,-headerpad_max_install_names -arch ppc -Wl,-search_paths_first
Last edited 7 years ago by kencu (Ken) (previous) (diff)

comment:13 Changed 7 years ago by p3k (Tobi Schäfer)

Cc: p3k added

comment:14 Changed 7 years ago by p3k (Tobi Schäfer)

Cc: p3k removed

comment:15 Changed 7 years ago by kencu (Ken)

for those having trouble, try this on 10.4 PPC:

sudo port -v install kerberos5 configure.compiler=apple-gcc-4.2

comment:16 Changed 7 years ago by p3k (Tobi Schäfer)

Cc: p3k removed

comment:17 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Ken, that does nothing; apple-gcc-4.2 is the default compiler on Tiger.

The error message is from /usr/bin/ld. Is it possible that you are using a newer ld provided by the MacPorts ld64 port instead?

Are the people experiencing the problem perhaps still using the +bootstrap variant of apple-gcc-4.2? If so, reinstall it without that variant, please.

comment:18 Changed 7 years ago by ppiseri

thank you Ken, my machine is running tiger on an intel processor not PPC. I thought this was relevant to the fail. That's why I posted a new ticket. Sorry for duplicating.

About the comipler: gcc-apple-4.2 was used by default. I couldn't see apple-gcc-4.2 (i.e. with permuted names) on my machine, but that was maybe a typo? I see instead there's i686-apple-darwin8-gcc-apple-4.2.1 do you think it's worth trying using this?

comment:19 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

The name of the port is "apple-gcc42". The name of one of the programs it installs is "gcc-apple-4.2". The name of this compiler in MacPorts, for the purposes of the configure.compiler variable, is "apple-gcc-4.2". This naming confusion was perhaps not planned well at the time, but it's probably too late to change things now.

There is no reason to try to tell MacPorts to use the Apple gcc 4.2 compiler, because that is what it is already doing on Tiger by default.

The problem is not Intel- or PowerPC-specific. It's a well-known problem of Tiger's development tools (the linker, I guess) that it does not allow the compatibility version to be zero. It is an error for the developers of kerberos to be specifying a compatibility version of zero, but they may not know or care since the developer tools on Leopard and later no longer have that limitation.

That is why I'm asking you to try a newer linker provided by MacPorts. If you had apple-gcc42 installed without the bootstrap variant, you should already have the ld64 port installed, which is why I suspect you have apple-gcc42 installed with the bootstrap variant, and should reinstall it without that variant.

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

comment:20 Changed 7 years ago by ppiseri

hi Ryan, ld -v gives:

Apple Computer, Inc. version cctools-622.9~2

No variant was selected at kerberos5 install. But maybe you mean compiler install?

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

comment:21 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Yes, I mean the apple-gcc42 compiler. Please make sure it is installed without the bootstrap variant by running:

sudo port install apple-gcc42 -bootstrap

comment:22 Changed 7 years ago by ppiseri

Yes, after reinstalling apple-gcc42 without the bootstrap variant, it worked! Thank you!

comment:23 Changed 7 years ago by kencu (Ken)

Hi Ryan. I had noticed that some of the build attempts in the logs above (not all) were with apple-gcc-4.0. No idea why that would be, but there it was:

:debug:patch Privilege de-escalation not attempted as not running as root.
439	:debug:configure configure phase started at Thu Dec 31 14:31:27 CET 2015
440	:notice:configure --->  Configuring kerberos5
441	:debug:configure Using compiler 'Xcode GCC 4.0'
442	:debug:configure Executing org.macports.configure (kerberos5)

but anyway, the issue seems to be that some people wind up with an incorrect installation of apple-gcc42 somehow. How would they get stuck at the bootstrap version, I wonder?

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

comment:24 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

I don't know why the first three logs show gcc-4.0 being used. The first two logs are incomplete and we therefore can't draw any conclusions from them.

Correct bootstrapping procedure for Tiger is to install Xcode and MacPorts, install apple-gcc42 with the bootstrap variant, then reinstall apple-gcc42 without the bootstrap variant. Users don't know they're supposed to do that; I don't know if we've documented it properly.

comment:25 in reply to:  18 Changed 7 years ago by kencu (Ken)

Replying to ppiseri:

thank you Ken, my machine is running tiger on an intel processor not PPC.

for your peace of mind, I would strongly suggest you consider upgrading that 10.4 Intel machine to either 10.6 (If you need Rosetta to run PPC software), or to 10.7 for maximal compatibility. Your machine has the architecture to upgrade, and your life will be loads simpler.

PPC machines, on the other hand, are stuck at 10.4 (for MacOS9 compatibility) or 10.5 (because that was the end of the road for them).

comment:26 Changed 7 years ago by ppiseri

Thank you Ken, I'll definitely consider your advice.

kerberos5 was only one of the long list of dependencies of x2goclient, that is what I need. As you have seen, I'm now stuck on the next in the list which is libssh.

I thought my machine was too old for upgrading, but you are right. It seems that it can run 10.7. Anyway, if useful for ppc users where upgrade is impossible and the patience of those who are helping is strong enough, I'll try to insist.

comment:27 Changed 7 years ago by kencu (Ken)

Honestly, given where you are at present and the skills involved in making ports work on 10.4, I would suggest you upgrade and then try installing your ports. With 10.6 or 10.7, things will go much more smoothly in most cases. 10.4 is a challenge, but I love this old PPC machine and the MacOS9 software it runs, so I don't mind spending some time with it now and then. I don't keep any of my Intel machines on 10.4 (there is no point).

comment:28 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: mmolinac added

Has duplicate #54544.

comment:29 Changed 7 years ago by mrkapqa

Last edited 7 years ago by mrkapqa (previous) (diff)

Changed 7 years ago by mrkapqa

Attachment: main.5.log added

comment:30 Changed 7 years ago by mrkapqa

i am still having problems with texlive-bin on leopard 10.5.8 on imac (ppc) g5 - please see attached log; thank you very much !

comment:31 Changed 7 years ago by mrkapqa

it build correct on Tiger (i did install first Mplayer, then Ffmpeg), the problem is with Leopard > i can’t neither install Ffmpeg nor Mplayer at the moment;

comment:32 Changed 7 years ago by kencu (Ken)

for texlive-bin, see 54475. Essentially, texlive-bin needs to have PortGroup cxx11 1.1 added to build now, especially on PPC.

comment:33 Changed 7 years ago by mrkapqa

thanks, it worked!

comment:34 Changed 7 years ago by mrkapqa

Youtube-Viewer on Mac OSX Tiger & Leopard

  1. Install Xcode 2.5 (Tiger) or 3.1.4 (Leopard) from Developer.apple.com/Downloads
  2. Install appropriate MacPorts.pkg for Tiger or Leopard
  3. Install Mplayer „sudo port install mplayer“ (mpv would be player of choice, but does not build properly on PPC)

hint:

texlive-bin might fail

solution:

adding "PortGroup cxx11 1.1" to "/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/tex/texlive-bin/Portfile"

possibly some packages might have to be downloaded manually when download fails, and put in the appropriate „distfiles“ folder in Macports.

  1. Download youtube-viewer-master from github
  2. sudo port deactivate perl5.24

(this might break macports installation; so i did just run macports.pkg afterwards again to restore Macports functionality)

  1. Install Perlbrew

curl -L http://xrl.us/installperlosx | bash

  1. Unzip Youtube-Viewer-Master

cd Youtube-Viewer-Master

Perl Build.PL

./Build installdeps

./Build install

  1. INstall youtube-dl

sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl

sudo chmod a+rx /usr/local/bin/youtube-dl

  1. Evoke youtube-viewer from Terminal by typing „youtube-viewer“

if everything went smooth, enjoy Youtube via Youtube-Viewer on PPC

Last edited 7 years ago by mrkapqa (previous) (diff)

comment:35 in reply to:  34 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to mrkapqa:

Youtube-Viewer on Mac OSX Tiger & Leopard

While this is completely irrelevant to this ticket, which is about kerberos5, I'll just point out that we do have a port for youtube-dl, so you don't need to install it manually.

comment:36 Changed 17 months ago by kencu (Ken)

fixed at some point:

$ port -v installed kerberos5
The following ports are currently installed:
  kerberos5 @1.19.2_1 requested_variants='' platform='darwin 8' archs='ppc' date='2022-02-21T14:58:53-0800'
  kerberos5 @1.20_0 requested_variants='' platform='darwin 8' archs='ppc' date='2022-08-17T17:48:48-0700'
  kerberos5 @1.20.1_0 (active) requested_variants='' platform='darwin 8' archs='ppc' date='2022-11-28T14:37:13-0800'

comment:37 Changed 17 months ago by kencu (Ken)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.