Projects
New Ticket     Wiki     Browse Source     Timeline     Roadmap     Bug Reports     Search

Ticket #6533 (closed defect: duplicate)

Opened 3 years ago

Last modified 10 months ago

BUG: libsdl-1.2.9 fails on 10.3 if Xcode 1.5/QuickTime 7.0.4

Reported by: evan.powers+bugzilla.opendarwin.org@… Owned by: nox@…
Priority: Normal Milestone: Port Bugs
Component: ports Version: 1.0
Keywords: Cc: stephen@…, fulkkari@…, markd@…, opendarwin@…, nox@…
Port:

Description

When trying to link together libSDL-1.2.0.7.1.dylib, ld fails and complains about an illegal reference to a symbol "in indirectly referenced library /usr/lib/libstdc++.6.dylib"

Attachments

log.txt (13.1 KB) - added by evan.powers+bugzilla.opendarwin.org@… 3 years ago.
end of port -v install libsdl output

Change History

Changed 3 years ago by evan.powers+bugzilla.opendarwin.org@…

end of port -v install libsdl output

Changed 3 years ago by evan.powers+bugzilla.opendarwin.org@…

I "port -d selfupdate"ed today when I discovered this bug, so I should be up to date.

Comment #13 in bug #1933 refers to a build error that looks very similar but ultimately complains about a different symbol.

Gregory Wright refers to libsdl build problems in bug #5006, but only vaguely. Perhaps this is what he was seeing?

Changed 3 years ago by evan.powers+bugzilla.opendarwin.org@…

  • summary changed from libsdl install fails with linker error to BUG: libsdl-1.2.8 rev3 install fails with linker error

Changed 3 years ago by evan.powers+bugzilla.opendarwin.org@…

  • owner changed from darwinports-bugs@… to ben@…

Changed 3 years ago by scooter.phd@…

+1

The makefile for libsdl needs a patch to explicitly link with libstdc++, since the linker has two choices and can't disambiguate between two implied versions. I'm also up-to-date with a selfupdate from last night.

Changed 3 years ago by ben@…

