sabotage-linux / sabotage Goto Github PK
View Code? Open in Web Editor NEWThis project forked from pikhq/sabotage
a radical and experimental distribution based on musl libc and busybox
Home Page: http://sabo.xyz
License: Other
This project forked from pikhq/sabotage
a radical and experimental distribution based on musl libc and busybox
Home Page: http://sabo.xyz
License: Other
boehm gc is a disgusting horrible turd full of hacks and ifdefffery and 20 line macros
it's so full of shit that i do not want to look at it in order to keep my sanity alive.
Here is build_state0_musl.log
patching file include/math.h
ln -sf ../arch/i686/bits include/bits
sh include/bits/alltypes.h.sh > include/bits/alltypes.h
/bin/sh: include/bits/alltypes.h: Böyle bir dosya ya da dizin yok
make: *** [include/bits/alltypes.h] Hata 1
Error means "no such a file or directory" in Turkish.
while building tests with the "fluid" command line program
Generating tree.cxx and header from tree.fl...
make[1]: *** [tree.cxx] Segmentation fault
./fltk-1.3.x-r9708/test/Makefile 262/497 52%
# FLUID file rules
.fl.cxx .fl.h: ../fluid/fluid$(EXEEXT)
echo Generating $@ and header from $<...
../fluid/fluid$(EXEEXT) -c $<
root:/src/build/fltk13/fltk-1.3.x-r9708/test$ gdb --args ../fluid/fluid -c tree.fl
this looks very similar to an issue i had with first ppc, then arm where C++ static initializers were'nt run.
at that time it was Generating fast_slow.cxx and header from fast_slow.fl...
tools that need to switch to root like su should be compiled in a separate run and placed in a different binary with setuid.
if it gets to bloated, using another su would make sense (can probably be implemented in < 50 LOC C)
Reading symbols from /src/a.out...I'm sorry, Dave, I can't do that. Symbol format `elf64-x86-64' unknown.
must be a compatibility issue with libbfd of binutils 2.22
it'll probably work to just remove the --disable-bfd or so from pkg/gdb, so that it will build a compatible version.
the problem is that binutils installs bfd into prefix, and sometimes gdb includes the system header instead of its own.
also building libbfd twice is superfluous work, the optimal solution would be a patch that lets gdb cooperate properly with the already installed stuff.
https://gist.github.com/2347749
this is a script which downloads it from cvs. cvs package could be copied from GregorR's fork, but the prefered solution is to have it download a tarball so it can be distributed as a normal package
the generated file should go to /etc/ssl/certs/ca-bundle.crt
it is referenced by:
... on ARM.
[err] evmap.c:401: Assertion ctx failed in evmap_io_active
at least on x86_64
Is it possible to have node.js added to Sabotage ?
Thanks in advance, Olivier.
I can't work out how to build 32 bit Sabotage on a 64 bit host (other I guess than creating a 32 bit chroot before I start). Setting cross compile or gcc as gcc -m32 either still builds 64 bit or fails. Am I missing something obvious?
access("//share/alsa/alsa.conf.d/", R_OK) = 0
stat64("//share/alsa/alsa.conf.d/", {st_mode=0, st_size=2, ...}) = 0
open("//share/alsa/alsa.conf.d/", O_RDONLY|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
getdents64(3, /* 3 entries */, 2048) = 80
getdents64(3, /* 0 entries */, 2048) = 0
close(3) = 0
access("/etc/asound.conf", R_OK) = -1 ENOENT (No such file or directory)
access("/root/.asoundrc", R_OK) = -1 ENOENT (No such file or directory)
open("/dev/snd/controlC0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/dev/aloadC0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
writev(2, [{"cannot open mixer: No such file "..., 45}, {NULL, 0}], 2cannot open mixer: No such file or directory
the missing /dev/snd/controlC0 may be part of the issue
the built python works, though it shouldn't be of great use without libffi.
reportedly the build error doesnt happen on i386
*** WARNING: renaming "_ctypes" since importing it failed: unknown error
Failed to build these modules:
_ctypes
this is currently one of the few single-point-of-failures.
all butch packages have mirror functionality built in and most use multiple mirrors.
Debian has updated, this works:
[main]
tardir=ca-certificates-20120623
filesize=287315
sha512=f7cd5f4319e9e21f34c360e26e655b9ea821bc5319d3b9f0dea45f683e2fec875a299558e4e70ea9ed2ec92ef0cecdf58af7b63f868e58013f49653019caf145
[mirrors]
http://ftp.debian.org/debian/pool/main/c/ca-certificates/ca-certificates_20120623.tar.gz
it usually works on the second try.
i suspect there's either a race condition in the makefile that fails with multiple make processes, or busybox sed has some locking issues.
gio-module-cache, glib-compile-schemas, gtk-update-icon-cache, ...
not yet figured how to deal with this shit
possible solutions:
1)
TODO evaluate nldev to support mdev with netlink functionality
http://git.r-36.net/nldev
other mdev resources
https://github.com/slashbeast/mdev-like-a-boss
http://www.gossamer-threads.com/lists/gentoo/user/270576
https://blog.stuart.shelton.me/archives/891
http://wiki.gentoo.org/wiki/Mdev
https://wiki.gentoo.org/wiki/Mdev/Automount_USB
Booting from my bootstrapped system stops with a kernel panic. Root is correctly set and I chainload from another syslinux. The system works perfectly under chroot.
Have I missed a step after bootstrap to make it bootable? I did not find a mkinitcpio or similar command.
should I pass init=/bin/runsv on the kernel line?
http://hostap.epitest.fi/wpa_supplicant/
http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
ubuntu seems to have a newer version
https://launchpad.net/ubuntu/+source/wireless-tools
Otherwise error message will block building gcc3:
/usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
see also: https://bugs.launchpad.net/ubuntu/+source/hdf5/+bug/286565/comments/6
for example wget does not work without --no-check-certificate any more
this prevents openal from functioning correctly (mutex ListLock won't get initialized to be a recursive mutex because alc_init() is not called, thus raising a deadlock)
that attr seem to be very prone to miscompilation
http://www.faqs.org/docs/Linux-HOWTO/Program-Library-HOWTO.html#INIT-AND-CLEANUP
"Shared libraries must not be compiled with the gcc arguments -nostartfiles'' or
-nostdlib''. If those arguments are used, the constructor/destructor routines will not be executed (unless special measures are taken)."
the problem is that gcc/ld doesn't set the DT_INIT bit in the elf header when -nostdlib is used
see wiki
this is critical, without perl we can't even build half of sabotage
Making all in dist/threads-shared
make all PERL_CORE=1 LIBPERL_A=libperl.a LINKTYPE=dynamic
make[1]: Entering directory `/src/build/perl/perl-5.16.0/dist/threads-shared'
cp lib/threads/shared.pm ../../lib/threads/shared.pm
../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -typemap ../../lib/ExtUtils/typemap
cc -c -D_GNU_SOURCE -D_BSD_SOURCE -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -
Running Mkbootstrap for threads::shared ()
chmod 644 shared.bs
rm -f ../../lib/auto/threads/shared/shared.so
cc -shared -O2 shared.o -o ../../lib/auto/threads/shared/shared.so \
\
chmod 755 ../../lib/auto/threads/shared/shared.so
cp shared.bs ../../lib/auto/threads/shared/shared.bs
chmod 644 ../../lib/auto/threads/shared/shared.bs
make[1]: Leaving directory `/src/build/perl/perl-5.16.0/dist/threads-shared'
./perl -f -Ilib pod/buildtoc -q
make: *** [pod/perltoc.pod] Illegal instruction
DEBUGGING=-g or -Doptimize=-g = -g
Program received signal SIGILL, Illegal instruction.
0x00593c44 in PL_laststype ()
(gdb) bt
#0 0x00593c44 in PL_laststype ()
#1 0x00593c30 in PL_fold_locale ()
Backtrace stopped: frame did not save the PC
(gdb) b *0x00593c30
Breakpoint 3 at 0x593c30
(gdb) r
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /src/build/perl/perl-5.16.0/perl -f -Ilib pod/buildtoc -q
Program received signal SIGSEGV, Segmentation fault.
0x004ef46c in Perl_free_tmps ()
(gdb) bt
#0 0x004ef46c in Perl_free_tmps ()
#1 0x004b4f80 in Perl_pp_nextstate ()
#2 0x004b4694 in Perl_runops_standard ()
#3 0x00433250 in Perl_call_sv ()
#4 0x00433ae8 in Perl_call_list ()
#5 0x00416bcc in S_process_special_blocks ()
#6 0x0042d500 in Perl_newATTRSUB_flags ()
#7 0x0042db68 in Perl_newATTRSUB ()
#8 0x0042e0e4 in Perl_utilize ()
#9 0x00467134 in Perl_yyparse ()
#10 0x004f687c in S_doeval ()
#11 0x00505100 in Perl_pp_require ()
#12 0x004b4694 in Perl_runops_standard ()
#13 0x00433250 in Perl_call_sv ()
#14 0x00433ae8 in Perl_call_list ()
#15 0x00416bcc in S_process_special_blocks ()
#16 0x0042d500 in Perl_newATTRSUB_flags ()
#17 0x0042db68 in Perl_newATTRSUB ()
#18 0x0042e0e4 in Perl_utilize ()
#19 0x00467134 in Perl_yyparse ()
#20 0x00439298 in perl_parse ()
#21 0x00416088 in main ()
in https://github.com/rofl0r/sabotage/blob/master/utils/finish#L4, it is wrongly written.
proposed modification:
if [ ! "$H" -o ! "$R" -o ! "$K" ] ; then
if not, it is possibly necessary to use the real libnl instead of libnl-tiny
http://www.linuxfromscratch.org/blfs/view/cvs/basicnet/libnl.html
http://www.infradead.org/~tgr/libnl/
http://git.alpinelinux.org/cgit/aports/tree/main/wpa_supplicant/APKBUILD
additionally, it may make sense to add http://hostap.epitest.fi/hostapd/ package.
at the same point as in issue #58
Starting program: /src/build/perl/perl-5.16.0/perl -f -Ilib pod/buildtoc -q
Program received signal SIGSEGV, Segmentation fault.
0x00000030 in ?? ()
(gdb) backtrace
#0 0x00000030 in ?? ()
#1 0x76f279d8 in _init () at crt/arm/crtn.s:9
#2 0x76f5c980 in do_init_fini (p=0x2705f0) at src/ldso/dynlink.c:696
#3 0x76f5e234 in dlopen (file=0x201fb0 "lib/auto/Cwd/Cwd.so", mode=1) at src/ldso/dynlink.c:1093
#4 0x001d49e4 in XS_DynaLoader_dl_load_file (cv=0x2a5690) at DynaLoader.xs:193
the issue is caused by a textrel in musl's new arm init fini code:
readelf of Cwd.so
00000a08 00003003 R_ARM_REL32 00000000 __init_array_start
__init_array_start became a textrel because the symbol was not hidden.
http://archive.linuxfromscratch.org/lfs-museum/2.3.5/LFS-BOOK-2.3.5-HTML/x5285.html
http://www.linuxfromscratch.org/lfs/view/jh/chapter07/console.html
loadkeys de should be used to switch to de layout
an implicit function declaration is almost certain to run into runtime crashes, at least on x64 where sizeof(void*) != sizeof(int)
my idea is to put the flag into each stage0_ pkg, and those that get built before relocate_toolchain, which in turn should hardcode it into musl-gcc (aka /bin/gcc), so that all further pkgs will have it set automatically.
i expect an entire build using this flag to uncover quite some hidden bugs...
https://github.com/tinyalsa/tinyalsa
check if this can be used as an alsa-lib replacement
mirror.wzff.de has an ipv6 address but appears not to be listening for http on ipv6, only on ipv4, so I need to patch all the scripts to use wget -4 in order to eg get butch to download.
either add -Wl,-rpath-link=/lib or --copy-dt-needed-entries to specs file.
this https://github.com/rofl0r/sabotage/blob/master/pkg/xterm can be used to test if --copy-dt-needed-entries fixes the issue
see busybox commit d45efd3a9f6854ab662afe272aeae5779300b126
+config FEATURE_DEFAULT_PASSWD_ALGO
+ string "Default password encryption method (passwd -a, cryptpw -m parameter)"
+ default "des"
+ depends on PASSWD || CRYPTPW
+ help
+ Possible choices are "d[es]", "m[d5]", "s[ha256]" or "sha512".
+
imho sha512 should be used
this requires the KEEP/etc files to be updated as well
python thinks it is better to search in the dir its binary is in (it even resolves symlinks) instead of search in its prefix as it's supposed to.
basically what happens is
open("/opt/python/lib/python2.7/setuptools.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/setuptoolsmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/setuptools.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/setuptools.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/opt/python/lib/python2.7/plat-linux2/setuptools", 0x7fffcd02d560) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/plat-linux2/setuptools.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/plat-linux2/setuptoolsmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/plat-linux2/setuptools.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/plat-linux2/setuptools.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/opt/python/lib/python2.7/lib-tk/setuptools", 0x7fffcd02d560) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-tk/setuptools.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-tk/setuptoolsmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-tk/setuptools.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-tk/setuptools.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/opt/python/lib/python2.7/lib-dynload/setuptools", 0x7fffcd02d560) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-dynload/setuptools.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-dynload/setuptoolsmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-dynload/setuptools.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/lib-dynload/setuptools.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/opt/python/lib/python2.7/site-packages/setuptools", 0x7fffcd02d560) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/site-packages/setuptools.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/site-packages/setuptoolsmodule.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/site-packages/setuptools.py", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/opt/python/lib/python2.7/site-packages/setuptools.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
writev(2, [{"", 0}, {"from setuptools import setup\n", 29}], 2from setuptools import setup
writev(2, [{"", 0}, {"No module named setuptools", 26}], 2No module named setuptools) = 26
there's a harcoded PYTHONPATH that is passed during the build, maybe that messes up things (it's possible that an empty prefix breaks the logic that generates it):
gcc -c -fno-strict-aliasing -D_GNU_SOURCE -D_BSD_SOURCE -fPIC -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -DPy_BUILD_CORE -DPYTHONPATH='":plat-linux2:lib-tk:lib-old"' \
-DPREFIX='""' \
-DEXEC_PREFIX='""' \
-DVERSION='"2.7"' \
-DVPATH='""' \
-o Modules/getpath.o ./Modules/getpath.c
debug session:
./Python/import.c
static struct filedescr *
find_module(char *fullname, char *subname, PyObject *path, char *buf,
size_t buflen, FILE **p_fp, PyObject **p_loader)
{
b find_module
cond 1 fullname[0] == 's' && fullname[1] == 'e'
#1 0x00000000004e4d19 in _Py_DisplaySourceLine (f=<file at remote 0x7ffff7fd2270>, filename=0x7ffff7f252dc "../../pip/pip-1.3.1/setup.py",
lineno=6, indent=4) at Python/traceback.c:131
131 xfp = fopen(filename, "r" PY_STDIOTEXTMODE);
(gdb) p filename
$21 = 0x7ffff7f252dc "../../pip/pip-1.3.1/setup.py"
1301 path = PySys_GetObject("path");
PySys_GetObject (name=0x55f016 "path") at Python/sysmodule.c:52
52 PyThreadState *tstate = PyThreadState_GET();
(gdb) n
53 PyObject *sd = tstate->interp->sysdict;
(gdb)
54 if (sd == NULL)
(gdb)
56 return PyDict_GetItemString(sd, name);
./Python/pythonrun.c: interp->sysdict = PyModule_GetDict(sysmod);
./Python/sysmodule.c: sysdict = PyModule_GetDict(m);
void
PySys_SetPath(char *path)
#0 PySys_SetPath (
path=0x803de0 "/bin/..//opt/python/lib/python27.zip:/bin/..//opt/python/lib/python2.7/:/bin/..//opt/python/lib/python2.7/plat-linux2:/bin/..//opt/python/lib/python2.7/lib-tk:/bin/..//opt/python/lib/python2.7/lib-old"...) at Python/sysmodule.c:1552
#1 0x00000000004d86ae in Py_InitializeEx (install_sigs=1) at Python/pythonrun.c:230
#2 0x00000000004d8c93 in Py_Initialize () at Python/pythonrun.c:377
#3 0x0000000000415237 in Py_Main (argc=2, argv=0x7fffffffec78) at Modules/main.c:545
#4 0x0000000000414308 in main (argc=2, argv=0x7fffffffec78) at ./Modules/python.c:23
Breakpoint 2, Py_InitializeEx (install_sigs=1) at Python/pythonrun.c:230
230 PySys_SetPath(Py_GetPath());
Breakpoint 3, Py_GetPath () at ./Modules/getpath.c:691
691 if (!module_search_path)
(gdb) p module_search_path
$1 = 0x803de0 "/bin/..//opt/python/lib/python27.zip:/bin/..//opt/python/lib/python2.7/:/bin/..//opt/python/lib/python2.7/plat-linux2:/bin/..//opt/python/lib/python2.7/lib-tk:/bin/..//opt/python/lib/python2.7/lib-old"...
Breakpoint 5, calculate_path () at ./Modules/getpath.c:655
655 module_search_path = buf;
603 /* This is the only malloc call in this file */
604 buf = (char *)PyMem_Malloc(bufsz);
605
606 if (buf == NULL) {
607 /* We can't exit, so print a warning and limp along */
608 fprintf(stderr, "Not enough memory for dynamic PYTHONPATH.\n");
609 fprintf(stderr, "Using default static PYTHONPATH.\n");
610 module_search_path = PYTHONPATH;
611 }
612 else {
(gdb)
613 /* Run-time value of $PYTHONPATH goes first */
614 if (rtpypath) {
615 strcpy(buf, rtpypath);
616 strcat(buf, delimiter);
617 }
618 else
619 buf[0] = '\0';
620
621 /* Next is the default zip path */
622 strcat(buf, zip_path);
(gdb)
623 strcat(buf, delimiter);
624
625 /* Next goes merge of compile-time $PYTHONPATH with
626 * dynamically located prefix.
627 */
(gdb) p PYTHONPATH
$2 = ":plat-linux2:lib-tk:lib-old"
the ones from landley do it correctly.
the colors are broken: only green and violet tones can be seen, and the image is visible twice horizontally.
tests with a SDL port of tinygl, where only the code of the examples was changed to use SDL instead of X11, have shown that the bug is almost definitely in the X11 rendering code.
( https://github.com/kimperator/TinySDGL )
and eventually the manpages from linux man 2/3
This could be an upstream issue, or a config issue, not sure yet.
Noticed while trying to install musl-git that name resol
root:/src$ curl git.etalabs.net
curl: (6) Couldn't resolve host 'git.etalabs.net'
root:/src$ ping git.etalabs.net
ping: bad address 'git.etalabs.net'
Other addresses (eg www.etalabs.net) are fine, and it is fine from non Sabotage hosts. It is a CNAME, but other CNAMEs are fine. And its not a .cx thing either, so a bit mystified...
Its not just a busybox error, real wget gives
wget git.etalabs.net
--2013-07-24 08:24:31-- http://git.etalabs.net/
Resolving git.etalabs.net... failed: Non-recoverable error.
wget: unable to resolve host address `git.etalabs.net'
So it could well be a Musl upstream issue... havent got time to debug now...
any dll that is loaded through musl's dynlinker misses the debug infos in gdb.
this makes debugging shared stuff a major PITA.
however libc.so itself can be debugged.
root:/src$ cat /src/logs/build_git.log
GIT_VERSION = 1.7.6.5
* new build flags or prefix
CC daemon.o
* new link flags
CC abspath.o
CC advice.o
CC alias.o
CC alloc.o
CC archive.o
CC archive-tar.o
CC archive-zip.o
CC attr.o
CC base85.o
CC bisect.o
CC blob.o
CC branch.o
CC bundle.o
CC cache-tree.o
CC color.o
CC combine-diff.o
CC commit.o
CC config.o
CC connect.o
CC convert.o
CC copy.o
CC csum-file.o
CC ctype.o
CC date.o
CC decorate.o
CC diffcore-break.o
CC diffcore-delta.o
CC diffcore-order.o
CC diffcore-pickaxe.o
CC diffcore-rename.o
CC diff-delta.o
CC diff-lib.o
CC diff-no-index.o
CC diff.o
CC dir.o
CC editor.o
CC entry.o
CC environment.o
CC exec_cmd.o
CC fsck.o
CC graph.o
CC grep.o
CC hash.o
GEN common-cmds.h
CC help.o
CC hex.o
CC ident.o
CC levenshtein.o
CC list-objects.o
CC ll-merge.o
CC lockfile.o
CC log-tree.o
CC mailmap.o
CC match-trees.o
CC merge-file.o
CC merge-recursive.o
CC name-hash.o
CC notes.o
CC notes-cache.o
CC notes-merge.o
CC object.o
CC pack-check.o
CC pack-refs.o
CC pack-revindex.o
CC pack-write.o
CC pager.o
CC parse-options.o
CC patch-delta.o
CC patch-ids.o
CC path.o
CC pkt-line.o
CC preload-index.o
CC pretty.o
CC progress.o
CC quote.o
CC reachable.o
CC read-cache.o
CC reflog-walk.o
CC refs.o
CC remote.o
CC replace_object.o
CC rerere.o
CC resolve-undo.o
CC revision.o
CC run-command.o
CC server-info.o
CC setup.o
CC sha1-array.o
CC sha1-lookup.o
CC sha1_file.o
CC sha1_name.o
CC shallow.o
CC sideband.o
CC sigchain.o
CC strbuf.o
CC string-list.o
CC submodule.o
CC symlinks.o
CC tag.o
CC trace.o
CC transport.o
CC transport-helper.o
CC tree-diff.o
CC tree.o
CC tree-walk.o
CC unpack-trees.o
CC url.o
CC usage.o
CC userdiff.o
CC utf8.o
CC walker.o
CC wrapper.o
CC write_or_die.o
CC ws.o
CC wt-status.o
CC xdiff-interface.o
CC zlib.o
CC compat/strlcpy.o
CC compat/memmem.o
AR libgit.a
CC xdiff/xdiffi.o
CC xdiff/xprepare.o
CC xdiff/xutils.o
CC xdiff/xemit.o
CC xdiff/xmerge.o
CC xdiff/xpatience.o
AR xdiff/lib.a
LINK git-daemon
CC fast-import.o
LINK git-fast-import
CC imap-send.o
LINK git-imap-send
CC shell.o
LINK git-shell
CC show-index.o
LINK git-show-index
CC upload-pack.o
LINK git-upload-pack
CC http-backend.o
LINK git-http-backend
CC sh-i18n--envsubst.o
LINK git-sh-i18n--envsubst
CC http.o
CC http-walker.o
CC http-fetch.o
LINK git-http-fetch
/lib/libcurl.a(libcurl_la-ssluse.o): In function ossl_send': ssluse.c:(.text+0x73a): undefined reference to
SSL_write'
ssluse.c:(.text+0x78a): undefined reference to SSL_get_error' /lib/libcurl.a(libcurl_la-ssluse.o): In function
ossl_recv':
ssluse.c:(.text+0x88b): undefined reference to SSL_read' ssluse.c:(.text+0x8db): undefined reference to
SSL_get_error'
/lib/libcurl.a(libcurl_la-ssluse.o): In function servercert': ssluse.c:(.text+0xd74): undefined reference to
SSL_get_peer_certificate'
ssluse.c:(.text+0xe59): undefined reference to SSL_get_peer_cert_chain' ssluse.c:(.text+0x1f2d): undefined reference to
SSL_get_verify_result'
/lib/libcurl.a(libcurl_la-ssluse.o): In function ossl_connect_common': ssluse.c:(.text+0x26eb): undefined reference to
SSL_connect'
ssluse.c:(.text+0x2702): undefined reference to SSL_get_error' ssluse.c:(.text+0x2812): undefined reference to
SSL_get_current_cipher'
ssluse.c:(.text+0x281a): undefined reference to SSL_CIPHER_get_name' ssluse.c:(.text+0x28c9): undefined reference to
SSL_get_verify_result'
ssluse.c:(.text+0x29d5): undefined reference to SSLv23_client_method' ssluse.c:(.text+0x29f4): undefined reference to
SSL_CTX_free'
ssluse.c:(.text+0x29fc): undefined reference to SSL_CTX_new' ssluse.c:(.text+0x2a29): undefined reference to
SSL_CTX_ctrl'
ssluse.c:(.text+0x2a8b): undefined reference to SSL_CTX_ctrl' ssluse.c:(.text+0x2b05): undefined reference to
SSL_CTX_set_default_passwd_cb_userdata'
ssluse.c:(.text+0x2b16): undefined reference to SSL_CTX_set_default_passwd_cb' ssluse.c:(.text+0x2b99): undefined reference to
TLSv1_client_method'
ssluse.c:(.text+0x2bc7): undefined reference to SSL_get1_session' ssluse.c:(.text+0x2c9f): undefined reference to
SSLv2_client_method'
ssluse.c:(.text+0x2cc5): undefined reference to SSLv3_client_method' ssluse.c:(.text+0x2cfc): undefined reference to
SSL_CTX_set_cipher_list'
ssluse.c:(.text+0x2d3b): undefined reference to SSL_CTX_load_verify_locations' ssluse.c:(.text+0x2dd6): undefined reference to
SSL_CTX_callback_ctrl'
ssluse.c:(.text+0x2ea1): undefined reference to SSL_CTX_use_certificate' ssluse.c:(.text+0x2fb3): undefined reference to
SSL_CTX_use_certificate'
ssluse.c:(.text+0x2ff4): undefined reference to SSL_CTX_use_certificate_chain_file' ssluse.c:(.text+0x304e): undefined reference to
SSL_CTX_use_certificate_file'
ssluse.c:(.text+0x3085): undefined reference to SSL_CTX_ctrl' ssluse.c:(.text+0x30b8): undefined reference to
TLSv1_client_method'
ssluse.c:(.text+0x311d): undefined reference to SSL_CTX_get_cert_store' ssluse.c:(.text+0x31e9): undefined reference to
SSL_CTX_set_srp_username'
ssluse.c:(.text+0x3235): undefined reference to SSL_new' ssluse.c:(.text+0x3249): undefined reference to
SSL_get_certificate'
ssluse.c:(.text+0x326b): undefined reference to SSL_get_privatekey' ssluse.c:(.text+0x328a): undefined reference to
SSL_free'
ssluse.c:(.text+0x3294): undefined reference to SSL_CTX_check_private_key' ssluse.c:(.text+0x32e6): undefined reference to
SSL_CTX_use_PrivateKey_file'
ssluse.c:(.text+0x332e): undefined reference to SSL_SESSION_free' ssluse.c:(.text+0x3350): undefined reference to
SSL_CTX_get_cert_store'
ssluse.c:(.text+0x33ac): undefined reference to SSL_CTX_set_verify' ssluse.c:(.text+0x33ec): undefined reference to
SSL_free'
ssluse.c:(.text+0x3400): undefined reference to SSL_new' ssluse.c:(.text+0x3420): undefined reference to
SSL_set_connect_state'
ssluse.c:(.text+0x347a): undefined reference to SSL_set_session' ssluse.c:(.text+0x3573): undefined reference to
SSL_CTX_use_PrivateKey'
ssluse.c:(.text+0x35b2): undefined reference to SSL_CTX_use_PrivateKey' ssluse.c:(.text+0x35ff): undefined reference to
SSL_set_fd'
ssluse.c:(.text+0x362f): undefined reference to SSL_CTX_set_srp_password' ssluse.c:(.text+0x3669): undefined reference to
SSL_CTX_set_cipher_list'
ssluse.c:(.text+0x382e): undefined reference to SSL_ctrl' ssluse.c:(.text+0x386f): undefined reference to
SSL_CTX_check_private_key'
ssluse.c:(.text+0x38b6): undefined reference to SSL_CTX_ctrl' ssluse.c:(.text+0x38dc): undefined reference to
SSL_CTX_add_client_CA'
/lib/libcurl.a(libcurl_la-ssluse.o): In function Curl_ossl_init': ssluse.c:(.text+0x39ba): undefined reference to
SSL_load_error_strings'
ssluse.c:(.text+0x39bf): undefined reference to SSL_library_init' /lib/libcurl.a(libcurl_la-ssluse.o): In function
Curl_ossl_check_cxn':
ssluse.c:(.text+0x3a26): undefined reference to SSL_peek' /lib/libcurl.a(libcurl_la-ssluse.o): In function
Curl_ossl_close':
ssluse.c:(.text+0x3c70): undefined reference to SSL_shutdown' ssluse.c:(.text+0x3c7d): undefined reference to
SSL_set_connect_state'
ssluse.c:(.text+0x3c8a): undefined reference to SSL_free' ssluse.c:(.text+0x3cb0): undefined reference to
SSL_CTX_free'
/lib/libcurl.a(libcurl_la-ssluse.o): In function Curl_ossl_shutdown': ssluse.c:(.text+0x3d59): undefined reference to
SSL_read'
ssluse.c:(.text+0x3d67): undefined reference to SSL_get_error' ssluse.c:(.text+0x3da9): undefined reference to
SSL_free'
ssluse.c:(.text+0x3dfe): undefined reference to SSL_get_shutdown' ssluse.c:(.text+0x3f0e): undefined reference to
SSL_shutdown'
/lib/libcurl.a(libcurl_la-ssluse.o): In function Curl_ossl_data_pending': ssluse.c:(.text+0x3fbb): undefined reference to
SSL_pending'
/lib/libcurl.a(libcurl_la-ssluse.o): In function Curl_ossl_session_free': ssluse.c:(.text+0x3f31): undefined reference to
SSL_SESSION_free'
collect2: ld returned 1 exit status
make: *** [git-http-fetch] Error 1
PS. is there a site similar to the AUR to share build scripts or do each person need an individual github branch? DS.
for example if gcc473 was rebuilt, the filelist would contain /bin/gcc.
removing the symlink before the build will make gcc unavailable.
even if the actual gcc was being overridden by e.g. relocate.sh /opt/gcc454
"
arm: add __aeabi_atexit()
arm eabi requires this symbol for C++ dtors.
usually it is provided by libstdc++, but when a C++ program
doesn't use the std lib (free-standing), the libc has to provide
it.
this was encountered while building transmission, which
depends on such a C++ library (libutp).
example case: http://sprunge.us/UEBc
this function is nearly identical to __cxa_atexit, but it has the
order of argumens swapped for "performance reasons".
see page 25 of
http://infocenter.arm.com/help/topic/com.arm.doc.ihi0043d/IHI0043D_rtabi.pdf
there are other aeabi specific C++ support functions missing, but
it is not clear yet that GCC makes use of them so we omit them for
the moment.
"
I have to add "--host=i686-pc-linux" in pkg/gmp to prevent it from misdetect as AMD64.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.