[link] apr_atomic.obj : fatal error LNK1112: module machine type 'x86' conflicts with target machine type 'x64'

15 views
Skip to first unread message

Matthias Ludwig

unread,
Jan 6, 2021, 5:48:45 PM1/6/21
to TortoiseSVN-dev
I'm trying to compile the trunk version of TortoiseSvn in x64 mode.
I followed the build instructions.

I'm running on a fresh checkout:
nant x64 setup

in the following nested build the linking fails: ext\build\apr.build build

[link] Linking 69 files.
[link] C:\tortoisesvn\ext\apr\debug_x64\apr_atomic.obj : fatal error LNK1112: module machine type 'x86' conflicts with target machine type 'x64'

In the build instructions I found the following note:
> Note: if you set the Visual Studio tools for win32, you can not build the 64-bit version of TortoiseSVN. Trying to use the 'x64' nant target will result in a build error. To build the 64-bit version, you have to call the 64-bit Visual Studio tools. And with the 64-bit tools, you can not build the 32-bit version of TortoiseSVN. Basically: you need to set up the corresponding Visual Studio tools for the build.

The win32 build (nant setup) is compiling and linking with no errors.

What are these Visual Studio tools?
How can I change them?

Could anyone give me a hint where I can search?
What I'm doing wrong? Any help appriciated. Thank you.

Matthias

unread,
Jan 7, 2021, 6:21:24 AM1/7/21
to TortoiseSVN-dev
Solved it.

For those who might have the same problem:
I used the:
- "x64 Native command prompt" instead of the "Tools/Command Line/Developers Command prompt" in Visual Studio
- cleaned everything manuelly, including ignored files
Reply all
Reply to author
Forward
0 new messages