(In reply to comment #3)

+1 The makefile for libsdl needs a patch to explicitly link with libstdc++, since the linker has two choices and can't disambiguate between two implied versions. I'm also up-to-date with a selfupdate from last night.

Scott, can you provide such a patch? I'd be very happy to see one.

Changed 3 years ago by brg@…

I got the same linker error this evening.

Changed 3 years ago by brg@…

I found that this link error was chiefly caused by trying to link against the QuickTime.framework from QuickTime 7.0.4. I reinstalled QuickTime 7.0.1 and the error went away so I could install the port. I used the following package from Apple's web site:

http://www.apple.com/support/downloads/quicktime701reinstallerforquicktime704.html

Changed 3 years ago by ben@…

  • status changed from new to closed
  • resolution set to fixed

Upgraded to 1.2.9. No linker error for me against QT 7.0.4. Please test the new version and re-open if necessary

Changed 3 years ago by ben@…

  • status changed from closed to reopened
  • resolution fixed deleted

Changed 3 years ago by ben@…

I'd forgotten this is 10.3-specific. I don't have the relevant OS, so this is unlikely to get fixed by me any time soon. The QT downgrade sounds like a reasonable workaround.

Changed 3 years ago by ben@…

  • cc stephen@… added

*** Bug 7271 has been marked as a duplicate of this bug. ***

Changed 3 years ago by nathan.stocks@…

  • cc nathan.stocks@… added

I hit this bug today on a G3 iMac running 10.3.9 and DarwinPorts 1.2. Installing Quicktime 7.0.1 using the reinstaller linked to in a comment above worked (although it took over 30 minutes to do so on this ancient thing).

Downgrading an apple-provided package doesn't seem like a very reasonable workaround for very long to me, especially since you have to manually find this bug to even know to do that. Anything I can do to help fix this?

Changed 3 years ago by ben@…

(In reply to comment #10)

Downgrading an apple-provided package doesn't seem like a very reasonable workaround for very long to me, especially since you have to manually find this bug to even know to do that. Anything I can do to help fix this?

No. Sadly it seems XCode 1.5 and QuickTime 7.0.4 are just incompatible. Your options are downgrade QT or upgrade to Tiger, I'm afraid. If it's any consolation, after the QT downgrade: http://www.apple.com/support/downloads/quicktime701reinstallerforquicktime704.html

you can upgrade again to 7.0.3: http://www.apple.com/support/downloads/quicktime703.html

I'll attempt to put a message in the portfile to this effect.

Changed 3 years ago by ben@…

The port now fails with an informative error message if you have the non-functional XCode 1.5/QuickTime 7.0.4 combination

Changed 3 years ago by llodger@…

libsdl fails for me too when I do port -a upgrade...not sure if it's for the same QT reason though. However I'm running Tiger 10.4.5 and QuickTime 7.0.4, not 10.3.9. Also XCode is v. 2.2.1 Below is tail of output. Anyone comment?

-framework OpenGL -framework AGL -framework AudioToolbox -framework AudioUnit -framework IOKit -lstdc++ -framework Cocoa -framework Carbon -framework QuickTime -install_name /opt/local/lib/libSDL-1.2.0.dylib -Wl,-compatibility_version -Wl,8 -Wl,-current_version -Wl,8.2

../libtool: line 1: -dynamiclib: command not found make[2]: *** [libSDL.la] Error 127 make[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1

Error: Unable to upgrade port: 1

Changed 3 years ago by opendarwin@…

  • cc opendarwin@… added

I am also seeing the same error when attempting to install libsdl 1.2.9: ../libtool: line 1: -dynamiclib: command not found

This behavior has begun only in the last few days, as previous versions installed fine on my PowerBook and G5 desktop. I also have Tiger 10.4.5, QuickTime 7.0.4 and Xcode 2.0.

Changed 3 years ago by fulkkari@…

  • cc fulkkari@… added

The problem can temporarly be fixed by changing a couple of lines in the shell script named "libtool". There are two lines which begin archive_cmds="\$CXX -dynamiclib and archive_cmds="\$CC. If you change \$CXX to /usr/bin/g++-4.0 and \$CC to /usr/bin/gcc-4.0, SDL should compile normally.

Obviously there is a problem with the substitution of CXX and CC being empty causing "-dynamiclib" being excecuted as a command. I haven't looked more into the problem yet.

Changed 3 years ago by ben@…

These are two entirely separate bugs, one on 10.3, one on 10.4. The 10.4 one is now fixed. The workaround for the 10.3 is still the best solution.

Changed 3 years ago by sal@…

This bug appears to affect other packages as well. I am having the 10.3 linkage problem on smpeg. Somebody should probably put a note there, as well.

Changed 3 years ago by markd@…

  • cc markd@… added
  • summary changed from BUG: libsdl-1.2.8 rev3 install fails with linker error to BUG: libsdl-1.2.9 install fails on 10.3

I renamed the subject line to more accurately reflect the current remaining problem.

Also, version 1.2.10 is now out; one change is that "the entire build system has been revamped to make it much more portable". If someone could update it perhaps it might fix the remaining issue on 10.3.

Changed 3 years ago by stephen@…

QuickTime 7.1 doesn't help, it seems. I've got libsdl @1.2.9_1+darwin7 installed, and tried simply port -f upgrade libsdl. This produced the same old error.

Changed 3 years ago by ben@…

Stephen: If you have already installed 1.2.9_x, I can't think of a reason to upgrade to 1.2.9.(x+dx) in this case. You don't specify what error you get (there are two unrelated problems discussed in this thread), but downgrading QT does (in cases other than yours) work around the XCode 1.5/QuickTime 7.0.4 incompatibility on OX X 10.3. It might be worth investigating whether your problem is the result of upgrading (which sometimes creates its own unique problems).

Mark: I think upgrading to 1.2.10 (with its revamped build system) is almost guaranteed to create problems on the several platforms I'm unable to test. Since this port seems to be fairly heavily used, I'm very reluctant to break it. At some point, I'll make a -devel port so we can see what breaks.

Changed 3 years ago by stephen@…

(In reply to comment #20)

Stephen: If you have already installed 1.2.9_x, I can't think of a reason to upgrade to 1.2.9.(x+dx) in this case.

I'm not "upgrading" libsdl (which as far as I know is a totally gratuitous build dependency in my usage), I'm testing build compatibility with QuickTime 7.1 on Mac OS X 10.3. It failed. (That's what I expected, but it was worth the 60 seconds of my time it took to test and report.)

port also failed to tell me about the bug, so if there are any other Panther users left out there, after upgrading to QT 71. they will get bit by the bug with no warning.

IMO the promotion of QuickTime to 7.1 makes the "downgrade QuickTime" workaround much less reasonable.

You don't specify what error you get

I thought this thread had been retitled to indicate that it's only about the XCode/QT incompatibility on Panther.

Changed 3 years ago by ben@…

Ah, I did not read carefully enough and thought you were saying '7.0.1 doesn't help' rather than '7.1 doesn't help'. I'll extend the informative failure message to 7.1.

Changed 2 years ago by giuseppe.macario@…

I got the same error with OSX 10.3.9 and QT 7.1.1

ld: /usr/lib/gcc/darwin/3.3/libstdc++.a(functexcept.o) illegal reference to symbol: std::logic_error::logic_error[in-charge](std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) defined in indirectly referenced dynamic library /usr/lib/libstdc++.6.dylib /usr/bin/libtool: internal link edit command failed make[2]: *** [libSDL.la] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1

Error: The following dependencies failed to build: libsdl libsdl_net libsdl_sound libmikmod smpeg Error: /opt/local/bin/port: Status 1 encountered during processing. Computer1:~ giuseppe$ /opt/local/bin/port version Version: 1.211 Computer1:~ giuseppe$

Changed 2 years ago by ben@…

  • owner changed from ben@… to darwinports-bugs@…
  • status changed from reopened to new

Changed 2 years ago by markd@…

  • summary changed from BUG: libsdl-1.2.9 install fails on 10.3 to BUG: libsdl-1.2.9 fails on 10.3 if XCode 1.5/QuickTime 7.0.4

Adjust summary once more.

Changed 2 years ago by markd@…

Does Quicktime 7.1 resove this issue?

Changed 2 years ago by markd@…

Oops, I didn't read carefully enough. Quicktime 7.1 does not resolve it.

Changed 21 months ago by pipping@…

  • milestone set to Available Ports

Changed 21 months ago by pipping@…

  • milestone changed from Available Ports to Port Bugs

Changed 16 months ago by ryandesign@…

  • cc nox@… added
  • owner changed from macports-tickets@… to nox@…
  • summary changed from BUG: libsdl-1.2.9 fails on 10.3 if XCode 1.5/QuickTime 7.0.4 to BUG: libsdl-1.2.9 fails on 10.3 if Xcode 1.5/QuickTime 7.0.4
  • priority changed from Expected to Normal
  • The current version of QuickTime for 10.3.9 (and 10.4.9+) is 7.2. Do we know whether this fixes the issue?
  • I'm no longer able to find the QT 7.0.1 installer or the 7.0.3 upgrade (the above URLs are now 404s).

Changed 16 months ago by stephen@…

I don't know; I was forced to switch to Tiger about a year ago because there are now a raft of dependencies on Xcode >= 2.x, and because of a bunch of other dependencies on versions of programs and system APIs not in Panther.

I think you should just say (MacPorts-wide) that you don't support Panther, because that is the fact of the matter.

In fact, at this point you probably should consider deprecating support for PPC Macs. :-(

Changed 16 months ago by nox@…

I can't imagine how you could jump to the conclusion that we should deprecate support for PPC. I'm myself on an iBook and MacPorts works just fine.

Do I change the message and say that the user should upgrade to Tiger?

Changed 16 months ago by nox@…

  • cc markd@… added; markd@… removed

Changed 16 months ago by nox@…

  • status changed from new to assigned

Changed 11 months ago by william.allen.simpson@…

After 2 years, this ticket still hasn't been fixed!

It's already been noted here (2006 Aug) that QT 7.1 doesn't fix this Apple bug. There's no question this is an Apple mistake that they don't seem competent to repair. I've added official tickets for QT 7.2 (#13169) and QT 7.3 (#13170). Waiting for Apple to fix this SDK isn't working....

At this point, MacPorts 1.6.0 doesn't support Panther, neither the missing .dmg (#13631) nor self-update (#13687). I'm able to compile base for Panther using the trunk checkout (seems to be version 1.7.0).

But this ticket is still not fixed! Is MacPorts serious about Panther or not?

Changed 11 months ago by nathan.stocks@…

My guess is "not" at this point, as it's two major os revs back now. I personally no longer care, as my former panther machine has since died, and I've moved on to Leopard/Tiger for the rest of my machines. Can someone take me off the CC list? I can't figure out how...

Changed 11 months ago by dluke@…

  • cc fulkkari@… added; fulkkari@…, nathan.stocks@… removed

Changed 11 months ago by dluke@…

  • cc fulkkari@… added; fulkkari@… removed

Changed 10 months ago by nox@…

  • status changed from assigned to closed
  • resolution set to duplicate

See #13170 for the current discussion.

Note: See TracTickets for help on using tickets.