473,785 Members | 2,842 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

.vcproj to Makefile

Hello,

Is there any way (or program) to convert and maintain easily a C++
project (vs7.1) to a Makefile file, in order to build it in Linux?

Many thanks
--
Jacobo Rodríguez Villar

TyphoonLabs Lead Programmer

http://www.typhoonlabs.com
Nov 17 '05 #1
5 11576
"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote:
Is there any way (or program) to convert and maintain easily a C++
project (vs7.1) to a Makefile file, in order to build it in Linux?


Here are a couple relevent threads:

comp.emulators. ms-windows.wine, makefile converter, 5/17/2001
http://groups-beta.google.com/group/...8a4364c377573/
Dev Shed Forums > ... > convert visual studio project to gcc
http://forums.devshed.com/archive/t-214272

As you've guessed, the information you need is in your .vcproj file. Be
warned that if you use any VC++-specific features, such as precompiled
headers or nonstandard APIs, especially the .NET Framework, this conversion
will be somewhat trickier. Automatic converters have been proposed by a
number of people ([1], [2], [3]), but none seem to have been made available.

Considering that generating dependencies is the most difficult part, you may
also be interested in solutions that autogenerate dependencies for your
source files. Then creating the Makefile would be a simple matter of listing
the source files and tweaking your flags and code. Such solutions exist, and
one good one that I've used is proposed in the GNU make manual:

GNU make manual: 4.14 Generating Prerequisites Automatically
http://www.gnu.org/software/make/man...e_4.html#SEC51

I hope some of this helps. Please write back if you have any confusion or
additional issues.

[1] "The information of interest is in the .vcproj file. It is in XML and
could probably be parsed by an XML guru in about 5 minutes to create a
workable makefile for *nix." - mitakeet
http://forums.devshed.com/archive/t-214272

[2] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML." -
Yanhong Huang
http://groups-beta.google.com/group/...9b8f0f46c83fd/

[3] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML (the
trick, of course, is learning the IDE -> XML mapping for all of the
options - no rocket science, just tedium)." - Carl Daniel
http://groups-beta.google.com/group/...e182da74a463b/
--
Derrick Coetzee, Microsoft Speech Server developer
This posting is provided "AS IS" with no warranties, and confers no rights.
Nov 17 '05 #2
Hello Derrick,

Many thanks, that's exactly what I was searching for. I have a 'large'
project (about 40 sources) of standard C++ code (no .NET, mfc or
something else, only STL) and I want to build it in linux, and manually
compilations is very annoying...

Thanks for your reply,
Jacobo
"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote:
Is there any way (or program) to convert and maintain easily a C++
project (vs7.1) to a Makefile file, in order to build it in Linux?

Here are a couple relevent threads:

comp.emulators. ms-windows.wine, makefile converter, 5/17/2001
http://groups-beta.google.com/group/...8a4364c377573/
Dev Shed Forums > ... > convert visual studio project to gcc
http://forums.devshed.com/archive/t-214272

As you've guessed, the information you need is in your .vcproj file. Be
warned that if you use any VC++-specific features, such as precompiled
headers or nonstandard APIs, especially the .NET Framework, this conversion
will be somewhat trickier. Automatic converters have been proposed by a
number of people ([1], [2], [3]), but none seem to have been made available.

Considering that generating dependencies is the most difficult part, you may
also be interested in solutions that autogenerate dependencies for your
source files. Then creating the Makefile would be a simple matter of listing
the source files and tweaking your flags and code. Such solutions exist, and
one good one that I've used is proposed in the GNU make manual:

GNU make manual: 4.14 Generating Prerequisites Automatically
http://www.gnu.org/software/make/man...e_4.html#SEC51

I hope some of this helps. Please write back if you have any confusion or
additional issues.

[1] "The information of interest is in the .vcproj file. It is in XML and
could probably be parsed by an XML guru in about 5 minutes to create a
workable makefile for *nix." - mitakeet
http://forums.devshed.com/archive/t-214272

