Failed to inject dll: No such file or directory error

301 views
Skip to first unread message

Shreyas Balakrishna

unread,
Nov 3, 2013, 1:56:12 AM11/3/13
to tup-...@googlegroups.com
So I am a complete tup n00b, forgive me if I am asking a stupid question.

I am running a very basic tupfile on a single cpp file like so -

[ tup ] [0.001s] Scanning filesystem...
[ tup ] [0.008s] Reading in new environment variables...
[ tup ] [0.009s] No Tupfiles to parse.
[ tup ] [0.010s] No files to delete.
[ tup ] [0.010s] Executing Commands...
 [ ]   0%tup error: failed to inject dll: No such file or directory
 *** Command ID=69 failed: g++ -Wall -Wextra main.cpp -o main.o
 [ ]   0%
 *** tup: 1 job failed.

The tupfile contains a single rule -
: main.cpp |> g++ -Wall -Wextra main.cpp -o main.o |> main.o

Any one know what the error above means? I am running on Windows 8.1 x64 and the latest version of tup (v0.7-19-ge4e6e20).

Thanks for your help!

Mike Shal

unread,
Nov 5, 2013, 12:57:10 PM11/5/13
to tup-...@googlegroups.com
Hi Shreyas,

No worries on being a n00b - it is a good question to ask :). I do not have a Windows 8.1 machine (only 7), so I can't try this out myself. Can you check if your g++ binary is 64-bit or 32-bit? Tup currently has a limitation on Windows of only being able to run 32-bit binaries. It's on my (unfortunately very long) list of things to fix. If it's a 32-bit binary, I suspect it's because of some difference between Windows 7 & 8.1, in which case I will probably have to buy an 8.1 license and set up a new VM.

Thanks,
-Mike

thegreendroid

unread,
Nov 6, 2013, 8:38:23 PM11/6/13
to tup-...@googlegroups.com
Hey Mike,

I am pretty sure I am using a 32-bit g++ binary.

So it must be something to do with Windows 7 and 8.1 like you said. I'll test it out the same configuration in a Windows 7 x64 environment and let you know.

Thanks!

thegreendroid

unread,
Nov 17, 2013, 2:22:46 AM11/17/13
to tup-...@googlegroups.com
Sorry about the late response and it turns out I am using the 32-bit version of G++.

Any other ideas?

Mike Shal

unread,
Nov 19, 2013, 1:39:20 PM11/19/13
to tup-...@googlegroups.com
On Sun, Nov 17, 2013 at 2:22 AM, thegreendroid <shreyas...@gmail.com> wrote:
Sorry about the late response and it turns out I am using the 32-bit version of G++.

Any other ideas?

I'm not sure - I'll have to get a Windows 8.1 license and try to reproduce it. For now I've filed an issue: https://github.com/gittup/tup/issues/147

Thanks,
-Mike

Matthew Smit

unread,
Dec 30, 2013, 11:10:03 AM12/30/13
to tup-...@googlegroups.com
I get the same error, I can compile my codebase (~800 files) fine with tdm-gcc-64, which has a x86 g++, it throws the error when I try to use cygwin-64 (presumably it has a x64 gcc).
Also Windows 8.1 x64

Wesley Robb

unread,
Jun 26, 2014, 11:33:27 AM6/26/14
to tup-...@googlegroups.com
Hey guys,

I'm having the same issues with Win7 64bit while performing 32bit builds. I'm using tup version v0.7.2-12-ga582fee. Is there any plan to resolve this issue?

Evgenii

unread,
Jun 30, 2014, 10:19:29 PM6/30/14
to tup-...@googlegroups.com
I get the same error on Windows 7 64-bit (virtual machine), when running Python

Mike Shal

unread,
Jul 25, 2014, 10:38:15 PM7/25/14
to tup-...@googlegroups.com
On Thu, Jun 26, 2014 at 11:33 AM, Wesley Robb <wesr...@gmail.com> wrote:
Hey guys,

I'm having the same issues with Win7 64bit while performing 32bit builds. I'm using tup version v0.7.2-12-ga582fee. Is there any plan to resolve this issue?


 
I tried to look into this a while ago, but I don't really have the expertise to know how to solve it myself. Someone claimed to have figured it out a while back, but I haven't heard back from him regarding getting it in the master repo. It might just be a matter of digging through blogs & articles to figure out how 32+64bit DLL injection is done.

-Mike

karl.zi...@utas.utc.com

unread,
Jul 31, 2014, 4:22:22 PM7/31/14
to tup-...@googlegroups.com
Just a thought -- if the DLL injection is failing in a command that does a static link (main.cpp => main.o), then it seems likely to me that the injection is intended for the g++ executable itself.  g++ is dynamically linked to the libraries _it_ needs -- perhaps one of _those_ is missing?
 
That would make this not a tup issue at all, but rather an issue with your g++ installation.
Reply all
Reply to author
Forward
0 new messages