[Pkg-javascript-devel] Bug#994245: nodejs: improve bootstraping nodejs

Bo YU tsu.yubo at gmail.com
Fri Mar 25 06:10:12 GMT 2022


hi,

On Fri, Mar 25, 2022 at 9:31 AM Jérémy Lal <kapouer at melix.org> wrote:

>
>
> On Fri, Mar 25, 2022 at 12:55 AM Jérémy Lal <kapouer at melix.org> wrote:
>
>>
>>
>> On Fri, Mar 25, 2022 at 12:23 AM Jérémy Lal <kapouer at melix.org> wrote:
>>
>>>
>>>
>>> On Fri, Mar 25, 2022 at 12:17 AM Bo YU <tsu.yubo at gmail.com> wrote:
>>>
>>>>
>>>>
>>>> On Fri, Mar 25, 2022 at 7:11 AM Bo YU <tsu.yubo at gmail.com> wrote:
>>>>
>>>>> On Thu, Mar 24, 2022 at 01:11:40AM +0100, Jérémy Lal wrote:
>>>>> >   On Thu, Mar 24, 2022 at 1:05 AM Jérémy Lal <[1]kapouer at melix.org>
>>>>> >   wrote:
>>>>> >
>>>>> >   --build=any
>>>>> ...
>>>>> >
>>>>> >     Hi,
>>>>> >     After several times build fails about (on riscv hardware):
>>>>> >      collect2: fatal error: ld terminated with signal 9 [Killed]
>>>>> >     compilation terminated.
>>>>> >
>>>>> >   Linking nodejs happens to use a lot of memory: make sure enough
>>>>> swap
>>>>> >   space is available.
>>>>> >   (I had similar crashes with 12GB of RAM and no swap).
>>>>> >   Or the linker is broken on riscv64... let's hope it is not.
>>>>> >   If you happen to reach the "building deb" stage, you can disable
>>>>> >   -dbgsym package creation,
>>>>> >   which is very long, with another build profile: noautodbgsym.
>>>>> >   DEB_BUILD_PROFILES="nodoc nocheck noautodbgsym
>>>>> pkg.nodejs.nobuiltin"
>>>>> >   Jérémy
>>>>> Today I checkout master-16.x, and I got:
>>>>>
>>>> sorry, add more useful info:
>>>> cc -o
>>>> /home/vimer/git/nodejs/out/Release/obj.target/llhttp/deps/llhttp/src/api.o
>>>> ../deps/llhttp/src/api.c '-DV8_DEPRECATION_WARNINGS'
>>>> '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1'
>>>> '-DNODE_OPENSSL_CERT_STORE' '-D__STDC_FORMAT_MACROS' -I../deps/llhttp
>>>> -I../deps/llhttp/include  -pthread -Wall -Wextra -Wno-unused-parameter
>>>> -fPIC -O3 -fno-omit-frame-pointer  -MMD -MF
>>>> /home/vimer/git/nodejs/out/Release/.deps//home/vimer/git/nodejs/out/Release/obj.target/llhttp/deps/llhttp/src/api.o.d.raw
>>>> -fPIC -g -fPIC -g -fPIC -g -fPIC -g -c
>>>> make[3]: *** No rule to make target
>>>> '../deps/acorn/acorn/dist/acorn.js', needed by
>>>> '/home/vimer/git/nodejs/out/Release/obj/gen/node_javascript.cc'.  Stop.
>>>>
>>>
>>> Maybe some symlink is missing, am checking it but it will take a while
>>> to rebuild.
>>>
>>
>> I pushed a fix for a mistake in debian/rules that happened while renaming
>> "nobuiltin".
>>
>
> At least it builds and produces deb packages here on amd64 without
> depending on nodejs itself.
>
> It have finished about compiling phrase, but dh_missing reports error:
make[1]: Entering directory '/home/vimer/git/nodejs'
make[1]: awk: No such file or directory
make[1]: awk: No such file or directory
sed 's/@DEB_HOST_MULTIARCH@/riscv64-linux-gnu/g' debian/libnode.install >
debian/libnode.install
sed -e 's/@DEB_HOST_MULTIARCH@/riscv64-linux-gnu/g' -e 's/@ABI@//g' debian/
libnode-dev.links.in > debian/libnode-dev.links
cp debian/nodejs.install.in debian/nodejs.install
echo "./lib /usr/share/nodejs/node/" >> debian/nodejs.install
deps_files="deps/v8/tools/splaytree.mjs deps/v8/tools/codemap.mjs
deps/v8/tools/consarray.mjs deps/v8/tools/csvparser.mjs
deps/v8/tools/profile.mjs deps/v8/tools/profile_view.mjs
deps/v8/tools/logreader.mjs deps/v8/tools/arguments.mjs
deps/v8/tools/tickprocessor.mjs deps/v8/tools/sourcemap.mjs
deps/v8/tools/tickprocessor-driver.mjs deps/acorn/acorn/dist/acorn.js
deps/acorn/acorn-walk/dist/walk.js deps/cjs-module-lexer/lexer.js"; \
for src in $deps_files; do \
        dst=`dirname $src`; \
        echo "./$src /usr/share/nodejs/node/$dst" >> debian/nodejs.install;
\
done
# and add uncompiled acorn
echo "./node-acorn/acorn/src /usr/share/nodejs/node/deps/acorn/acorn/" >>
debian/nodejs.install
echo "./node-acorn/acorn-walk/src
/usr/share/nodejs/node/deps/acorn/acorn-walk/" >> debian/nodejs.install
dh_install
make[1]: Leaving directory '/home/vimer/git/nodejs'
   debian/rules override_dh_installdocs
make[1]: Entering directory '/home/vimer/git/nodejs'
dh_installdocs
find debian/nodejs-doc/usr/share/doc/nodejs-doc -name *.json -delete || true
find: 'debian/nodejs-doc/usr/share/doc/nodejs-doc': No such file or
directory
make[1]: Leaving directory '/home/vimer/git/nodejs'
   dh_installchangelogs -a
   dh_installman -a
   dh_lintian -a
   dh_perl -a
   dh_link -a
   dh_strip_nondeterminism -a
   dh_compress -a
   dh_fixperms -a
   dh_missing -a
dh_missing: warning: usr/lib/libnode.so.93 exists in debian/tmp but is not
installed to anywhere
        The following debhelper tools have reported what they installed
(with files per package)
         * dh_install: libnode-dev (179), libnode93 (0), nodejs (72),
nodejs-doc (0)
         * dh_installdocs: libnode-dev (0), libnode93 (0), nodejs (0),
nodejs-doc (0)
         * dh_installman: libnode-dev (0), libnode93 (0), nodejs (1),
nodejs-doc (0)
        If the missing files are installed by another tool, please file a
bug against it.
        When filing the report, if the tool is not part of debhelper
itself, please reference the
        "Logging helpers and dh_missing" section from the "PROGRAMMING"
guide for debhelper (10.6.3+).
          (in the debhelper package:
/usr/share/doc/debhelper/PROGRAMMING.gz)
        Be sure to test with dpkg-buildpackage -A/-B as the results may
vary when only a subset is built
        If the omission is intentional or no other helper can take care of
this consider adding the
        paths to debian/not-installed.
dh_missing: error: missing files, aborting
make: *** [debian/rules:186: binary-arch] Error 255
dpkg-buildpackage: error: debian/rules binary-arch subprocess returned exit
status 2

Will fix debian/not-installed?
BTW, We have sole cmd execute after dh_missing phrase? if not rebuilt again
it will save many times.
Bo

> Jérémy
>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-javascript-devel/attachments/20220325/be8064c1/attachment.htm>


More information about the Pkg-javascript-devel mailing list