トップ 最新 追記

Masa's blog

検索キーワード:

2015年09月08日 less-382-iso262.ext03 [長年日記]

_ less-382-iso262.ext03

http://mirror.ancl.hawaii.edu/pub/FreeBSD/ports/local-distfiles/nork/

$ tar xvvf less-382.tar.gz
$ chmod -R +w less-382
$ cd less-382
$ zcat ../less-382-iso258.patch.gz | patch -p1
$ zcat ../less-382-iso258-259.patch.gz | patch -p1
$ zcat ../less-382-iso259-260.patch.gz | patch -p1
$ zcat ../less-382-iso260-261.patch.gz | patch -p1
$ zcat ../less-382-iso261-262.patch.gz | patch -p1
$ zcat ../less-382-iso262.ext03.patch.gz | patch -p1
$ ./configure && make

# make install

2015年09月11日 How to use tcpdump and rtmpdump to download NHK for School ;P [長年日記]

How to use tcpdump and rtmpdump to download NHK for School ;P

_ First, you need a computer that connect to Internet directly and start tcpdump to capture network packets by doing something like:

tcpdump -s 0 -i eth0 -v -w capture.cap

And then, start browser(firefox etc) and play movie in NHK for School. After few minutes, stop tcpdump with pressing CTRL-C and convert capture data to text format by doing something like:

tcpdump -s 0 -v -XX -r capture.cap >capture.cap.txt

And see capture.cap.txt and determine some parameters for rtmpdump.

$ less capture.cap.txt

