| Summary: | circular dependencies prevent building on platforms without strlcpy, vasprintf | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Tom Lane <tgl> | ||||||
| Component: | Build system | Assignee: | Assigned to nobody <unassigned-bugs> | ||||||
| Status: | CLOSED FIXED | ||||||||
| Severity: | normal | CC: | dtucker | ||||||
| Priority: | P2 | ||||||||
| Version: | 5.5p1 | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Bug Depends on: | |||||||||
| Bug Blocks: | 1708 | ||||||||
| Attachments: |
|
||||||||
|
Description
Tom Lane
2010-05-12 10:53:00 AEST
Created attachment 1847 [details]
openssh-pkcs11-helper-link.patch
Only link libssh in once.
Looks like the problem is that libssh is linked twice: $(LD) -o $@ ssh-pkcs11-helper.o ssh-pkcs11.o $(LDFLAGS) -lssh -lopenbsd-compat -lssh $(LIBS) Nope, I'm wrong. After discussing it we've decided that fixing it properly is a lot of work and since it only impacts old or odd platforms (eg embedded) we're going to take the easy way out. This has been committed and will be in the next release. Thanks. Sorry, that proposed patch does *not* fix it. When I do that I get /usr/ccs/bin/ld: Unsatisfied symbols: xstrdup (code) You really do have a circular dependency here, and the only way to make it work with just rejiggering the link line is to mention both libraries twice. Created attachment 1882 [details] openssh-bug1770.patch Link against libraries twice (this is what was committed). Sorry, it wasn't clear from the bug history but that's exactly what we ended up doing (list both libraries twice). I have attached the patch that was committed. If it's still broken in the current snapshots (http://mindrot.org/openssh_snap/) then please reopen. Move resolved bugs to CLOSED after 5.7 release |