[MacPorts] #43059: openssh fails to build using default xcode gcc 4.2

MacPorts noreply at macports.org
Mon Mar 24 13:40:32 PDT 2014


#43059: openssh fails to build using default xcode gcc 4.2
--------------------------+--------------------------------
  Reporter:  leeawalsh@…  |      Owner:  macports-tickets@…
      Type:  defect       |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:  2.2.1
Resolution:               |   Keywords:
      Port:  openssh      |
--------------------------+--------------------------------

Comment (by cal@…):

 I don't get that. The compilation fails in the linking stage of ssh-add
 with missing symbols:
 {{{
 :info:build /usr/bin/gcc-4.2 -o ssh-add ssh-add.o -L. -Lopenbsd-compat/
 -L/opt/local/lib -L/opt/local/lib -L/opt/local/lib
 -Wl,-headerpad_max_install_names -arch x86_64 -fstack-protector-all -pie
 -lssh -lopenbsd-compat -lcrypto -lz  -lresolv
 :info:build Undefined symbols:
 :info:build   "_key_free", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _main in ssh-add.o
 :info:build   "_key_load_file", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_perm_ok", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_fingerprint", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_ssh_close_authentication_connection", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_key_type", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_buffer_init", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_error", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build   "_ssh_get_authentication_connection", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_seed_rng", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_key_equal_public", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build   "_xstrdup", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _ssh_get_progname in libopenbsd-compat.a(bsd-misc.o)
 :info:build   "_fatal", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_parse_private", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_write", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_sanitise_stdfd", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_ssh_get_first_identity", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_key_load_public", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_cert_is_legacy", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_ssh_add_identity_constrained", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build   "_ssh_remove_all_identities", referenced from:
 :info:build       _main in ssh-add.o
 :info:build       _main in ssh-add.o
 :info:build       _main in ssh-add.o
 :info:build   "_convtime", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_ssh_lock_agent", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_read_passphrase", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _main in ssh-add.o
 :info:build       _main in ssh-add.o
 :info:build       _main in ssh-add.o
 :info:build   "_ssh_remove_identity", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_size", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_key_cert_copy", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_key_to_certified", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build   "_ssh_update_card", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_ssh_get_next_identity", referenced from:
 :info:build       _main in ssh-add.o
 :info:build   "_xasprintf", referenced from:
 :info:build       _do_file in ssh-add.o
 :info:build       _do_file in ssh-add.o
 :info:build ld: symbol(s) not found
 :info:build collect2: ld returned 1 exit status
 :info:build make: *** [ssh-add] Error 1
 }}}
 but the linker command line correctly says `-L. -lssh` which has these
 symbols.

 The only reasonable explanation I have for this is that older versions of
 the OS X linker first tried finding dynamic libraries in '''all''' linker
 search paths before trying to link against static libraries. Do you have a
 file named `libssh.dylib` in any of `/opt/local/lib`, `/usr/local/lib`, or
 `/usr/lib`?

-- 
Ticket URL: <https://trac.macports.org/ticket/43059#comment:4>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list