22:57:35.268804 IP foo.bar.ne.jp.57403 > xx.xx.xx.xx.http: P 3576:3681(105) ack 3460 win 273 <nop,nop,timestamp 1603797886 2111353824>
        0x0000:  0017 1088 75cf 000a e4be cc43 0800 4500  ....u......C..E.
        0x0010:  009d 4eb3 4000 4006 ba7c 7ac5 c22e ca20  ..N.@.@..|z.....
        0x0020:  2a17 e03b 0050 f687 5a36 fc3b 5a6f 8018  *..;.P..Z6.;Zo..
        0x0030:  0111 60e1 0000 0101 080a 5f98 037e 7dd8  ..`......._..~}.
        0x0040:  b3e0 0800 010d 0000 5214 0100 0000 0200  ........R.......
        0x0050:  0470 6c61 7900 0000 0000 0000 0000 0502  .play...........
        0x0060:  002c 6d70 343a 6461 732f 4430 3030 3534  .,mp4:das/D00054    <- string for '-y' parameter
        0x0070:  3032 2f44 3030 3031 3233 3435 3637 5f30  02/D0001234567_0    <-
        0x0080:  3030 3030 5f56 5f30 3030 2e66 3476 0000  0000_V_000.f4v..    <-
        0x0090:  0000 0000 0000 0000 c08f 4000 0000 0000  ..........@.....
        0x00a0:  c200 0300 0000 0100 004e 20              .........N.

... snip ...

22:57:53.628365 IP foo.bar.ne.jp.41867 > xx.xx.xx.xx.1935: P 2986:3508(522) ack 2897 win 137 <nop,nop,timestamp 1603816246 2111372216>
        0x0000:  0017 1088 75cf 000a e4be cc43 0800 4500  ....u......C..E.
        0x0010:  023e eb26 4000 4006 1c68 7ac5 c22e ca20  .>.&@.@..hz.....
        0x0020:  2a17 a38b 078f 9292 ada1 ff2c 1bc8 8018  *..........,....
        0x0030:  0089 375c 0000 0101 080a 5f98 4b36 7dd8  ..7\......_.K6}.
        0x0040:  fbb8 8444 ac8e f8dc 402f cc3e 90c1 146c  ...D....@/.>...l
        0x0050:  c46b 34cb 5983 bbe2 8036 e94c c844 3597  .k4.Y....6.L.D5.
        0x0060:  ed11 b8aa 66b7 2bfe 7cab 4b10 4aa6 64a5  ....f.+.|.K.J.d.
        0x0070:  2746 26f7 9086 9bd9 bec0 add2 ac11 74f3  'F&...........t.
        0x0080:  981c 52dc 8528 e7b3 ff81 1890 1642 ba3c  ..R..(.......B.<
        0x0090:  3ffa 6698 a0f8 8a89 ce3a 0300 0000 0001  ?.f......:......
        0x00a0:  a314 0000 0000 0200 0763 6f6e 6e65 6374  .........connect
        0x00b0:  003f f000 0000 0000 0003 0003 6170 7002  .?..........app.
        0x00c0:  000e 666c 7639 2f5f 6465 6669 6e73 745f  ..flv9/_definst_
        0x00d0:  0008 666c 6173 6856 6572 0200 104c 4e58  ..flashVer...LNX
        0x00e0:  2031 312c 322c 3230 322c 3530 3800 0673  .11,2,202,508..s
        0x00f0:  7766 5572 6c02 004c 6874 7470 3a2f 2f77  wfUrl..Lhttp://w
        0x0100:  7777 2e6e 686b 2e6f 722e 6a70 2f73 6368  ww.nhk.or.jp/sch
        0x0110:  6f6f 6c2f 7061 7274 7332 3031 352f 706c  ool/parts2015/pl
        0x0120:  6179 6572 2f73 c377 662f 706c 6179 6572  ayer/s.wf/player
        0x0130:  2e73 7766 3f6e 633d 3134 3431 3839 3332  .swf?nc=14418932
        0x0140:  3437 3736 3300 0574 6355 726c 0200 2472  47763..tcUrl..$r    <- string for '-r' and '-a' parameter
        0x0150:  746d 703a 2f2f 666c 7639 2e6e 686b 2e6f  tmp://flv9.nhk.o    <-
        0x0160:  722e 6a70 2f66 6c76 392f 5f64 6566 696e  r.jp/flv9/_defin    <-
        0x0170:  7374 5f00 0466 7061 6401 0000 0c63 6170  st_..fpad....cap    <-
        0x0180:  6162 696c 6974 6965 7300 406d e000 0000  abilities.@m....
        0x0190:  0000 000b 6175 6469 6f43 6f64 6563 7300  ....audioCodecs.
        0x01a0:  40ab ee00 0000 00c3 0000 0b76 6964 656f  @..........video
        0x01b0:  436f 6465 6373 0040 6f80 0000 0000 0000  Codecs.@o.......
        0x01c0:  0d76 6964 656f 4675 6e63 7469 6f6e 003f  .videoFunction.?
        0x01d0:  f000 0000 0000 0000 0770 6167 6555 726c  .........pageUrl
        0x01e0:  0200 4a68 7474 703a 2f2f 7777 7732 2e6e  ..Jhttp://www2.n
        0x01f0:  686b 2e6f 722e 6a70 2f73 6368 6f6f 6c2f  hk.or.jp/school/
        0x0200:  6d6f 7669 652f 636c 6970 2e63 6769 3f64  movie/clip.cgi?d
        0x0210:  6173 5f69 643d 4430 3030 3132 3334 3536  as_id=D000123456
        0x0220:  375f 3030 3030 3026 c370 3d62 6f78 000e  7_00000&.p=box..
        0x0230:  6f62 6a65 6374 456e 636f 6469 6e67 0000  objectEncoding..
        0x0240:  0000 0000 0000 0000 0009 0100            ............

And now, you can download streaming movie from NHK for School into file.flv by doing something like:

rtmpdump -r rtmp://flv9.nhk.or.jp/ -y mp4:das/D0005402/D0001234567_00000_V_000.f4v -a flv9/_definst_ -o file.flv

Good luck ;)

get_nhk_for_school.sh(script to download nhk for school)

#! /bin/sh
#
#  1. tcpdump -s 0 -i eth0 -v -w capture.cap
#  2. browse movie that you want
#  3. stop tcpdump with CTRL-C
#  4. ./get_nhk_for_school.sh capture.cap
#
function funcFindUrl (){
        strings $1 |\
        egrep -1 "^play$|^tcUrl$" |\
        awk 'BEGIN{
                tcUrlSw = 0;
                tcUrl = "";
                playSw = 0;
        }
        {
                if ($0 == "tcUrl"){
                        tcUrlSw = 1;
                }else if($0 == "play"){
                        playSw = 1;
                }else{
                        if (tcUrlSw == 1){
                                gsub(/^./,"");
                                tcUrl = $0;
                                tcUrlSw = 0;
                        }else if (playSw == 1){
                                gsub(/^./,"");
                                if (tcUrl != ""){
                                        printf("%-s/%-s\n",tcUrl,$0);
                                }
                                playSw = 0;
                        }
                }
        }' |\
        sort |\
        uniq
}

for i in `funcFindUrl $1`
do
        echo == $i ==
        output=`basename $i`
        rtmpdump -r "$i" -o ${output}
done

2015年09月26日 Build firefox-41.0 on Slackware-14.0 [長年日記]

_ Build firefox-41.0 on Slackware-14.0

.mozconfig

export LDFLAGS="-latomic"
. $topsrcdir/browser/config/mozconfig
ac_add_options --enable-optimize
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-mochitest
ac_add_options --enable-gstreamer=1.0

Build command

nice make -f client.mk build && cd obj-i686-pc-linux-gnu/ && nice make package

First build failed :(

ar r ../lib/libicui18n.a ucln_in.ao fmtable.ao format.ao msgfmt.ao umsg.ao numfmt.ao unum.ao decimfmt.ao dcfmtsym.ao ucurr.ao digitlst.ao fmtable_cnv.ao choicfmt.ao datefmt.ao smpdtfmt.ao reldtfmt.ao dtfmtsym.ao udat.ao dtptngen.ao udatpg.ao nfrs.ao nfrule.ao nfsubs.ao rbnf.ao numsys.ao unumsys.ao ucsdet.ao ucal.ao calendar.ao gregocal.ao timezone.ao simpletz.ao olsontz.ao astro.ao taiwncal.ao buddhcal.ao persncal.ao islamcal.ao japancal.ao gregoimp.ao hebrwcal.ao indiancal.ao chnsecal.ao cecal.ao coptccal.ao dangical.ao ethpccal.ao coleitr.ao coll.ao tblcoll.ao sortkey.ao bocsu.ao ucoleitr.ao ucol.ao ucol_res.ao ucol_bld.ao ucol_sit.ao ucol_tok.ao ucol_wgt.ao ucol_cnt.ao ucol_elm.ao strmatch.ao usearch.ao search.ao stsearch.ao translit.ao utrans.ao esctrn.ao unesctrn.ao funcrepl.ao strrepl.ao tridpars.ao cpdtrans.ao rbt.ao rbt_data.ao rbt_pars.ao rbt_rule.ao rbt_set.ao nultrans.ao remtrans.ao casetrn.ao titletrn.ao tolowtrn.ao toupptrn.ao anytrans.ao name2uni.ao uni2name.ao nortrans.ao quant.ao transreg.ao brktrans.ao regexcmp.ao rematch.ao repattrn.ao regexst.ao regextxt.ao regeximp.ao uregex.ao uregexc.ao ulocdata.ao measfmt.ao currfmt.ao curramt.ao currunit.ao measure.ao utmscale.ao csdetect.ao csmatch.ao csr2022.ao csrecog.ao csrmbcs.ao csrsbcs.ao csrucode.ao csrutf8.ao inputext.ao wintzimpl.ao windtfmt.ao winnmfmt.ao basictz.ao dtrule.ao rbtz.ao tzrule.ao tztrans.ao vtzone.ao zonemeta.ao upluralrules.ao plurrule.ao plurfmt.ao selfmt.ao dtitvfmt.ao dtitvinf.ao udateintervalformat.ao tmunit.ao tmutamt.ao tmutfmt.ao currpinf.ao uspoof.ao uspoof_impl.ao uspoof_build.ao uspoof_conf.ao uspoof_wsconf.ao decfmtst.ao smpdtfst.ao ztrans.ao zrule.ao vzone.ao fphdlimp.ao fpositer.ao locdspnm.ao decNumber.ao decContext.ao alphaindex.ao tznames.ao tznames_impl.ao tzgnames.ao tzfmt.ao compactdecimalformat.ao gender.ao region.ao scriptset.ao identifier_info.ao uregion.ao
ar: ../lib/libicui18n.a を作成しています
ranlib ../lib/libicui18n.a

... snip ...

/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:754: error: undefined reference to 'ucol_getAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:754: error: undefined reference to 'ucol_countAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:771: error: undefined reference to 'ucol_getKeywordValuesForLocale_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:778: error: undefined reference to 'uenum_count_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'uenum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:790: error: undefined reference to 'uenum_next_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1248: error: undefined reference to 'unum_getAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1248: error: undefined reference to 'unum_countAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1708: error: undefined reference to 'udat_getAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1708: error: undefined reference to 'udat_countAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1746: error: undefined reference to 'ucal_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1747: error: undefined reference to 'ucal_getType_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1752: error: undefined reference to 'ucal_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1761: error: undefined reference to 'ucal_getKeywordValuesForLocale_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1768: error: undefined reference to 'uenum_count_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1775: error: undefined reference to 'uenum_next_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'uenum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1814: error: undefined reference to 'u_strlen_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1817: error: undefined reference to 'udatpg_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1825: error: undefined reference to 'udatpg_getBestPattern_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'udatpg_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1836: error: undefined reference to 'udatpg_getBestPattern_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:940: error: undefined reference to 'ucol_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:946: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:947: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:948: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:949: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:953: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:985: error: undefined reference to 'ucol_strcoll_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1037: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1037: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1400: error: undefined reference to 'unum_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1408: error: undefined reference to 'unum_setTextAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'unum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1415: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1416: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1417: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1423: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1441: error: undefined reference to 'unum_formatDouble_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1497: error: undefined reference to 'unum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1446: error: undefined reference to 'unum_formatDouble_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1908: error: undefined reference to 'u_strlen_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1916: error: undefined reference to 'udat_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1894: error: undefined reference to 'u_strlen_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1924: error: undefined reference to 'udat_getCalendar_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1925: error: undefined reference to 'ucal_setGregorianChange_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1945: error: undefined reference to 'udat_format_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:2001: error: undefined reference to 'udat_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1950: error: undefined reference to 'udat_format_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1267: error: undefined reference to 'icu_52::Locale::Locale(char const*, char const*, char const*, char const*)'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1269: error: undefined reference to 'icu_52::NumberingSystem::createInstance(icu_52::Locale const&, UErrorCode&)'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1267: error: undefined reference to 'icu_52::Locale::~Locale()'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1274: error: undefined reference to 'icu_52::NumberingSystem::getName() const'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:680: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1174: error: undefined reference to 'unum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1634: error: undefined reference to 'udat_close_52'
/home/m-ito/tmp/mozilla-release/js/src/jsapi.cpp:551: error: undefined reference to 'u_init_52'
/home/m-ito/tmp/mozilla-release/js/src/jsapi.cpp:593: error: undefined reference to 'u_cleanup_52'
/home/m-ito/tmp/mozilla-release/js/src/jsapi.cpp:648: error: undefined reference to 'u_setMemoryFunctions_52'
/home/m-ito/tmp/mozilla-release/js/src/jsstr.cpp:934: error: undefined reference to 'unorm_normalize_52'
/home/m-ito/tmp/mozilla-release/js/src/jsstr.cpp:944: error: undefined reference to 'unorm_normalize_52'

Undefined referencies are defined in libicui18n.a. It seems success to build libicui18n.a in above log. I couldn't understand why link failed.

Second build failed too X(

I'm not sure about this issue, but I continued to build and it failed again...

ar r ../lib/libicui18n.a ucln_in.o fmtable.o format.o msgfmt.o umsg.o numfmt.o unum.o decimfmt.o dcfmtsym.o ucurr.o digitlst.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 tblcoll.o sortkey.o bocsu.o ucoleitr.o ucol.o ucol_res.o ucol_bld.o ucol_sit.o ucol_tok.o ucol_wgt.o ucol_cnt.o ucol_elm.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 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 uspoof_wsconf.o decfmtst.o smpdtfst.o ztrans.o zrule.o vzone.o fphdlimp.o fpositer.o locdspnm.o decNumber.o decContext.o alphaindex.o tznames.o tznames_impl.o tzgnames.o tzfmt.o compactdecimalformat.o gender.o region.o scriptset.o identifier_info.o uregion.o
ranlib ../lib/libicui18n.a

... snip ...

/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:754: error: undefined reference to 'ucol_getAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:754: error: undefined reference to 'ucol_countAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:771: error: undefined reference to 'ucol_getKeywordValuesForLocale_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:778: error: undefined reference to 'uenum_count_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'uenum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:790: error: undefined reference to 'uenum_next_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1248: error: undefined reference to 'unum_getAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1248: error: undefined reference to 'unum_countAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1708: error: undefined reference to 'udat_getAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1708: error: undefined reference to 'udat_countAvailable_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1746: error: undefined reference to 'ucal_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1747: error: undefined reference to 'ucal_getType_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1752: error: undefined reference to 'ucal_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1761: error: undefined reference to 'ucal_getKeywordValuesForLocale_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1768: error: undefined reference to 'uenum_count_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1775: error: undefined reference to 'uenum_next_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'uenum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1814: error: undefined reference to 'u_strlen_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1817: error: undefined reference to 'udatpg_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1825: error: undefined reference to 'udatpg_getBestPattern_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'udatpg_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1836: error: undefined reference to 'udatpg_getBestPattern_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:940: error: undefined reference to 'ucol_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:946: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:947: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:948: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:949: error: undefined reference to 'ucol_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:953: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:985: error: undefined reference to 'ucol_strcoll_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1037: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1037: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1400: error: undefined reference to 'unum_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1408: error: undefined reference to 'unum_setTextAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:536: error: undefined reference to 'unum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1415: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1416: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1417: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1423: error: undefined reference to 'unum_setAttribute_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1441: error: undefined reference to 'unum_formatDouble_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1497: error: undefined reference to 'unum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1446: error: undefined reference to 'unum_formatDouble_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1908: error: undefined reference to 'u_strlen_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1916: error: undefined reference to 'udat_open_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1894: error: undefined reference to 'u_strlen_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1924: error: undefined reference to 'udat_getCalendar_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1925: error: undefined reference to 'ucal_setGregorianChange_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1945: error: undefined reference to 'udat_format_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:2001: error: undefined reference to 'udat_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1950: error: undefined reference to 'udat_format_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1267: error: undefined reference to 'icu_52::Locale::Locale(char const*, char const*, char const*, char const*)'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1269: error: undefined reference to 'icu_52::NumberingSystem::createInstance(icu_52::Locale const&, UErrorCode&)'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1267: error: undefined reference to 'icu_52::Locale::~Locale()'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1274: error: undefined reference to 'icu_52::NumberingSystem::getName() const'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:680: error: undefined reference to 'ucol_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1174: error: undefined reference to 'unum_close_52'
/home/m-ito/tmp/mozilla-release/js/src/builtin/Intl.cpp:1634: error: undefined reference to 'udat_close_52'
/home/m-ito/tmp/mozilla-release/js/src/jsapi.cpp:551: error: undefined reference to 'u_init_52'
/home/m-ito/tmp/mozilla-release/js/src/jsapi.cpp:593: error: undefined reference to 'u_cleanup_52'
/home/m-ito/tmp/mozilla-release/js/src/jsapi.cpp:648: error: undefined reference to 'u_setMemoryFunctions_52'
/home/m-ito/tmp/mozilla-release/js/src/jsstr.cpp:934: error: undefined reference to 'unorm_normalize_52'
/home/m-ito/tmp/mozilla-release/js/src/jsstr.cpp:944: error: undefined reference to 'unorm_normalize_52'

I noticed that libicui18n.a was built from *.ao in first build, but libicui18n.a was built from *.o in second build. I have never seen such ".ao" extention for object and I couldn't understand why libicui18n.a was built in different way in first and second build.

Third build succeeded :D

I continue to build again and it succeeded. I feel it very strange.

I tried to fix about build issue(1)

I think this issue may be related to "parallel make function" of gnu-make, so I changed .mozconfig to something like:

export LDFLAGS="-latomic"
. $topsrcdir/browser/config/mozconfig
ac_add_options --enable-optimize
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-mochitest
ac_add_options --enable-gstreamer=1.0
mk_add_options MOZ_MAKE_FLAGS=-j1

With this .mozconfig, first build failed but second build succeeded.

I tried to fix about build issue(2) RESOLVED!

I have no doubt that some thing issue about "parallel make function" causes to fail build, so I got sources of gnu-make and patch which include fix for "parallel make function" from Slackware-current and built it to replace old gnu-make. After that, build of firefox succeeded in first time with even first .mozconfig without "mk_add_options MOZ_MAKE_FLAGS=-j1" option :)