Simple application made with visual studio 2005 not running

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Simple application made with visual studio 2005 not running

Post by fernandocarvalho »

I build a simple application with VS C++ and it is not running.
Debug info and the application with its source code is on the link below:
http://homepages.dcc.ufmg.br/~fccoelho/test.tar.gz

Tested on wine-1.2-rc7
jeffz
Level 5
Level 5
Posts: 345
Joined: Thu Mar 13, 2008 10:03 pm

Re: Simple application made with visual studio 2005 not runn

Post by jeffz »

fernandocarvalho wrote:I build a simple application with VS C++ and it is not running.
Debug info and the application with its source code is on the link below:
http://homepages.dcc.ufmg.br/~fccoelho/test.tar.gz

Tested on wine-1.2-rc7
how did you install .NET?
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Post by fernandocarvalho »

through VS C++ install CD.
Cheer Xiao

Simple application made with visual studio 2005 not running

Post by Cheer Xiao »

On Sun, Jul 11, 2010 at 9:06 PM, fernandocarvalho
<[email protected]> wrote:
through VS C++ install CD.
It is recommended that you used Mono to compile the program. VC++ is
not likely to work under Wine, although old versions may do (with some
tweaks).
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Post by fernandocarvalho »

Then you are saying that commercial applications that were made using Visual Studio, will not work properly on Wine?
I think that this is a serious issue, because many applications are made with visual studio.
The application that I made, was only a test application to see if wine is capable to run applications built with Visual Studio on Windows.
Until now, my conclusions is that it isn't compatible.
:cry:
Cheer Xiao

Simple application made with visual studio 2005 not running

Post by Cheer Xiao »

On Sun, Jul 11, 2010 at 10:30 PM, fernandocarvalho
<[email protected]> wrote:
Then you are saying that commercial applications that were made using Visual Studio, will not work properly on Wine?
I think that this is a serious issue, because many applications are made with visual studio.
Quite likely. But if the company intends to port the application to
Mono there will be not much work to do since .NET is a rather high
level framework (perhaps there are already some toolkits to help with
the migration). The major ambition of Mono is easy migration for both
companies and programmers, and to provide yet-another high-level
general purpose language for Unix programmers.
The application that I made, was only a test application to see if wine is capable to run applications built with Visual Studio on Windows.
Until now, my conclusions is that it isn't compatible.
 [Crying or Very sad]
John Drescher

Simple application made with visual studio 2005 not running

Post by John Drescher »

On Sun, Jul 11, 2010 at 10:17 AM, Cheer Xiao <[email protected]> wrote:
On Sun, Jul 11, 2010 at 9:06 PM, fernandocarvalho
<[email protected]> wrote:
through VS C++ install CD.
It is recommended that you used Mono to compile the program. VC++ is
not likely to work under Wine, although old versions may do (with some
tweaks).
Visual Studio 2005 does work under wine if you build C++ applications
that do not use CLR. I am not sure about .NET at all because I have
not tested that. My Qt applications do build without issue from the
Visual Studio that is installed using winetricks. It may be possible
to build .NET applications if you had installed .NET via winetricks
first in a clean prefix. I do not believe installing .NET directly
using the microsoft installers works. Please correct me if I am
wrong..

John

John
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Post by fernandocarvalho »

:!: :shock:
So there is way to wine be binary compatible with Visual Studio applications?
I fear that in some time wine become useless, because as far as I know, the most recent applications that are built for Windows, uses Visual Studio as their primary compiler.
James McKenzie

Simple application made with visual studio 2005 not running

Post by James McKenzie »

fernandocarvalho wrote:
[Exclamation] [Shocked]
So there is way to wine be binary compatible with Visual Studio applications?
No. That would be a violation of law (at least here in the United
States.) It is legal, however, to emulate the Applications Programming
Interface. That would allow .NET (up to 3.0) to work as if it were on
Windows.
I fear that in some time wine become useless, because as far as I know, the most recent applications that are built for Windows, uses Visual Studio as their primary compiler.


That is true. However, not all of them use .NET features. Use of CLR
features basically locks you to Windows, and that in itself is not
good. It also locks you to a specific build layout of Visual Studio.
It can also lock you out of an ISO specific contract (you cannot use
special features in these types of contracts unless you really, really
justify them.)

It is best to use only features available in .NET, as these are
available through Mono.

And yes, Mono does install on Wine. Use winetricks to install it.

James McKenzie

madewokherd
Level 4
Level 4
Posts: 149
Joined: Mon Jun 02, 2008 5:03 pm

Simple application made with visual studio 2005 not running

Post by madewokherd »

[Exclamation]  [Shocked] So there is way to wine be binary compatible with
Visual Studio applications?
No.  That would be a violation of law
Did I miss something important here?
User avatar
DanKegel
Moderator
Moderator
Posts: 1164
Joined: Wed May 14, 2008 11:44 am

Post by DanKegel »

I think James is a bit confused; there no reason we can't run Visual
Studio or the apps it produces, as long as we fix enough bugs.

But the original poster is confused, too.
It doesn't matter whether the app is built with Visual Studio.
It matters more what ABI the app is written to or compiled to run against.

Your test app is a Managed C++ app. Switch to non-managed, or native,
and you'll have better luck.

Also, your test app is compiled for debugging, which means you
need debugging libraries like msvcm80d.dll, which are only shipped
with Visual Studio; winetricks doesn't have a way to install them.

What are you really trying to do?
James McKenzie

Simple application made with visual studio 2005 not running

