Comments (14)
This means a buggy version of lld.
You need to remove it and then fdpp
will use ld instead.
You can as well report that upstream,
asking them to update.
from fdpp.
Thanks!
from fdpp.
Hi @stsp, I'm on Debian stable - Debian 11.6 - and I'm trying to find a way to make fdpp use a recent lld that disturbs the system as least as possible... in my Debian box I can install lld-13 by just doing "apt-get install lld-13", but I'm not being able an easy way to make lld-13 the default. If I do this - note the step in which a line is changed by hand - then fdpp builds fine:
rm -Rfv /tmp/fdpp/
cd /tmp/
git clone https://github.com/dosemu2/fdpp.git
cd /tmp/fdpp/
./configure
#
# (find-fline "/tmp/fdpp/fdpp/clang.mak")
# Now change the line 5 in /tmp/fdpp/fdpp/clang.mak from:
# LLD = $(shell which ld.lld)
# to:
# LLD = $(shell which ld.lld-13)
#
make
I couldn't find a way to change the value of LDD by calling configure or make with different command-line parameters, though... am I missing something obvious? Would it be worthwhile to change fdpp a bit to make it easy to select which ld.lld to use?
Thanks in advance!
from fdpp.
Try make CROSS_LD=ld.lld-13
from fdpp.
I also added a change to allow
overriding via env vars, so now
this should also work:
CROSS_LD=ld.lld-13 make
from fdpp.
Thanks!!! =)
My build script now is essentially this,
mkdir ~/usrc/
rm -Rfv ~/usrc/fdpp/
cd ~/usrc/
git clone https://github.com/dosemu2/fdpp.git
cd ~/usrc/fdpp/
export CROSS_LD=ld.lld-13
./configure
make
make deb
The first "make" runs perfectly, but the "make deb" still uses /usr/bin/ld.lld, and fails. Would you like to apply similar fixes to other makefiles and their includes? Thanks in advance! =) =) =)
from fdpp.
There are no includes, so I think
debhelperes reset the environment
perhaps.
Try adding your
export CROSS_LD=ld.lld-13
directly into debian/rules
, right after
#!/usr/bin/make -f
line.
from fdpp.
Works!!! Many thanks! =)
I had a few problems compiling the debs for dosemu2 and comcom2... but tomorrow I will try some more and I'll report the problems that I can't fix in the dosemu2/comcom2 pages!
from fdpp.
Just wondering, why would you do
make
make deb
These are either-or.
You don't need make
before make deb
.
from fdpp.
I had a few problems compiling the debs for dosemu2 and comcom2...
comcom32 may be a PITA to
build. Here:
https://github.com/dosemu2/dosemu2/wiki/Building-packages-for-Debian
we describe the trick to simplify
the build (there is no build at all
under that scenario).
I am slowly moving to the 64bit
port of comcom32, but this appears
hellish amount of work (needs to
write tool-chain first).
from fdpp.
Hi! The build instructions in
https://github.com/dosemu2/dosemu2/wiki/Building-packages-for-Debian
worked here (Debian 11), modulo one change and one bug. To make fdpp use ld.ldd-13 I had to do this,
rm -Rfv ~/usrc/fdpp/
mkdir ~/usrc/fdpp/
cd ~/usrc/fdpp/
git clone https://github.com/dosemu2/fdpp.git .
mk-build-deps --install --root-cmd sudo --remove
cd ~/usrc/fdpp/fdpp/
patch clang.mak <<'%%%'
5c5
< LLD ?= $(shell which ld.lld)
---
> LLD ?= $(shell which ld.lld-13)
%%%
cd ~/usrc/fdpp/
make deb
and then the .debs for fdpp, comcom2, and dosemu2, were all built correctly, except for one thing: when I run "dosemu" I get this error:
/tmp(edrx:sc)# dosemu
ERROR: libfdpp.so: cannot open shared object file: No such file or directory
ERROR: can't load fdpp
ERROR: userspace pings are disabled.
To enable them, do as root:
echo 0 65535 > /proc/sys/net/ipv4/ping_group_range
ERROR: Bootable drive not found, exiting
/tmp(edrx:sc)# ls -lAF /usr/lib/fdpp/
total 976
-rw-r--r-- 1 root root 998584 Jan 17 2022 libfdpp.so
/tmp(edrx:sc)#
and I haven't found a fix for it yet... =(
from fdpp.
readelf -d /usr/lib/dosemu/libplugin_fdpp.so |grep RUNPATH
This will show where does it
look for libfdpp.so.
from fdpp.
"readelf -d /usr/lib/dosemu/libplugin_fdpp.so | grep RUNPATH" says this,
0x000000000000001d (RUNPATH) Library runpath: [/usr/lib/fdpp]
and I also ran this to check if the output of the "ldd"s would have a "not found" at some point...
for i in /usr/lib/dosemu/*.so \
/usr/lib/fdpp/*.so; do
echo $i
ldd $i
done > /tmp/o
grep found /tmp/o
There are no "not found"s there, all files link only to things that exist. If you need to check it, I uploaded my file /tmp/o to: https://0x0.st/ohmO.txt
from fdpp.
I suspect you have another libplugin_fdpp.so,
maybe in /usr/local/lib.
I suspect you didnt pass prefix in your deb
rules, and by default /usr/local is used.
If not - please use strace to find out where
does it look for libs.
from fdpp.
Related Issues (20)
- Struct packing fails with clang 16 HOT 8
- crash on redundant conversion
- Some FCB tests are now failing HOT 2
- Please relicense fdpp/smalloc.h HOT 8
- DOSLFN not working with FDPP HOT 5
- Windows' WinFile is setting the time in the future HOT 56
- Don't seem to be able to compile (maybe toolchain breakage) HOT 11
- unaligned reference UB
- evaluate gcc porting
- Building FDPP on Aarch64 HOT 16
- fdpp install doesn't produce fdppkrnl.elf HOT 3
- Error posted about redundant conversion HOT 5
- Build fails with `kernel.asm:110: error: ELF format does not support segment base references` and subsequent errors. HOT 28
- ELF format does not support segment base references HOT 2
- tests are failing again HOT 8
- prehistorik2 doesn't work HOT 5
- Exploring hard disk size limits HOT 14
- NASM-SEGELF Problem HOT 3
- thunk_gen: extend __CNV_PTR_VOID handling
- just run make? HOT 25
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fdpp.