[Mono-osx] Still trouble with 1.1.17
Aaron Flynt
aaron at aaronflynt.com
Sat Sep 2 12:20:58 EDT 2006
If 'mono DoubleElimination.exe' doesn't work after you've verified
that the required environmental variables are set in your shell and
you've made sure that X11 is running (do other X11 apps run - xterm
for example?), open-x11 or macpack won't get you any further.
The following lines in the macpack loader script cause macpacked MWF
apps to fail for me since the quartz backend isn't currently functional:
# Setup the environment for MWF if needed
if [ "$MWF_MODE" -eq "1" ]; then
export MONO_MWF_USE_QUARTZ_BACKEND=1
export GDIPLUS_NOX=1
fi
As Andreas said, the X11 macpack option isn't for winforms apps. You
might want to follow his lead and avoid macpack until it's updated.
Make sure that the MONO_MWF_USE_QUARTZ_BACKEND and GDIPLUS_NOX are
NOT set. Try the printenv command to see what you have going on. If
they are set (even if set to 0) running the app will fail (at least
it does for me). Once you've verified that those aren't set and the
DISPLAY variable IS set, then try running Terminal.app, X11.app and
launching your app via 'mono DoubleElimination.exe'.
-=Aaron=-
On Sep 2, 2006, at 11:21 AM, Ken & Deb Allen wrote:
> Changing the line in the generated script from [open-x11
> "$APP_NAME"] to [open-x11 "mono $APP_NAME"] resulted in the
> following text being displayed in the Console output:
>
>> : unknown application: mono DoubleElimination
>
> -ken
>
> On 2-Sep-06, at 9:12 AM, Andreas Färber wrote:
>
>>
>> Am 02.09.2006 um 01:07 schrieb Ken & Deb Allen:
>>
>>> First, doing a "cd DoubleElimination.app/Contents/Resources" and
>>> then
>>> "mono DoubleElimination.exe" presents the same results as double-
>>> clicking the application, except all of the output comes to Terminal
>>> rather than being sent to Console.
>>>
>>> The script "DoubleElimination.app/Contents/MacOS/DoubleElimination"
>>> contained a line that defined X11_MODE as zero (0), so I manually
>>> changed this to a one (1), at which point the error text ": unknown
>>> application: DoubleElimination" was sent to the Console when I
>>> double-
>>> clicked the application. I edited the script so that the launch line
>>> read [open-x11 "$APP_NAME.exe"] and the following text was sent to
>>> the Console:
>>>
>>>> /Users/krallen/Development/Mono/DoubleElimination/
>>>> DoubleElimination.app/Contents/Resources/DoubleElimination.exe: /
>>>> Users/krallen/Development/Mono/DoubleElimination/
>>>> DoubleElimination.app/Contents/Resources/DoubleElimination.exe:
>>>> cannot execute binary file
>>>
>>> I modified my build script to use the "-m:x11" switch and this
>>> corrected the setting in the script. When I double-click the script
>>> now, the above error is now being displayed. If X11 is not active
>>> when the applicationis double-clicked, then it is launched
>>> automatically.
>>>
>>> Inserting a line reading [echo "Display: $DISPLAY"] into the script
>>> reveals that the variable is not set, but this does not seem to be
>>> presenting a direct problem. Adding a line reading [DISPLAY=":0.0"]
>>> to the beginning of the script does not change the behaviour.
>>
>> I haven't run any System.Windows.Forms apps on OS X, but open-x11
>> is a Mac OS X app to run binary executables, not managed
>> assemblies. Therefore any "open-x11 YourApp.exe" is destined to
>> fail because the assembly is no OS X executable. Try "open-x11
>> mono .../YourApp.exe".
>>
>> I've ceased to use macpack and instead generate the package
>> structure manually in my Makefile as macpack generates superseeded
>> launch scripts and for me often leads to the bundle icon not being
>> displayed correctly in Tiger's Finder.
>>
>> Andreas
>
More information about the Mono-osx
mailing list