Post by James McKenzie »

DanKegel wrote:
I think James is a bit confused; there no reason we can't run Visual
Studio or the apps it produces, as long as we fix enough bugs.
I stand corrected on this. What I was trying to convey is that we
cannot duplicate line-for-line Windows code. Of course, we can build
and run VS programs, but this is not the primary goal of the project,
although it would be fantastic if we could do so.

Running various Windows compiliers is a noble ideal, but should not be
the sole, or primary purpose of this project. Getting a majority of
Windows based Games to run decently should be. Running productivity
applications should be.

And Dan you are correct, if the program uses 'special' code, then we
have more effort to put in. CLR applications that use additional
features then that supplied out-of-the-box by VS and .NET bring in more
problems that Wine is not capable of handling right now. Maybe in the
future, but not now.

Now back to testing.

James McKenzie
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Post by fernandocarvalho »

DanKegel,
I'm a little newbie in Windows API and wine.
So another day I was think a little and concluded:
:idea:
Wine is supposed to be windows compatible.
Visual Studio is a compiler to make windows programs.
Windows programs make calls to windows system calls.
Wine emulates windows system calls and API.
So if I test all Visual Studio system calls against wine, than I can help wine developers find bugs on Wine.
That was my thought.
I don't know if I'm right.
James McKenzie

Simple application made with visual studio 2005 not running

Post by James McKenzie »

fernandocarvalho wrote:
Wine is supposed to be windows compatible.
Visual Studio is a compiler to make windows programs.
Windows programs make calls to windows system calls.
Wine emulates windows system calls and API.
So if I test all Visual Studio system calls against wine, than I can help wine developers find bugs on Wine.

That was my thought.
These are great ideas/thoughts. However, if you do find something, it
has to be converted into a conformance test (in other words a test that
proves this is how Windows expects things to work.) I've found that
various 'flavors' of Windows behave differently and there is a vast
difference between Windows 9x/ME behavior and Windows NT (Windows NT,
2000, 2003, 2008, XP, Vista and Win7.) You have to look out for and
account for this. All in one test case. Not easy but very productive
when we are implementing said behaviors.
I don't know if I'm right.


You are definitely on the right track. I was thinking that you wanted
to build complex Windows programs with VS in a Wine environment. Using
VS for testing is a different thing and actually could lead to
discoveries and shorten the build/test cycle. It is definitely another
tool in the tool box of testing scenarios that we should consider.

James McKenzie
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Post by fernandocarvalho »

That was my point. :!:
I think that wine will be enough when it start running production applications, like MS Office and AutoCAD, and games like Final Fantasy, Starcraft II and others.
This is what people miss on Unix systems, mainly on Linux.
So I wish to help in this way.
Applications like Disk Burners, DVD/Bluray players and other applications that rely on hardware support should be in the lowest priority of wine developers, becouse this kind of application are, in some way, replaced by applications that runs nativelly on Unix.
Maybe after this cycle of development in wine, we could focus on increasing compatibility with Visual Studio.
I think that it is a way that people can easily help debug wine, by submitting parts of their code, and telling what is going wrong.
Gert van den Berg

Simple application made with visual studio 2005 not running

Post by Gert van den Berg »

On Mon, Jul 12, 2010 at 00:40, fernandocarvalho
<[email protected]> wrote:
That was my point. [Exclamation]
I think that wine will be enough when it start running production applications, like MS Office and AutoCAD, and games like Final Fantasy, Starcraft II and others.
Have a look at:
http://appdb.winehq.org/appview.php?appId=31
http://appdb.winehq.org/objectManager.p ... ion&iId=86
(.NET seem to be the main thing messing up recent versions...) (There
is also quite a bit of posts on the form / wine-users, use search...)
http://appdb.winehq.org/objectManager.p ... &iId=11123

.NET apps should be written to be runnable under Mono.... (The older
.NET versions actually seem to have some hope:
http://appdb.winehq.org/objectManager.p ... n&iId=2586
) See: http://en.wikipedia.org/wiki/Mono_%28software%29
Maybe after this cycle of development in wine, we could focus on increasing compatibility with Visual Studio.
"Unmanaged" Visual Studio apps work... .NET (Unfortuanatly, I thing
Visual C++ is the only app with an unmanaged option) stuff not...
(.NET is huge and require a massive part of Windows to run...) Proper
portable .NET apps should be runnable under Mono, which tries to be
compliant to the .NET specs... (When they start mixing in non-.NET
code, Wine is needed...)
madewokherd
Level 4
Level 4
Posts: 149
Joined: Mon Jun 02, 2008 5:03 pm

Simple application made with visual studio 2005 not running

Post by madewokherd »

"Unmanaged" Visual Studio apps work... .NET (Unfortuanatly, I thing
Visual C++ is the only app with an unmanaged option) stuff not...
(.NET is huge and require a massive part of Windows to run...) Proper
portable .NET apps should be runnable under Mono, which tries to be
compliant to the .NET specs... (When they start mixing in non-.NET
code, Wine is needed...)
Actually, any .NET app, even one that uses the Windows API, should be
runnable in Mono on Windows (or Wine), with a few minor differences
that Wine's mscoree can account for properly.

It's just that in practice Mono (and Wine) are less than perfect

It's not even worth trying the Linux Mono with a program designed only
for Windows.
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Post by fernandocarvalho »

Is there any way to join Mono and Wine in some point?
Many recent applications from Windows, relies on .NET framework. So I think that making then work under wine would be a great go for us.
Locked