Opened 10 years ago
Closed 10 years ago
#46276 closed defect (invalid)
icu @54.1 building fails in Tiger
Reported by: | csanchezdll | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.3 |
Keywords: | haspatch tiger | Cc: | ballapete (Peter "Pete" Dyballa), potmj (Michael Pot) |
Port: | icu |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
This should be really fixed upstream, but as Mac OS X 10.4 is no longer a supported platform, I see no point reporting there.
There are two problems preventing compilation:
- ld does not have "-compatibility_version" nor "-current_version" switches. In Tiger those are "-dylib_compatibility_version" and "-dylib_current_versions". As those latter are also supported in latest XCodes, the patch can be unconditional.
- Apple assembler does not have ".balign" directive. Either ".align" should be used (as in older icu releases) or compilation be made with non-apple gcc. Taken approach is using ".align".
Attached patch fixes both issues.
I think this makes ticket #43998 obsolete.
Attachments (1)
Change History (6)
Changed 10 years ago by csanchezdll
comment:1 Changed 10 years ago by csanchezdll
comment:2 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Keywords: | tiger added |
comment:3 Changed 10 years ago by csanchezdll
The "-compatibility_version" issue is solved by reinstalling apple-gcc42 port without the +bootstrap variant (as suggested by the port itself). Point 1. can therefore be ignored.
comment:4 Changed 10 years ago by csanchezdll
My bad, ".balign" is present in the assembler since cctools-698. XCode-2.5 (last Tiger version) is 622.9 and only has ".align", but installing apple-gcc42 without +bootstrap installs newer cctools and fixes the problem. Bug can be marked as invalid. I am sorry for the noise.
comment:5 Changed 10 years ago by mf2k (Frank Schima)
Resolution: | → invalid |
---|---|
Status: | new → closed |
Note: See
TracTickets for help on using
tickets.
Probably even easier to use -compatibility_version and -current_version parameters to gcc itself, just removing the -Wl prefix to pass them directly to the linker, and letting gcc driver pass the correct one. This is what modern libtool versions do.