[2] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML." -
Yanhong Huang
http://groups-beta.google.com/group/...9b8f0f46c83fd/

[3] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML (the
trick, of course, is learning the IDE -> XML mapping for all of the
options - no rocket science, just tedium)." - Carl Daniel
http://groups-beta.google.com/group/...e182da74a463b/

--
Jacobo Rodríguez Villar

TyphoonLabs Lead Programmer

http://www.typhoonlabs.com
Nov 17 '05 #3
For 40 source files (I assume that is what you have and not 40 projects).
Manually creating a makefile should probably take less than an hour.

Ronald

"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote in message
news:uH******** ******@TK2MSFTN GP15.phx.gbl...
Hello Derrick,

Many thanks, that's exactly what I was searching for. I have a 'large'
project (about 40 sources) of standard C++ code (no .NET, mfc or something
else, only STL) and I want to build it in linux, and manually compilations
is very annoying...

Thanks for your reply,
Jacobo
"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote:
Is there any way (or program) to convert and maintain easily a C++
project (vs7.1) to a Makefile file, in order to build it in Linux?

Here are a couple relevent threads:

comp.emulators. ms-windows.wine, makefile converter, 5/17/2001
http://groups-beta.google.com/group/...8a4364c377573/
Dev Shed Forums > ... > convert visual studio project to gcc
http://forums.devshed.com/archive/t-214272

As you've guessed, the information you need is in your .vcproj file. Be
warned that if you use any VC++-specific features, such as precompiled
headers or nonstandard APIs, especially the .NET Framework, this
conversion
will be somewhat trickier. Automatic converters have been proposed by a
number of people ([1], [2], [3]), but none seem to have been made
available.

Considering that generating dependencies is the most difficult part, you
may
also be interested in solutions that autogenerate dependencies for your
source files. Then creating the Makefile would be a simple matter of
listing
the source files and tweaking your flags and code. Such solutions exist,
and
one good one that I've used is proposed in the GNU make manual:

GNU make manual: 4.14 Generating Prerequisites Automatically
http://www.gnu.org/software/make/man...e_4.html#SEC51

I hope some of this helps. Please write back if you have any confusion or
additional issues.

[1] "The information of interest is in the .vcproj file. It is in XML and
could probably be parsed by an XML guru in about 5 minutes to create a
workable makefile for *nix." - mitakeet
http://forums.devshed.com/archive/t-214272

[2] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML." -
Yanhong Huang
http://groups-beta.google.com/group/...9b8f0f46c83fd/

[3] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML (the
trick, of course, is learning the IDE -> XML mapping for all of the
options - no rocket science, just tedium)." - Carl Daniel
http://groups-beta.google.com/group/...e182da74a463b/

--
Jacobo Rodríguez Villar

TyphoonLabs Lead Programmer

http://www.typhoonlabs.com

Nov 17 '05 #4
Ups, I really meant 400 files, not 40, sorry :P
For 40 source files (I assume that is what you have and not 40 projects).
Manually creating a makefile should probably take less than an hour.

Ronald

"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote in message
news:uH******** ******@TK2MSFTN GP15.phx.gbl...
Hello Derrick,

Many thanks, that's exactly what I was searching for. I have a 'large'
project (about 40 sources) of standard C++ code (no .NET, mfc or something
else, only STL) and I want to build it in linux, and manually compilations
is very annoying...

Thanks for your reply,
Jacobo

"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote:
Is there any way (or program) to convert and maintain easily a C++
project (vs7.1) to a Makefile file, in order to build it in Linux?
Here are a couple relevent threads:

comp.emulato rs.ms-windows.wine, makefile converter, 5/17/2001
http://groups-beta.google.com/group/...8a4364c377573/
Dev Shed Forums > ... > convert visual studio project to gcc
http://forums.devshed.com/archive/t-214272

As you've guessed, the information you need is in your .vcproj file. Be
warned that if you use any VC++-specific features, such as precompiled
headers or nonstandard APIs, especially the .NET Framework, this
conversion
will be somewhat trickier. Automatic converters have been proposed by a
number of people ([1], [2], [3]), but none seem to have been made
available.

