[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