-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
wget with DCE? #111
Comments
I actually got past the problem with the stack trace above. I just set up the project within Visual Studio and the program doesn't crash at CalcDepth anymore (not exactly sure why). Failing statement
Corresponding stack trace
A quick google search for glibc-2.23 source code shows the following snippet in time/mktime.c
|
It turns out my libns3-dce.so at /usr/local/lib/ was an older version, and for some reason it was calling My problem now is that I don't understand why the build is generating a dynamically linked libc-ns3.so, which I need to copy to /usr/local/lib/ (since that file now contains a symbol to a missing system call, which I have added to libc-ns3.h). This is an issue because that library being dynamically linked breaks the execution of the simulation. |
I avoid putting any DCE libraries into system paths. They install to $BAKE_HOME_DIR/build/lib, so I put that on my LD_LIBRARY_PATH; from bake top-level-directory, I do:
In your case, if you also have potential conflicts in /usr/local/lib, you may want to switch the order. |
When I use DCE, I set these variables:
|
Thank you for the help! My main problem was that the libc-ns3 shared library was being dynamically linked, requiring libdl.so.2 and libc.so.6. When DCE attempted to import the dependencies for that library, it would crash at ElfCache::Add(), since it wasn't expecting real shared libraries. And after adding a few missing system calls to libc-ns3.h, I successfully ran wget with DCE! |
Let me know if you would like me to do a pull request for the changes in libc-ns3.h. Here you can find all changes. Give me a heads up, if you see something there that will make the project better for waf. |
Description of the problem
I was trying to run wget with DCE. To do that, I have downloaded the source and added the necessary flags. I have also modified the dce-emu-ping script to use instead wget. My problem is when I run that script, it complains about a missing 0002thread.so.2, which I suspect was created during
waf --configure ...
being renamed from libpthread.so.2. I happen to fix this issue by copying 0002thread.so.2 from ./elf-cache/0/ to ./build/lib/. This was also the case for 0009rypto.so.1.0.0.Now, the
./waf --run dce-emu-wget
fails at ./model/elf-ldd.cc:231, because the program is trying to access m_depth, but it segfaults, probably because SharedLibrary is null. Any ideas as to why this is happening/pointers to solve this problem?Here are the values of a few variables I thought relevant:
Dependencies of ./build/lib/libcrypto.so.1.0.0
Stack trace
Output of ./waf configure
Steps to reproduce
I can provide more information if necessary (e.g., which wget I am using, my steps installing it, etc).
Other questions
./waf configure && ./waf build
,./waf run
fails because it complains about missing so dependencies libraries. By callingldd ./build/lib/libc-ns3.so
(for example) I notice that it wasn't statically linked. To fix this problem, I have to copy a statically linked version from ./elf-cache/0/ to ./build/lib/ before trying to run anything. Does anyone have any idea why this is?I really appreciate all the help and any pointers you can provide!
The text was updated successfully, but these errors were encountered: