Opened 18 years ago

Closed 16 years ago

Last modified 15 years ago

#6533 closed defect (duplicate)

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:
Component: ports Version: 1.0
Keywords: Cc: yaseppochi (Stephen J. Turnbull), 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 (1)

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

Download all attachments as: .zip

Change History (43)

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

Attachment: log.txt added

end of port -v install libsdl output

comment:1 Changed 18 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?

comment:2 Changed 18 years ago by evan.powers+bugzilla.opendarwin.org@…

Summary: libsdl install fails with linker errorBUG: libsdl-1.2.8 rev3 install fails with linker error

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

Owner: changed from darwinports-bugs@… to ben@…

comment:4 Changed 18 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.

comment:5 Changed 18 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.

comment:6 Changed 18 years ago by brg@…

I got the same linker error this evening.

comment:7 Changed 18 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

comment:8 Changed 18 years ago by ben@…

Resolution: fixed
Status: newclosed

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

comment:9 Changed 18 years ago by ben@…

Resolution: fixed
Status: closedreopened

comment:10 Changed 18 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.

comment:11 Changed 18 years ago by ben@…

Cc: stephen@… added

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

comment:12 Changed 18 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?

comment:13 Changed 18 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.

comment:14 Changed 18 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

comment:15 Changed 18 years ago by bllxxm

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

comment:16 Changed 18 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.

comment:17 Changed 18 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.

comment:18 Changed 18 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.

comment:19 Changed 18 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.

comment:20 Changed 18 years ago by markd@…

Cc: markd@… added
Summary: BUG: libsdl-1.2.8 rev3 install fails with linker errorBUG: 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.

comment:21 Changed 18 years ago by yaseppochi (Stephen J. Turnbull)

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.

comment:22 Changed 18 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.

comment:23 Changed 18 years ago by yaseppochi (Stephen J. Turnbull)

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

comment:24 Changed 18 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.

comment:25 Changed 18 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$

comment:26 Changed 18 years ago by ben@…

Owner: changed from ben@… to darwinports-bugs@…
Status: reopenednew

comment:27 Changed 18 years ago by markd@…

Summary: BUG: libsdl-1.2.9 install fails on 10.3BUG: libsdl-1.2.9 fails on 10.3 if XCode 1.5/QuickTime 7.0.4

Adjust summary once more.

comment:28 Changed 18 years ago by markd@…

Does Quicktime 7.1 resove this issue?

comment:29 Changed 18 years ago by markd@…

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

comment:30 Changed 17 years ago by pipping@…

Milestone: Available Ports

comment:31 Changed 17 years ago by pipping@…

Milestone: Available PortsPort Bugs

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

Cc: nox@… added
Owner: changed from macports-tickets@… to nox@…
Priority: ExpectedNormal
Summary: BUG: libsdl-1.2.9 fails on 10.3 if XCode 1.5/QuickTime 7.0.4BUG: libsdl-1.2.9 fails on 10.3 if Xcode 1.5/QuickTime 7.0.4
  • 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).

comment:33 Changed 17 years ago by yaseppochi (Stephen J. Turnbull)

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. :-(

comment:34 Changed 17 years 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?

comment:35 Changed 17 years ago by nox@…

Cc: markd@… added; markd@… removed

comment:36 Changed 17 years ago by nox@…

Status: newassigned

comment:37 Changed 16 years 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?

comment:38 Changed 16 years 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...

comment:39 Changed 16 years ago by danielluke (Daniel J. Luke)

Cc: fulkkari@… added; fulkkari@… nathan.stocks@… removed

comment:40 Changed 16 years ago by danielluke (Daniel J. Luke)

Cc: fulkkari@… added; fulkkari@… removed

comment:41 Changed 16 years ago by nox@…

Resolution: duplicate
Status: assignedclosed

See #13170 for the current discussion.

comment:42 Changed 15 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.