[MacPorts] #64398: How to build icu for ppc+ppc64 on 10.5.8?

MacPorts noreply at macports.org
Wed Jan 12 03:11:06 UTC 2022


#64398: How to build icu for ppc+ppc64 on 10.5.8?
---------------------------+-------------------------------------
  Reporter:  barracuda156  |      Owner:  (none)
      Type:  defect        |     Status:  new
  Priority:  Normal        |  Milestone:
 Component:  ports         |    Version:  2.7.1
Resolution:                |   Keywords:  PowerPC, Leopard, ppc64
      Port:  icu           |
---------------------------+-------------------------------------

Comment (by barracuda156):

 Replying to [comment:1 kencu]:
 > This error:
 > {{{
 > ld: absolute addressing (perhaps -mdynamic-no-pic) used in
 icu_67::FixedDecimal::getFractionalDigits(double, int) from plurrule.o not
 allowed in slidable image. Use '-read_only_relocs suppress' to enable text
 relocs
 > }}}
 >
 > Is quite commonly found when building some code archs. The fix is
 usually to do what the error is telling you to do, ie add:
 > {{{
 > -read_only_relocs suppress
 > }}}
 > to the linker args.
 >
 > You will find a number of cases in the ports tree where I did this, and
 perhaps others have done it too, I didn't look at them all. You usually
 need to restrict that linker flag to just the build archs where the error
 is generated, as it is not accepted by some other build archs.
 >
 > If you grep the ports repo for {{{read_only_relocs}}} you will find some
 reasonable-looking examples.
 >
 > As to WHY this is needed, the best explanation I have come across is
 here:
 >
 > https://lists.apple.com/archives/darwin-dev/2009/Jul/msg00123.html

 Thank you for suggestion. I added a flag, and got another error in the
 same place:


 {{{
 /opt/local/bin/ranlib: file: ../lib/libicui18n.a(wintzimpl.ao) has no
 symbols
 /opt/local/bin/ranlib: file: ../lib/libicui18n.a(windtfmt.ao) has no
 symbols
 /opt/local/bin/ranlib: file: ../lib/libicui18n.a(winnmfmt.ao) has no
 symbols
 ranlib ../lib/libicui18n.a
 ranlib: file: ../lib/libicui18n.a(wintzimpl.ao) has no symbols
 ranlib: file: ../lib/libicui18n.a(windtfmt.ao) has no symbols
 ranlib: file: ../lib/libicui18n.a(winnmfmt.ao) has no symbols
 /opt/local/bin/g++-mp-7 -dynamiclib -dynamic -pipe -Os -m64
 -D_GLIBCXX_USE_CXX11_ABI=0 -W -Wall -pedantic -Wpointer-arith -Wwrite-
 strings -Wno-long-long -std=c++11    -fvisibility=hidden
 -Wl,-headerpad_max_install_names -Wl,-read_only_relocs,suppress -m64
 -Wl,-compatibility_version -Wl,67 -Wl,-current_version -Wl,67.1
 -install_name /opt/local/lib/libicui18n.67.dylib -o
 ../lib/libicui18n.67.1.dylib ucln_in.o fmtable.o format.o msgfmt.o umsg.o
 numfmt.o unum.o decimfmt.o dcfmtsym.o fmtable_cnv.o choicfmt.o datefmt.o
 smpdtfmt.o reldtfmt.o dtfmtsym.o udat.o dtptngen.o udatpg.o nfrs.o
 nfrule.o nfsubs.o rbnf.o numsys.o unumsys.o ucsdet.o ucal.o calendar.o
 gregocal.o timezone.o simpletz.o olsontz.o astro.o taiwncal.o buddhcal.o
 persncal.o islamcal.o japancal.o gregoimp.o hebrwcal.o indiancal.o
 chnsecal.o cecal.o coptccal.o dangical.o ethpccal.o coleitr.o coll.o
 sortkey.o bocsu.o ucoleitr.o ucol.o ucol_res.o ucol_sit.o collation.o
 collationsettings.o collationdata.o collationtailoring.o
 collationdatareader.o collationdatawriter.o collationfcd.o
 collationiterator.o utf16collationiterator.o utf8collationiterator.o
 uitercollationiterator.o collationsets.o collationcompare.o
 collationfastlatin.o collationkeys.o rulebasedcollator.o collationroot.o
 collationrootelements.o collationdatabuilder.o collationweights.o
 collationruleparser.o collationbuilder.o collationfastlatinbuilder.o
 listformatter.o ulistformatter.o strmatch.o usearch.o search.o stsearch.o
 translit.o utrans.o esctrn.o unesctrn.o funcrepl.o strrepl.o tridpars.o
 cpdtrans.o rbt.o rbt_data.o rbt_pars.o rbt_rule.o rbt_set.o nultrans.o
 remtrans.o casetrn.o titletrn.o tolowtrn.o toupptrn.o anytrans.o
 name2uni.o uni2name.o nortrans.o quant.o transreg.o brktrans.o regexcmp.o
 rematch.o repattrn.o regexst.o regextxt.o regeximp.o uregex.o uregexc.o
 ulocdata.o measfmt.o currfmt.o curramt.o currunit.o measure.o utmscale.o
 csdetect.o csmatch.o csr2022.o csrecog.o csrmbcs.o csrsbcs.o csrucode.o
 csrutf8.o inputext.o wintzimpl.o windtfmt.o winnmfmt.o basictz.o dtrule.o
 rbtz.o tzrule.o tztrans.o vtzone.o zonemeta.o standardplural.o
 upluralrules.o plurrule.o plurfmt.o selfmt.o dtitvfmt.o dtitvinf.o
 udateintervalformat.o tmunit.o tmutamt.o tmutfmt.o currpinf.o uspoof.o
 uspoof_impl.o uspoof_build.o uspoof_conf.o smpdtfst.o ztrans.o zrule.o
 vzone.o fphdlimp.o fpositer.o ufieldpositer.o decNumber.o decContext.o
 alphaindex.o tznames.o tznames_impl.o tzgnames.o tzfmt.o
 compactdecimalformat.o gender.o region.o scriptset.o uregion.o
 reldatefmt.o quantityformatter.o measunit.o measunit_extra.o
 sharedbreakiterator.o scientificnumberformatter.o dayperiodrules.o
 nounit.o number_affixutils.o number_compact.o number_decimalquantity.o
 number_decimfmtprops.o number_fluent.o number_formatimpl.o
 number_grouping.o number_integerwidth.o number_longnames.o
 number_modifiers.o number_notation.o number_output.o number_padding.o
 number_patternmodifier.o number_patternstring.o number_rounding.o
 number_scientific.o number_utils.o number_asformat.o number_mapper.o
 number_multiplier.o number_currencysymbols.o number_skeletons.o
 number_capi.o double-conversion-string-to-double.o double-conversion-
 double-to-string.o double-conversion-bignum-dtoa.o double-conversion-
 bignum.o double-conversion-cached-powers.o double-conversion-fast-dtoa.o
 double-conversion-strtod.o string_segment.o numparse_parsednumber.o
 numparse_impl.o numparse_symbols.o numparse_decimal.o
 numparse_scientific.o numparse_currency.o numparse_affixes.o
 numparse_compositions.o numparse_validators.o numrange_fluent.o
 numrange_impl.o erarules.o formattedvalue.o formattedval_iterimpl.o
 formattedval_sbimpl.o formatted_string_builder.o -L../lib -licuuc
 -L../stubdata -licudata -lpthread -lm
 ld: relocation used in icu_67::FixedDecimal::getFractionalDigits(double,
 int) from plurrule.o not allowed in slidable image
 collect2: error: ld returned 1 exit status
 gnumake[1]: *** [../lib/libicui18n.67.1.dylib] Error 1
 gnumake[1]: Leaving directory
 `/opt/local/var/macports/build/_opt_PPCLeopardPorts_devel_icu/icu/work/icu
 /source-ppc64/i18n'
 gnumake: *** [all-recursive] Error 2
 gnumake: Leaving directory
 `/opt/local/var/macports/build/_opt_PPCLeopardPorts_devel_icu/icu/work/icu
 /source-ppc64'
 Command failed:  cd
 "/opt/local/var/macports/build/_opt_PPCLeopardPorts_devel_icu/icu/work/icu
 /source-ppc64" && /usr/bin/gnumake -j4 -w all VERBOSE=1
 Exit code: 2
 Error: Failed to build icu: command execution failed

 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/64398#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list