Considerin g that generating dependencies is the most difficult part, you
may
also be interested in solutions that autogenerate dependencies for your
source files. Then creating the Makefile would be a simple matter of
listing
the source files and tweaking your flags and code. Such solutions exist,
and
one good one that I've used is proposed in the GNU make manual:

GNU make manual: 4.14 Generating Prerequisites Automatically
http://www.gnu.org/software/make/man...e_4.html#SEC51

I hope some of this helps. Please write back if you have any confusion or
additional issues.

[1] "The information of interest is in the .vcproj file. It is in XML and
could probably be parsed by an XML guru in about 5 minutes to create a
workable makefile for *nix." - mitakeet
http://forums.devshed.com/archive/t-214272

[2] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML." -
Yanhong Huang
http://groups-beta.google.com/group/...9b8f0f46c83fd/

[3] "The VS.NET project files for VC are XML - building a .vcproj -> .mak
converter shouldn't be too hard for someone adept at Perl and XML (the
trick, of course, is learning the IDE -> XML mapping for all of the
options - no rocket science, just tedium)." - Carl Daniel
http://groups-beta.google.com/group/...e182da74a463b/

--
Jacobo Rodríguez Villar

TyphoonLabs Lead Programmer

http://www.typhoonlabs.com


--
Jacobo Rodríguez Villar

TyphoonLabs Lead Programmer

http://www.typhoonlabs.com
Nov 17 '05 #5
With that number starting with a tool like the GNU implementation mentioned
below that can extract the dependencies probably makes more sense.

Ronald

"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote in message
news:%2******** ********@TK2MSF TNGP09.phx.gbl. ..
Ups, I really meant 400 files, not 40, sorry :P
For 40 source files (I assume that is what you have and not 40 projects).
Manually creating a makefile should probably take less than an hour.

Ronald

"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote in message
news:uH******** ******@TK2MSFTN GP15.phx.gbl...
Hello Derrick,

Many thanks, that's exactly what I was searching for. I have a 'large'
project (about 40 sources) of standard C++ code (no .NET, mfc or
something else, only STL) and I want to build it in linux, and manually
compilatio ns is very annoying...

Thanks for your reply,
Jacobo
"Jacobo Rodriguez Villar" <skdjf@sdkjf> wrote:
>Is there any way (or program) to convert and maintain easily a C++
>project (vs7.1) to a Makefile file, in order to build it in Linux?
Here are a couple relevent threads:

comp.emulat ors.ms-windows.wine, makefile converter, 5/17/2001
http://groups-beta.google.com/group/...8a4364c377573/
Dev Shed Forums > ... > convert visual studio project to gcc
http://forums.devshed.com/archive/t-214272

As you've guessed, the information you need is in your .vcproj file. Be
warned that if you use any VC++-specific features, such as precompiled
headers or nonstandard APIs, especially the .NET Framework, this
conversio n
will be somewhat trickier. Automatic converters have been proposed by a
number of people ([1], [2], [3]), but none seem to have been made
available .

Consideri ng that generating dependencies is the most difficult part, you
may
also be interested in solutions that autogenerate dependencies for your
source files. Then creating the Makefile would be a simple matter of
listing
the source files and tweaking your flags and code. Such solutions exist,
and
one good one that I've used is proposed in the GNU make manual:

GNU make manual: 4.14 Generating Prerequisites Automatically
http://www.gnu.org/software/make/man...e_4.html#SEC51

I hope some of this helps. Please write back if you have any confusion
or
additiona l issues.

[1] "The information of interest is in the .vcproj file. It is in XML
and
could probably be parsed by an XML guru in about 5 minutes to create a
workable makefile for *nix." - mitakeet
http://forums.devshed.com/archive/t-214272

[2] "The VS.NET project files for VC are XML - building a .vcproj ->
.mak
converter shouldn't be too hard for someone adept at Perl and XML." -
Yanhong Huang
http://groups-beta.google.com/group/...9b8f0f46c83fd/

