.la
files referencing a lib32
directory.pkgconfig
and PKG_CONFIG_PATH
..la
files. Longer term n32 stuff should go into lib32
to be correct anyway.pthread.h
was one the sparked the discussion).mkheaders
binary found in the $ROOT/libexec/gcc/mips-sgi-irix-6.5/X.X.X/install-tools
directory.illegal instruction
instruction not supported
.-mips4
in CFLAGS
/LDFLAGS
.thread_local
and default output isa
.LTO
and GOMP
below)-mips3
)gcc
and binutils
releases now built with -O2
gcc
releases have link time optimisation availablegcc
releases have GNU Open MP enabled (gomp)ld
crashes-g
debug versions of binutils.math
conformance issues for gcc >4.8.2 (I hope...)binutils
builds are made with -g
now in the hope to get better data for crash diagnosis.rld_map
inside the .data
section is logged rather than a hard crash-g
(space saving)/usr/didbs/0_1_5_n32_mips4_mp/gbs4_2/libexec/gcc/mips-sgi-irix6.5/4.8.2/install-tools/mkheaders
/usr/didbs/0_1_5_n32_mips4_mp/gbs5_0/libexec/gcc/mips-sgi-irix6.5/5.4.0/install-tools/mkheaders
/usr/didbs/0_1_5_n32_mips4_mp/gbs8_1/libexec/gcc/mips-sgi-irix6.5/8.2.0/install-tools/mkheaders
/usr/didbs/0_1_5_n32_mips4_mp/gbs9_1/libexec/gcc/mips-sgi-irix6.5/9.2.0/install-tools/mkheaders
rpm
, but punted to a later release./usr/didbs/0_1_6_n32_mips3_mp/gbs4_2/libexec/gcc/mips-sgi-irix6.5/4.8.2/install-tools/mkheaders
/usr/didbs/0_1_6_n32_mips3_mp/gbs5_0/libexec/gcc/mips-sgi-irix6.5/5.4.0/install-tools/mkheaders
/usr/didbs/0_1_6_n32_mips3_mp/gbs8_1/libexec/gcc/mips-sgi-irix6.5/8.2.0/install-tools/mkheaders
/usr/didbs/0_1_6_n32_mips3_mp/gbs9_1/libexec/gcc/mips-sgi-irix6.5/9.2.0/install-tools/mkheaders
/usr/didbs/current
to your extracted release):PATH=/usr/didbs/current/gbs9_1/bin:/usr/didbs/current/bin:$PATH
LD_LIBRARYN32_PATH=/usr/didbs/current/gbs9_1/lib32:/usr/didbs/current/lib32:$LD_LIBRARYN32_PATH
PKG_CONFIG_PATH=/usr/didbs/current/gbs9_1/lib32/pkgconfig:/usr/didbs/current/lib32/pkgconfig:$PKG_CONFIG_PATH
export PATH LD_LIBRARYN32_PATH PKG_CONFIG_PATH
echo setup sgidev network build env
echo ----------------------------
hostname
# Vars
## default irix path
IRIX_PATH=/usr/local/bin:/usr/local/sbin:/usr/sbin:/usr/bsd:/sbin:/usr/bin:/etc:/usr/etc:/usr/bin/X11
IRIX_LDPATH=/usr/lib32:/usr/lib32/internal:/lib32
#------ didbs --------
# didbs gcc version
DGCC=gbs9_1
DIDBSC="/usr/didbs/current"
DIDBSPATH="$DIDBSC/$DGCC/bin:DIDBSC/bin"
#----- ixp -----
IXPPATH=/usr/ixp/bin:/usr/ixp/sbin
#---- irixports ----
IPATH=/usr/people/$USER/.local/bin
#---- optlocal ----
OPTLOCALPATH=/opt/local/bin:/opt/local/sbin:/opt/local/binutils/bin:/opt/local/binutils-dev/bin:/opt/local/python35/bin:/opt/local/gcc-8.2.0/bin
OPTLOCALPYTHONPATH=/opt/local/python35/bin
#---- nekoware ----
NEKOPATH=/usr/nekoware/bin:/usr/nekoware/sbin
#---------------
stty intr '^C' echoe
export TERM=xterm
export PS1="\u@\h \[\033[32m\]\w\[\033[33m\]\\[\033[00m\] $ "
# LDs
# for irixportks mksh to work:
#export LD_LIBRARY_PATH="$DIDBSC/lib"
export LD_LIBRARYN32_PATH="$DIDBSC/lib32:$DIDBSC/$DGCC/lib32::$IRIX_LDPATH"
export PKG_CONFIG_PATH="$DIDBSC/$DGCC/lib32/pkgconfig:$DIDBSC/lib32/pkgconfig:$PKG_CONFIG_PATH"
export CC="$DIDBSC/$DGCC/bin/gcc"
export CXX="$DIDBSC/$DGCC/bin/g++"
export XAUTHORITY=~/.Xauthority
unset PATH
export PATH="$IPATH:$DIDBSPATH:$OPTLOCALPYTHONPATH:$NEKOPATH:$IRIX_PATH"
export PYTHONPATH=/opt/local/python35/lib/python3.5/site-packages
echo " "
echo " "
--usage
and --help
work) - here's a little guide to hot-patching using didbs itself:rpm
and the libs installed in the right directories (so they can be run from '/usr/didbs/current/bin/rpm`).[dan@leafy didbs.git]$ rpm --usage
Usage: rpm [-afgplsiv?] [-a|--all] [-f|--file] [-g|--group] [-p|--package]
[--pkgid] [--hdrid] [--triggeredby] [--whatconflicts]
[--whatrequires] [--whatobsoletes] [--whatprovides]
[--whatrecommends] [--whatsuggests] [--whatsupplements]
[--whatenhances] [--nomanifest] [-c|--configfiles] [-d|--docfiles]
[-L|--licensefiles] [-A|--artifactfiles] [--noghost] [--noconfig]
[--noartifact] [--dump] [-l|--list] [--queryformat=QUERYFORMAT]
[-s|--state] [--nofiledigest] [--nofiles] [--nodeps] [--noscript]
[--allfiles] [--allmatches] [--badreloc] [-e|--erase=<package>+]
[--excludedocs] [--excludepath=<path>] [--force]
[-F|--freshen=<packagefile>+] [-h|--hash] [--ignorearch]
[--ignoreos] [--ignoresize] [--noverify] [-i|--install] [--justdb]
[--nodeps] [--nofiledigest] [--nocontexts] [--nocaps] [--noorder]
[--noscripts] [--notriggers] [--oldpackage] [--percent]
[--prefix=<dir>] [--relocate=<old>=<new>] [--replacefiles]
[--replacepkgs] [--test] [-U|--upgrade=<packagefile>+]
[--reinstall=<packagefile>+] [-D|--define='MACRO EXPR']
[--undefine=MACRO] [-E|--eval='EXPR'] [--target=CPU-VENDOR-OS]
[--macros=<FILE:...>] [--load=<FILE>] [--noplugins] [--nodigest]
[--nosignature] [--rcfile=<FILE:...>] [-r|--root=ROOT]
[--dbpath=DIRECTORY] [--querytags] [--showrc] [--quiet]
[-v|--verbose] [--version] [-?|--help] [--usage]
[dan@leafy didbs.git]$ which rpm
/usr/didbs/current/bin/rpm
Here's a modular bash_profile that seems to work for me:
$ git status
530715:git: rld: Fatal Error: attempted access to unresolvable symbol in git: setenv
$ ldd $(which git)
libz.so => /usr/didbs/current/lib32/libz.so
libm.so => /usr/lib32/libm.so
libc.so.1 => /usr/lib32/libc.so.1
libgcc_s.so.1 => /usr/didbs/current/gbs9_1/lib32/libgcc_s.so.1
git
inside didbs:[dan@leafy ~]$ which git
/usr/didbs/current/bin/git
[dan@leafy ~]$ ldd `which git`
libz.so.1.2.11 => /usr/didbs/current/lib32/libz.so.1.2.11
libiconv.so.2 => /usr/didbs/current/lib32/libiconv.so.2
libgen.so => /usr/lib32/libgen.so
libintl.so.8 => /usr/didbs/current/lib32/libintl.so.8
libcharset.so.1 => /usr/didbs/0_1_6_n32_mips3_gcc/lib32/libcharset.so.1
libm.so => /usr/lib32/libm.so
libpthread.so => /usr/lib32/libpthread.so
libc.so.1 => /usr/lib32/libc.so.1
libgcc_s.so.1 => /usr/didbs/current/gbs9_1/lib32/libgcc_s.so.1
[dan@leafy didbs]$ ldd `which git`
libpthread.so => /usr/lib32/libpthread.so
libz.so.1 => /usr/didbs/0_1_6_n32_mips3_mp/lib32/libz.so.1
libiconv.so.3 => /usr/didbs/0_1_6_n32_mips3_mp/lib32/libiconv.so.3
libgen.so => /usr/lib32/libgen.so
libintl.so.9 => /usr/didbs/0_1_6_n32_mips3_mp/lib32/libintl.so.9
libc.so.1 => /usr/lib32/libc.so.1
Is this the 'git' from inside the didbs release - or you are building git in Irixports?
I ask as I see a bunch more things linked into thegit
inside didbs:
From the "gcc" release git:
From the "mipspro" release git:Code:[dan@leafy ~]$ which git /usr/didbs/current/bin/git [dan@leafy ~]$ ldd `which git` libz.so.1.2.11 => /usr/didbs/current/lib32/libz.so.1.2.11 libiconv.so.2 => /usr/didbs/current/lib32/libiconv.so.2 libgen.so => /usr/lib32/libgen.so libintl.so.8 => /usr/didbs/current/lib32/libintl.so.8 libcharset.so.1 => /usr/didbs/0_1_6_n32_mips3_gcc/lib32/libcharset.so.1 libm.so => /usr/lib32/libm.so libpthread.so => /usr/lib32/libpthread.so libc.so.1 => /usr/lib32/libc.so.1 libgcc_s.so.1 => /usr/didbs/current/gbs9_1/lib32/libgcc_s.so.1
Code:[dan@leafy didbs]$ ldd `which git` libpthread.so => /usr/lib32/libpthread.so libz.so.1 => /usr/didbs/0_1_6_n32_mips3_mp/lib32/libz.so.1 libiconv.so.3 => /usr/didbs/0_1_6_n32_mips3_mp/lib32/libiconv.so.3 libgen.so => /usr/lib32/libgen.so libintl.so.9 => /usr/didbs/0_1_6_n32_mips3_mp/lib32/libintl.so.9 libc.so.1 => /usr/lib32/libc.so.1
rpm
included here assumes a "prefix" of the /usr/didbs/XX-XX
directory - which is not what you want. Use ~/.rpmmacros
or edit the $DIDBS_ROOT/lib/rpm/macros
file and override this. Once done, you'll want to rpmdb --init
a new database under that root.bin
and lib32
directories. No more additional path acrobatics/usr/didbs/0_1_7_n32_mips3_gcc/libexec/gcc/mips-sgi-irix6.5/9.2.0/install-tools/mkheaders
/usr/didbs/current
to your extracted release):PATH=/usr/didbs/current/bin:$PATH
LD_LIBRARYN32_PATH=/usr/didbs/current/lib32:$LD_LIBRARYN32_PATH
PKG_CONFIG_PATH=/usr/didbs/current/lib32/pkgconfig:$PKG_CONFIG_PATH
export PATH LD_LIBRARYN32_PATH PKG_CONFIG_PATH