Looking at this again, the error does arise due to the order of
linkage, but that is symptomatic.
The base problem is that later gcc linkers employ a far stricter
criteria as to when symbols are available.
The 'DSO missing from the command line'
message will be displayed when the linker does not find the
required symbol with it's normal search, but the symbol is available
in one of the dependencies of a directly specified dynamic library.
ie.
There is an implicit linkage to a 3rd library but the makefile line
does not have an explicit linkage to it specified.
In the past the linker considered symbols in dependencies of
specified languages to be available, so this worked fine.
Try building by exporting backwardly compatible linker switches such
as:
export LDFLAGS="-Wl,--copy-dt-needed-entries" ./configure
&& make -j$(nproc)
and it should work.
I will look at adding explicit linkage to libatomic in due course,
when I can manage to replicate this error.
Ah, so it is a DSO error, not that the lib is missing.
I have found various DSO errors using the latest gcc tools, not
this one thus far.
It has something to do with the order of compilation and
linkage, I had to add a specific -lzmq AFAIR to a submakefile
which functioned exactly as intended with an earlier version of
gcc.
What version of gcc is in the Raspian distro? I will try doing
some tests to replicate.
On 6/27/2019 10:36 PM, mung kie
wrote:
Sorry to be vapid and brief Schooner, but you get
what you pay for with open sores.
You are probably right as this stuff often gets pain ted
into a corner case, and ARM without any RT. Basically this
was from the initial build before any RT kernels are
investigated.
We cannot use git as there is some sort of problem with
secure projects and Federal Acquisitions Regulations
Technology and I just added what I was allowed.
I have checked the log and am worried I could end up
like chelsea manning if I put too much here.
I have attached logs but hacked/edited out some of the
logs as I think they reference secure stuff, and also the
relevant part of the compile script.
The relevant error is
Linking rtapi_msgd
/usr/bin/ld:
objects/rtapi/rtapi_msgd.o: undefined reference to
symbol '__atomic_fetch_add_8@@LIBATOMIC_1.0'
/usr/bin/ld:
//usr/lib/arm-linux-gnueabihf/libatomic.so.1:
error adding symbols: DSO missing from command
line
collect2: error: ld
returned 1 exit status
make: ***
[rtapi/Submakefile:381: ../libexec/rtapi_msgd]
Error 1
Adding -libatomic to lines of submakefiles as originally
stated fixes the build, but not sure how one would add
that to autoconf.
On Thursday, June 27, 2019 at 5:53:22 PM UTC+1, Schooner
wrote:
If you explain
properly what you are talking about, something might
get done.
Machinekit builds fine with Buster and sid, so you are
in some sort of corner case build,
for specific hardware, on a distro we do not support.
On 27/06/19 17:11, mung kie wrote:
No, I think the idea was to inform machinekit
users of a possible problem with the autoconf
settings and details of the changes required to
get machinekit to build from the git repo.
Raspbian is a testbench for compiling ARM
code for a number of test SOC and SBC.
I probably should not have mentioned it
especially after the Iran/China fiasco.
On Thursday, June 27, 2019 at 7:01:44 AM UTC+1,
Timothy March wrote:
Are you thinking
Rpi 4 buster ?
--
website: http://www.machinekit.io
blog: http://blog.machinekit.io
github: https://github.com/machinekit
---
You received this message because you are subscribed
to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving
emails from it, send an email to machi...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
To view this discussion on the web visit https://groups.google.com/d/msgid/machinekit/83d783ca-5077-4c24-81d2-a460e908fed4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io
github: https://github.com/machinekit
---
You received this message because you are subscribed to the
Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from
it, send an email to [email protected].
Visit this group at https://groups.google.com/group/machinekit.
To view this discussion on the web visit https://groups.google.com/d/msgid/machinekit/f749f9ed-20ff-4153-9ac4-4e457bc4a15f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
Visit this group at https://groups.google.com/group/machinekit.
To view this discussion on the web visit https://groups.google.com/d/msgid/machinekit/5D15D46B.3000109%40gmail.com.
For more options, visit https://groups.google.com/d/optout.
|