[3] "The VS.NET project files for VC are XML - building a .vcproj ->
.mak
converter shouldn't be too hard for someone adept at Perl and XML (the
trick, of course, is learning the IDE -> XML mapping for all of the
options - no rocket science, just tedium)." - Carl Daniel
http://groups-beta.google.com/group/...e182da74a463b/
--
Jacobo Rodríguez Villar

TyphoonLab s Lead Programmer

http://www.typhoonlabs.com


--
Jacobo Rodríguez Villar

TyphoonLabs Lead Programmer

http://www.typhoonlabs.com

Nov 17 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
5133
by: Lin Ma | last post by:
Hello, What is the .VCPROJ file? I only installed C#.net and VB.net for the .Net studio 2003. Do I need to install more application to read this file? Thanks, Lin
0
2031
by: Craig Lichtenstein | last post by:
As I’ve been reading about msbuild, I’ve noticed articles that mention msbuild’s incapability to natively read .vcproj files. In short, executing msbuild blah.vcproj causes msbuild to invoke vcbuild to perform the actual ..vcproj processing. I’ve been working on a tool that converts .vcproj files to msbuild formatted files so, with the appropriate C++ tasks (including cl and link tasks), a user could build his code on the command...
5
2560
by: -DG- | last post by:
I had thought that all VC compile/link options could be set from within Visual Studio but apparently that's not the case. The .vcproj file seems to hold refs to old files despite changes to project config. In other words, there are NO refs to a given lib file within the entire project->properties menu hierarchy. Yet the linker is looking for a missing file. It is ref'd only in the .vcproj file. This seems odd. Shouldn't vcproj be...
0
1132
by: Chrysan | last post by:
I had downloaded an example from microsoft website (debuggingwalkthroughs.msi), where this will install a Visual Studio Solution with 2 projects (DebuggingWeb.csproj and DebuggingCOM.vcproj). But, when I try to open the solution (Debugging.sln), it always give me the error as follow: The application for project 'C:\Inetpub\wwwroot\Debugging\DebuggingCOM\DebuggingCOM.vcproj' is not installed. Make sure the application for the project...
8
2348
by: Pavel A. | last post by:
Can anybody shed some light... Confused here :(( Isn't VS.2005 supposed to use the new build system, that can be invoked separately from the IDE? If yes, why it creates vcproj files? Are these files compatible with msbuild? Or, can they be exported to the build? Regards, --PA
2
2377
by: Anil Gupte | last post by:
I get an error saying "The application for project "C:\...\fbridge.vcproj" is not installed." "Make sure the application for the project type (.vcproj) is installed." -- Anil Gupte www.keeninc.net www.icinema.com
12
9124
by: Anil Gupte | last post by:
I have recently installed VC#, VC++ and VB 2005 Express Edition. Someone had sent me the sln file to load it into C# and so I tried, and I get an error saying: "The application for project "C:\...\fbridge.vcproj" is not installed." "Make sure the application for the project type (.vcproj) is installed." The app is called Test, and there appears to be some kind of reference in there that calls this fbridge.vcproj. I can see the...
3
2594
by: Ed | last post by:
Hello, guys, Here I have a VC project. I used to build it in VS.Net IDE. But because of cross platform requiremment, it need to be ported into Linux. First I need to consider the build environment. I need a tool to translate the vcproj or solution file into some other common build file, such as Makefile, or Ant Build XML. I check the Ant, Scons, and some other build tools. It seems there is
3
4695
by: tvnaidu | last post by:
porting windows static libs and dll into linux static lib abd shared lib, any tool to convert vcproj files to Linux makefiles? porting windows static libs and dll into linux static lib abd shared lib, any tool to convert vcproj files to Linux makefiles? I have Visual studio 2005 vcproj files need to convert to Linux makefile, any clue how to do? Porting windows app to Linux, any tool to convert vcproj files to Linux Makefile?,...
0
9645
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9480
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10330
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9952
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8976
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7500
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6740
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5381
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
3
2880
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.