Bug 1907 - Mono doesn't like having different build directories linking to the same source
Summary: Mono doesn't like having different build directories linking to the same source
Alias: None
Product: Runtime
Classification: Mono
Component: packaging ()
Version: unspecified
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: ---
Assignee: Bugzilla
Depends on:
Reported: 2011-11-06 20:23 UTC by C.W. Betts
Modified: 2013-09-09 11:49 UTC (History)
2 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on GitHub or Developer Community with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description C.W. Betts 2011-11-06 20:23:56 UTC
I noticed that when compiling Mono from a different building directory, that it would still build the dlls to the source directory. This leads me to wonder what would happen if you had different building directories (say, one for ia32 and another for x86_64). Wouldn't they clash and cause conflicts?
Comment 1 C.W. Betts 2011-11-06 20:49:02 UTC
It does choke up when building mscorlib.dll: when building my 64-bit executable in one directory, it wants to use the 32-bit binary in another directory, and thus can't complete. I did configure the 64-bit build directory first then the 32-bit build directory.

The actual error:

MCS     [build] mscorlib.dll
/Users/cwbetts/makestuff/monostuff/mono-i386/libtool: line 9224: /Users/cwbetts/makestuff/monostuff/mono-i386/mono/mini/mono: No such file or directory
/Users/cwbetts/makestuff/monostuff/mono-i386/libtool: line 9224: exec: /Users/cwbetts/makestuff/monostuff/mono-i386/mono/mini/mono: cannot execute: No such file or directory
make[8]: *** [../../class/lib/build/tmp/mscorlib.dll] Error 126
make[7]: *** [do-all] Error 2
make[6]: *** [all-recursive] Error 1
make[5]: *** [all-recursive] Error 1
make[4]: *** [profile-do--build--all] Error 2
make[3]: *** [profiles-do--all] Error 2
make[2]: *** [all-local] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
CW-i7-mini:mono-x86_64 cwbetts$ pwd
Comment 2 Rodrigo Kumpera 2013-09-09 11:49:48 UTC
The classlib build requires you to first build mono. 

The solution here is to configure just one runtime to drive the BCL build and let the rest be just the runtime.