Question

fatal error C1083: Cannot open include file: 'general.h': No such file or

Asked by: Gabriela1

HI guys,
I am trying to do what itsmeanobidyelse told me to do and see if it is working...

- create a folder below your project directory - say rltoolbox.
- copy all source files from
        RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b
    to that new folder
  - add a new folder to project tree say RL-Toolbox
  - add the new .cpp and .h files from folder yourproject\rltoolbox
     to the folder in the project tree by right-clicking on the folder and
     choosing 'Add Existing Item ...'

This is my first question
You said to copy only the source files to rltoolbox --so how can I add the new .cpp and .h files from folder yourproject\rltoolbox  to the folder in the project tree by right-clicking on the folder and
choosing 'Add Existing Item ...'

ll headers which are addressed via a project - include settings where included like

  #include "cparameter.h"

All headers from a location that is defined in Tools - Options - VC - Proj. and S. - Directories were included like

  #include <boosting.h>
 And my second question related to what he said..
I do not understand...what should I do?

I created the subfolders and I copied everything how he said but it seems that I have this error

fatal error C1083: Cannot open include file: 'general.h': No such file or directory
1>Generating Code...

I looked and the file is there in torch3..the folder with the.h files

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2009-10-19 at 12:09:18ID24824716
Topic

C++ Programming Language

Participating Experts
1
Points
500
Comments
79

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. C1083
    hi, I am trying to work with MICO and Visual C++. I have installed MICO on my system. I have copiled the idl-code without problems. then i wanted to compile a code for the client and there comes the fatal error C1803: Include-file can`t be open. Error in executing cl.exe. ...
  2. erro C1083: cannot include netinet/in.h -- Plz help
    Hey all I am doing a client socket prog in C++. I have the code and when i compile it in MS Visual C++ 7, it is giving an error like this: fatal error C1083: Cannot open include file: 'netinet.h': No such file or directory What shud i do? Max
  3. fatal error C1083
    I'm trying to compile this code I got from someone. I keep on getting "fatal error C1083: Cannot open include file: 'xxx.h': No such file or directory" (where xxx.h is the name of the file). The file xxx.h exists in the project, but I guess the file that has the inc...
  4. Full Program Opt's, StdAfx.h and error c1083
    c:\Documents and Settings\amckern\My Documents\CustomSourceTools\utils\vvis\vvis.cpp(1178): fatal error C1010: unexpected end of file while looking for precompiled header directive c:\Documents and Settings\amckern\My Documents\CustomSourceTools\utils\vvis\vvis.cpp(13): fata...

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 13:59:09ID: 25608977

>>>> I looked and the file is there in torch3..the folder with the.h files
The torch3 folder must be added to the include folders in

  Tools-Options- Projects and Solutions - VC++ Directories  - Include Files (combobox 'Show directories for')



 

by: Gabriela1Posted on 2009-10-19 at 14:12:56ID: 25609108

Tools-Options- Projects and Solutions - VC++ Directories  - Include Files (combobox 'Show directories for')

i included and now I have this error

1>Torch3.lib(general.obj) : error LNK2019: unresolved external symbol __iob referenced in function "void __cdecl Torch::error(char const *,...)" (?error@Torch@@YAXPBDZZ)

 

by: Gabriela1Posted on 2009-10-19 at 14:23:11ID: 25609185

I am thinking maybe this torch3.lib should be bbuild first? I know someone here said that I do not have to build it. And if it is necessary how do I do that?

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 14:23:22ID: 25609186

>>>> i included and now I have this error

First, it now is a linker error, what means it compiled.

To get rid of the linker error, try a rebuild.

What is your Visual Studio version?

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 14:25:54ID: 25609205

>>>> And if it is necessary how do I do that?
Hmmm. I didn't find .cpp files for the torch3 in the .zip. At least not in the package for VS2003. You might download the other package for Win32. If you are lucky it contains the sources for the torch3.

 

by: Gabriela1Posted on 2009-10-19 at 14:34:14ID: 25609260

What is your Visual Studio version?

I am using Vs 2008.

At least not in the package for VS2003. You might download the other package for Win32. If you are lucky it contains the sources for the torch3.

I think on the site where I downloaded the RL Toolbox there is a download the torch3.lib..and with some documentation..I think that maybe I should build it.

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 14:39:41ID: 25609290

>>>> there is a download the torch3.lib.

The torch3.lib is already a built library. If it is for VS2003 you may have problems to link it in VS2008 as some symbols (_iob) may not be available in VS2008.

To rebuild it yourself you need .cpp files for the torch3 and best a .vcproj file. Even if the .vcproj is for VS2003, the VS2008 should be able to convert it.

Did you try a rebuild?

 

by: Gabriela1Posted on 2009-10-19 at 14:43:35ID: 25609314

Yes, I tried a rebuild of the whole project and is still not working.

 

by: Gabriela1Posted on 2009-10-19 at 14:55:34ID: 25609384

The torch3.lib is already a built library. If it is for VS2003 you may have problems to link it in VS2008 as some symbols (_iob) may not be available in VS2008.

If torch3.lib is already build why you can downloaded and build it? And if can not be linked...why when I am trying one of the examples of the toolbox it works?

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 15:05:17ID: 25609427

>>>> If torch3.lib is already build why you can downloaded and build it?

For rltoolbox there was both. A .lib which could have been used directly as linker input AND the sources so that you can rebuild it. For torch3 we only had a .lib (and the headers. Try to get the .cpp for torch3 and a .vcproj. Or a .lib for VS2008.

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 15:12:52ID: 25609469

>>>> why when I am trying one of the examples of the toolbox it works?

Good point.

The __iob was referenced in function "void __cdecl Torch::error(char const *,...)". If you would use only functions of torch3 that don't use the error function ... You might check the samples (which work). Probably they have less includes ....

Did you added *all* the .cpp und .h from rltoolbox to your project? If yes, there is a chance by using a self-built rltoolbox.lib. Contrary to adding all .cpp to your project, linking against a .lib only would link the modules really used. That might solve the _iob issue.

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 15:18:19ID: 25609493

>>>> If yes, there is a chance by using a self-built rltoolbox.lib.

- copy the rltoolbox.vcproj to the rltoolbox folder (where you copied headers and .cpp to)
- remove the rltoolbox folder from your project tree.
- right-click the top of your project tree and choose
  'Add existing project '
- choose the .vcproj of rltoolbox
- build the new project. It shoild create a new .lib file
- add that .lib file to your project tree
- rebuild your original project

 

by: Gabriela1Posted on 2009-10-19 at 18:39:13ID: 25610445

The __iob was referenced in function "void __cdecl Torch::error(char const *,...)". If you would use only functions of torch3 that don't use the error function ... You might check the samples (which work). Probably they have less includes

I've attached the sample that works .

I've included in my .cpp only the includes that are in the sample.

// Copyright (C) 2003
// Gerhard Neumann (gneumann@gmx.net)
// Stephan Neumann (sneumann@gmx.net) 
//                
// This file is part of RL Toolbox.
// http://www.igi.tugraz.at/ril_toolbox
//
// All rights reserved.
// 
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
// 1. Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the distribution.
// 3. The name of the author may not be used to endorse or promote products
//    derived from this software without specific prior written permission.
// 
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// USE OF THE EXAMPLE
// gridworldshortestpath [-g gridworldfile] [-d debugfile]
// 
// This example shows how to learn the shortest path problem in a given gridworld with 
// Q-Function learning.
 
#include <time.h>
 
#include "ril_debug.h"
#include "ctdlearner.h"
#include "cpolicies.h"
#include "cagent.h"
#include "cagentlogger.h"
#include "crewardmodel.h"
#include "canalyzer.h"
#include "cgridworldmodel.h"
#include "cvfunctionlearner.h"
 
 
// This is the entry point for this application
 
 
int main(int argc, char **argv)
{
	// Initialize the random generator 
	srand((unsigned int) time(NULL));
 
	int arg = 1;
	char *gridworldFileName = "Gridworld_10x10.txt";
	
	// Console Input Processing
	while (arg < argc - 1)
	{
		if (strcmp(argv[arg], "-d") == 0)
		{
			// The "-d" option enables debugging
			arg ++;
			char *debugFile = argv[arg];
			DebugInit(debugFile, "+", false);
		}
		if (strcmp(argv[arg], "-g") == 0)
		{
			// The "-g" option sets the gridworld file
			arg ++;
			gridworldFileName = argv[arg];
		}
		arg++;
	}
 
    printf ("-=<   Reinforcement Learning Example - Learning the Shortest Path Problem in a Gridworld   >=-\n\n");
	
	// Create the Gridworld, set max_bounces to 50. The model will reset the episode if "max_bounces" 
	// bounces (walk into the wall) are reached.
	CGridWorldModel *gridworldModel = new CGridWorldModel(gridworldFileName, 50);
	
	// Set the reward values 
	// -0.2 for each move (in order to learn the shortest path)
	// -5.0 for each bounce
	// 100 for reaching the target state(s)
 
	gridworldModel->setRewardStandard(-0.2);
	gridworldModel->setRewardBounce(-5.0);
	gridworldModel->setRewardSuccess(100.0);
 
	// Create the environment for the agent, the environment saves the current state of the agent.
	CEnvironmentModel *environmentModel = new CTransitionFunctionEnvironment(gridworldModel);
	
	// the gridworld model implements the reward function too, so we can use this
	CRewardFunction *rewardFunction = gridworldModel;
	
	// Create the agent in our environmentModel.
	CAgent *agent = new CAgent(environmentModel);
 
	// Add all possible Actions to the agent
	// left
	agent->addAction(new CGridWorldAction(-1,0));
	// right
	agent->addAction(new CGridWorldAction(1,0));
	// up
	agent->addAction(new CGridWorldAction(0,-1));
	// down
	agent->addAction(new CGridWorldAction(0,1));
 
	// For the shortest path problem, we need a global state, i.e. each possible position in the grid is an own state
	CAbstractStateDiscretizer *globalGridworldstate = new CGlobalGridWorldDiscreteState(gridworldModel->getSizeX(), gridworldModel->getSizeY());
	
	// In order to use the discretizer we have to add it to the agent's state modifier list. 
	// Always add your state modifiers to that list !!
	agent->addStateModifier(globalGridworldstate);
	
	// Create an Agent Logger for logging the episodes
	// Our agent logger logs the gridworld model state and the actions of the agent. This logger holds all episodes in memory.
	CAgentLogger *logger = new CAgentLogger(gridworldModel->getStateProperties(), agent->getActions());
	// add the logger to the agent's listener list
	agent->addSemiMDPListener(logger);
 
	// Q-Learning starts here
 
	// Create our Q-Function, we will use a Feature Q-Function, which is table-like representation of the Q-Function.
	// The Q-Function needs to know which actions and which state it has to use
	CFeatureQFunction *qFunction = new CFeatureQFunction(agent->getActions(), globalGridworldstate);
 
	// Create the Q-Function learner, we will use a SarsaLearner
	// The Sarsa Learner needs the reward function, the Q-Function and the agent.
	// The agent is used to get the estimation policy, because Sarsa Learning is On-Policy learning.
	CSarsaLearner *qFunctionLearner = new CSarsaLearner(rewardFunction, qFunction, agent);
 
	// Create the Controller for the agent from the QFunction. We will use a EpsilonGreedy-Policy for exploration.
	CAgentController *qLearnerPolicy = new CQStochasticPolicy(agent->getActions(), new CEpsilonGreedyDistribution(0.1), qFunction);
		
	// Set some options of the Etraces which are not default
	qFunctionLearner->getETraces()->setReplacingETraces(true);
	qFunctionLearner->getETraces()->setLambda(0.95);
	
	// Add the learner to the agent listener list, so he can learn from the agent's steps.
	agent->addSemiMDPListener(qFunctionLearner);
	
	// Set the controller of the agent
	agent->setController(qLearnerPolicy);
	
	// Disable logging of the current Episode
	agent->setLogEpisode(false);
 
	int steps = 0; 
    int ges_failed = 0, ges_succeeded = 0, last_succeeded = 0;
    
    int totalSteps = 0;
 
	// Start Learning, Learn 50 Episodes
	for (int i = 0; i < 50; i++)
	{
		// Start a new Episode, the agent gets reseted in one of the start states
		agent->startNewEpisode();
		// Learn 1 Episode with maximal 1000 steps 
		steps = agent->doControllerEpisode(1, 1000);
 
		totalSteps += steps;
 
		// Check if the Episode failed
		// The episode has failed if max_bounces has been reached (indicated through environmentModel->isFailed()), 
		// or max_steps has been reached
		if (environmentModel->isFailed() || steps >= 1000)
		{
			ges_failed++;
			last_succeeded = 0;
			printf("Episode %d failed with %d steps\n", i, steps);
		}
		else
		{
			ges_succeeded++;
			last_succeeded++;
 
			printf("Episode %d succeded with %d steps, %d Episodes succeded in the row\n", i, steps, last_succeeded);
		}
		
	}
 
	// Save the QFunction
	FILE *qFuncFile = fopen("QFunctionShortestPath.table","w");
	qFunction->saveData(qFuncFile);
	fclose(qFuncFile);
 
	// Save the QFunction
	FILE *loggerFile = fopen("gridworldShortestPath.episodes","w");
	logger->saveData(loggerFile);
	fclose(loggerFile);
 
	printf("\n\n<< Press Enter >>\n");
	getchar();
 
	// Cleaning Up
	
	delete qFunction;
	delete qLearnerPolicy;
	delete qFunctionLearner;
	delete logger;
	delete agent;
	delete environmentModel;
	delete gridworldModel;
}
                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:

Select allOpen in new window

 

by: Gabriela1Posted on 2009-10-19 at 18:41:17ID: 25610451

- copy the rltoolbox.vcproj to the rltoolbox folder (where you copied headers and .cpp to)

I do not have a rltoolbox.vcproj. should I have one? I only have an rltoolbox folder.

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 22:33:30ID: 25611245

>>>> rltoolbox.vcproj

It has another name which I don't remember. But it is the only .vcproj in the .zip for VS2003.

I am currently not at home (where I have the .zip) but on the road in a customer's project.

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 22:34:44ID: 25611252

>>>> I've attached the sample that works .

How did you build the sample? Was there a project file (.vcproj) included?

 

by: Gabriela1Posted on 2009-10-19 at 22:55:03ID: 25611314

How did you build the sample? Was there a project file (.vcproj) included?

No. i build it as instructed in the question that I post it.
This is the link for the question.

http://www.experts-exchange.com/Programming/Editors_IDEs/C_CPP_CS/Visual_CPP/Q_24774008.html

 

by: itsmeandnobodyelsePosted on 2009-10-19 at 23:36:07ID: 25611458

>>>> This is the link for the question.

Hmmm. It is a link where you build the RL Toolbox. I couldn't find how you build the sample.

>>>> I tried to run an example that they have there, ShortestPathVLearning.cpp

You say you tried to run a .cpp what is not possible. You needed a project before build which was either  a new project or based on an existing project file (.vcproj).

 

by: Gabriela1Posted on 2009-10-19 at 23:50:29ID: 25611539


mmm. It is a link where you build the RL Toolbox. I couldn't find how you build the sample.

1) Download RL Toolbox 2.0 Visual Studio 7.0 Project for Win32
2) Open it with VS2008
3) In project properties , in code generation change it to MultiThreaded (release) and multithreaded debug (debug)
4)compile

5)Download RL Toolbox 2.0 Library for Win32 (Build 050824)
6) Open it with VS2008
7) Change RL Toolbox Debug.lib and RL Toolbox Release.lib for the libraries compiled in point 4.
8) In project properties , in code generation change it to MultiThreaded (release) and multithreaded.
9) Compile.

You say you tried to run a .cpp what is not possible. You needed a project before build which was either  a new project or based on an existing project file (.vcproj).

I run a solution file that is Rltoolbox example solution..i do not have any vcproj.

I am now going to sleep because it is late. I will follow your instructions in the morning.

 

by: itsmeandnobodyelsePosted on 2009-10-20 at 02:32:26ID: 25612260

>>>> run a solution file that is Rltoolbox example solution..i do not have any vcproj.

Sorry, that I havn't thought on a solution. A solution contains one or more links to projects where each has a .vcproj project file. If you open the .sln file using a text editor (e. g. notepad), you'll see the path to the .vcproj what is the project file of the sample.

For each project in the solution file you see two GUIDs like

    {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}

The first is the GUID of the solution, the second is the ID of the project.

What we could do is to use a copy of the working sample project file and change the GUID to that of your current project file which has that linker problem (__iob).

If you locate both vcproj files and add those files as .txt to a comment, I would mix-up the project files for you so taht you have a new .vcproj with the project settings of the sample project and the files of the current project. If you are lucky it will build then with your new solution.

 

 

by: Gabriela1Posted on 2009-10-20 at 07:00:09ID: 25614174

Sorry, that I havn't thought on a solution. A solution contains one or more links to projects where each has a .vcproj project file. If you open the .sln file using a text editor (e. g. notepad), you'll see the path to the .vcproj what is the project file of the sample.

For each project in the solution file you see two GUIDs like

    {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}


This is my .sln

Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RL_Toolbox_Windows_Source_20b", "RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b.vcproj", "{D1707134-5CF9-40F6-85D0-C4B16B5B711E}"
      ProjectSection(ProjectDependencies) = postProject
      EndProjectSection
EndProject
Global
      GlobalSection(SolutionConfiguration) = preSolution
            Debug = Debug
            Release = Release
      EndGlobalSection
      GlobalSection(ProjectConfiguration) = postSolution
            {D1707134-5CF9-40F6-85D0-C4B16B5B711E}.Debug.ActiveCfg = Debug|Win32
            {D1707134-5CF9-40F6-85D0-C4B16B5B711E}.Debug.Build.0 = Debug|Win32
            {D1707134-5CF9-40F6-85D0-C4B16B5B711E}.Release.ActiveCfg = Release|Win32
            {D1707134-5CF9-40F6-85D0-C4B16B5B711E}.Release.Build.0 = Release|Win32
      EndGlobalSection
      GlobalSection(ExtensibilityGlobals) = postSolution
      EndGlobalSection
      GlobalSection(ExtensibilityAddIns) = postSolution
      EndGlobalSection
EndGlobal

the second ID is D1707134-5CF9-40F6-85D0-C4B16B5B711E...and I copy it and replace the ID of the I90Controller.

If you locate both vcproj files and add those files as .txt to a comment, I would mix-up the project files for you so taht you have a new .vcproj with the project settings of the sample project and the files of the current project. If you are lucky it will build then with your new solution.

This I do not understand what should I do.

 

by: Gabriela1Posted on 2009-10-20 at 11:36:07ID: 25617072

If you locate both vcproj files and add those files as .txt to a comment, I would mix-up the project files for you so taht you have a new .vcproj with the project settings of the sample project and the files of the current project. If you are lucky it will build then with your new solution.


i understood what you wnat me to do..so I am attaching both .txt files..

 

by: itsmeandnobodyelsePosted on 2009-10-21 at 14:12:26ID: 25628529

I checked both project files and the second seems to be a copy of the RL-Toolbox project file rather than that of a sample which *uses* the RL-Toolbox. So, I changed my plan described above and made a copy of the I90Controller project file and changed only

  - the name I90Controller to IMy90Controller
  - the project GUID from 81AF1356-E608-464F-850F-A43989D12281 to D1707134-5CF9-40F6-85D0-C4B16B5B711E

- copy the below text to a file IMy90Controller.vcproj.

- copy the folder I90Controller to IMy90Controller with all sub directories.

- move the IMy90Controller.vcproj to that folder

- delete the file I90Controller.vcproj in the folder IMy90Controller

- rename all files I90Controller.* to IMy90Controller.*

- rename all files I90Controller.*

- double-click on the new I90Controller.vcproj

- it should open without problems

- if not post the errors here

- it also should build as it is a 1:1 copy of the I90Controller sample

- After that you could substitute files in the sample with your code



<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
 ProjectType="Visual C++"
 Version="9.00"
 Name="IMy90Controller"
 ProjectGUID="{D1707134-5CF9-40F6-85D0-C4B16B5B711E}"
 RootNamespace="IMy90Controller"
 Keyword="MFCProj"
 TargetFrameworkVersion="0"
 >
 <Platforms>
  <Platform
   Name="Win32"
  />
 </Platforms>
 <ToolFiles>
 </ToolFiles>
 <Configurations>
  <Configuration
   Name="Release|Win32"
   OutputDirectory=".\Release"
   IntermediateDirectory=".\Release"
   ConfigurationType="1"
   InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
   UseOfMFC="2"
   ATLMinimizesCRunTimeLibraryUsage="false"
   CharacterSet="2"
   >
   <Tool
    Name="VCPreBuildEventTool"
   />
   <Tool
    Name="VCCustomBuildTool"
   />
   <Tool
    Name="VCXMLDataGeneratorTool"
   />
   <Tool
    Name="VCWebServiceProxyGeneratorTool"
   />
   <Tool
    Name="VCMIDLTool"
    PreprocessorDefinitions="NDEBUG"
    MkTypLibCompatible="true"
    SuppressStartupBanner="true"
    TargetEnvironment="1"
    TypeLibraryName=".\Release/IMy90Controller.tlb"
    HeaderFileName=""
   />
   <Tool
    Name="VCCLCompilerTool"
    Optimization="2"
    InlineFunctionExpansion="1"
    PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
    StringPooling="true"
    RuntimeLibrary="2"
    EnableFunctionLevelLinking="true"
    UsePrecompiledHeader="2"
    PrecompiledHeaderThrough="stdafx.h"
    PrecompiledHeaderFile=".\Release/IMy90Controller.pch"
    AssemblerListingLocation=".\Release/"
    ObjectFile=".\Release/"
    ProgramDataBaseFileName=".\Release/"
    WarningLevel="3"
    SuppressStartupBanner="true"
   />
   <Tool
    Name="VCManagedResourceCompilerTool"
   />
   <Tool
    Name="VCResourceCompilerTool"
    PreprocessorDefinitions="NDEBUG"
    Culture="1033"
   />
   <Tool
    Name="VCPreLinkEventTool"
   />
   <Tool
    Name="VCLinkerTool"
    AdditionalDependencies="&quot;C:\Documents and Settings\ogvalent\Desktop\IMy90Controller_V2\IMy90Controller_DRI\RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b\Release\RL Toolbox Release.lib&quot;"
    OutputFile=".\Release/IMy90Controller.exe"
    LinkIncremental="1"
    SuppressStartupBanner="true"
    ProgramDatabaseFile=".\Release/IMy90Controller.pdb"
    SubSystem="2"
    RandomizedBaseAddress="1"
    DataExecutionPrevention="0"
    TargetMachine="1"
   />
   <Tool
    Name="VCALinkTool"
   />
   <Tool
    Name="VCManifestTool"
   />
   <Tool
    Name="VCXDCMakeTool"
   />
   <Tool
    Name="VCBscMakeTool"
    SuppressStartupBanner="true"
    OutputFile=".\Release/IMy90Controller.bsc"
   />
   <Tool
    Name="VCFxCopTool"
   />
   <Tool
    Name="VCAppVerifierTool"
   />
   <Tool
    Name="VCPostBuildEventTool"
   />
  </Configuration>
  <Configuration
   Name="Debug|Win32"
   OutputDirectory=".\Debug"
   IntermediateDirectory=".\Debug"
   ConfigurationType="1"
   InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
   UseOfMFC="2"
   ATLMinimizesCRunTimeLibraryUsage="false"
   CharacterSet="2"
   >
   <Tool
    Name="VCPreBuildEventTool"
   />
   <Tool
    Name="VCCustomBuildTool"
   />
   <Tool
    Name="VCXMLDataGeneratorTool"
   />
   <Tool
    Name="VCWebServiceProxyGeneratorTool"
   />
   <Tool
    Name="VCMIDLTool"
    PreprocessorDefinitions="_DEBUG"
    MkTypLibCompatible="true"
    SuppressStartupBanner="true"
    TargetEnvironment="1"
    TypeLibraryName=".\Debug/IMy90Controller.tlb"
    HeaderFileName=""
   />
   <Tool
    Name="VCCLCompilerTool"
    Optimization="0"
    AdditionalIncludeDirectories="&quot;C:\Program Files\matlab704\extern\include&quot;;../torch3;../rltoolbox;&quot;C:\Documents and Settings\ogvalent\Desktop\i90Controller_SampleCode_forVS2008\IMy90Controller_DRI\RL_Toolbox_Windows_Binaries_20b\RL_Toolbox_Windows_Binaries_20b\external_include\Torch3&quot;;&quot;C:\Documents and Settings\ogvalent\Desktop\i90Controller_SampleCode_forVS2008\IMy90Controller_DRI\RL_Toolbox_Windows_Binaries_20b\RL_Toolbox_Windows_Binaries_20b\external_include\rl_toolbox&quot;"
    PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
    MinimalRebuild="true"
    BasicRuntimeChecks="3"
    RuntimeLibrary="3"
    UsePrecompiledHeader="2"
    PrecompiledHeaderThrough="stdafx.h"
    PrecompiledHeaderFile=".\Debug/IMy90Controller.pch"
    AssemblerListingLocation=".\Debug/"
    ObjectFile=".\Debug/"
    ProgramDataBaseFileName=".\Debug/"
    WarningLevel="3"
    SuppressStartupBanner="true"
    DebugInformationFormat="4"
   />
   <Tool
    Name="VCManagedResourceCompilerTool"
   />
   <Tool
    Name="VCResourceCompilerTool"
    PreprocessorDefinitions="_DEBUG"
    Culture="1033"
   />
   <Tool
    Name="VCPreLinkEventTool"
   />
   <Tool
    Name="VCLinkerTool"
    AdditionalDependencies="Torch3.lib"
    OutputFile=".\Debug/IMy90Controller.exe"
    LinkIncremental="2"
    SuppressStartupBanner="true"
    AdditionalLibraryDirectories="&quot;C:\Program Files\matlab704\bin\win32&quot;;&quot;C:\Program Files\matlab704\extern\lib\win32\microsoft&quot;;&quot;C:\Documents and Settings\ogvalent\Desktop\i90Controller_SampleCode_forVS2008\IMy90Controller_DRI\RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b\external_library&quot;"
    IgnoreDefaultLibraryNames="msvcrt;libc"
    GenerateDebugInformation="true"
    ProgramDatabaseFile=".\Debug/IMy90Controller.pdb"
    SubSystem="2"
    HeapReserveSize="40240000"
    HeapCommitSize="40240000"
    StackReserveSize="40240000"
    StackCommitSize="40240000"
    LargeAddressAware="2"
    RandomizedBaseAddress="1"
    DataExecutionPrevention="0"
    TargetMachine="1"
   />
   <Tool
    Name="VCALinkTool"
   />
   <Tool
    Name="VCManifestTool"
   />
   <Tool
    Name="VCXDCMakeTool"
   />
   <Tool
    Name="VCBscMakeTool"
    SuppressStartupBanner="true"
    OutputFile=".\Debug/IMy90Controller.bsc"
   />
   <Tool
    Name="VCFxCopTool"
   />
   <Tool
    Name="VCAppVerifierTool"
   />
   <Tool
    Name="VCPostBuildEventTool"
   />
  </Configuration>
 </Configurations>
 <References>
 </References>
 <Files>
  <Filter
   Name="Source Files"
   Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
   >
   <File
    RelativePath=".\ekfreal.cpp"
    >
   </File>
   <File
    RelativePath="IMy90Controller.cpp"
    >
    <FileConfiguration
     Name="Release|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
    <FileConfiguration
     Name="Debug|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
   </File>
   <File
    RelativePath="IMy90Controller.rc"
    >
    <FileConfiguration
     Name="Release|Win32"
     >
     <Tool
      Name="VCResourceCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
    <FileConfiguration
     Name="Debug|Win32"
     >
     <Tool
      Name="VCResourceCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
   </File>
   <File
    RelativePath="IMy90ControllerDlg.cpp"
    >
    <FileConfiguration
     Name="Release|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
    <FileConfiguration
     Name="Debug|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
   </File>
   <File
    RelativePath="StdAfx.cpp"
    >
    <FileConfiguration
     Name="Release|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
      UsePrecompiledHeader="1"
     />
    </FileConfiguration>
    <FileConfiguration
     Name="Debug|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
      UsePrecompiledHeader="1"
     />
    </FileConfiguration>
   </File>
   <File
    RelativePath="vitaminctrl.cpp"
    >
    <FileConfiguration
     Name="Release|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
    <FileConfiguration
     Name="Debug|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
   </File>
   <File
    RelativePath="wirobotsdk.cpp"
    >
    <FileConfiguration
     Name="Release|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
    <FileConfiguration
     Name="Debug|Win32"
     >
     <Tool
      Name="VCCLCompilerTool"
      PreprocessorDefinitions=""
     />
    </FileConfiguration>
   </File>
  </Filter>
  <Filter
   Name="Header Files"
   Filter="h;hpp;hxx;hm;inl"
   >
   <File
    RelativePath=".\torch3\general.h"
    >
   </File>
   <File
    RelativePath="IMy90Controller.h"
    >
   </File>
   <File
    RelativePath="IMy90ControllerDlg.h"
    >
   </File>
   <File
    RelativePath="StdAfx.h"
    >
   </File>
   <File
    RelativePath="vitaminctrl.h"
    >
   </File>
   <File
    RelativePath="wirobotsdk.h"
    >
   </File>
  </Filter>
  <Filter
   Name="Resource Files"
   Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
   >
   <File
    RelativePath="res\IMy90Controller.ico"
    >
   </File>
   <File
    RelativePath="res\IMy90Controller.rc2"
    >
   </File>
  </Filter>
  <Filter
   Name="Libaries"
   >
   <File
    RelativePath=".\RL_Toolbox_Windows_Binaries_20b\RL_Toolbox_Windows_Binaries_20b\external_library\RL Toolbox Debug.lib"
    >
   </File>
   <File
    RelativePath=".\RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b\external_library\Torch3.lib"
    >
   </File>
  </Filter>
  <Filter
   Name="RL_Toolbox"
   >
   <File
    RelativePath=".\rltoolbox\cacrobotmodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cacrobotmodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\caction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\caction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cactionstatistics.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cactionstatistics.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cactorcritic.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cactorcritic.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cadaptivesoftmaxnetwork.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cadaptivesoftmaxnetwork.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cadvantagelearning.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cadvantagelearning.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagent.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagent.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagentcontroller.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagentcontroller.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagentlistener.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagentlistener.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagentlogger.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cagentlogger.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\canalyzer.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\canalyzer.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccartpolemodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccartpolemodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccontinuousactiongradientpolicy.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccontinuousactiongradientpolicy.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccontinuousactions.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccontinuousactions.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccontinuoustime.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ccontinuoustime.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cdiscretizer.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cdiscretizer.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cdynamicprogramming.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cdynamicprogramming.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cenvironmentmodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cenvironmentmodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cepisode.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cepisode.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cepisodehistory.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cepisodehistory.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cerrorfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cerrorfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cerrorlistener.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cerrorlistener.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cexploration.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cexploration.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cfeaturefunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cfeaturefunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cgradientfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cgradientfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cgridworldmodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cgridworldmodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\chierarchicbehaviours.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\chierarchicbehaviours.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\chierarchiccontroller.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\chierarchiccontroller.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\chistory.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\chistory.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\clearndataobject.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\clearndataobject.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\clearneddynamicmodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\clearneddynamicmodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\clinearfafeaturecalculator.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\clinearfafeaturecalculator.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmontecarlo.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmontecarlo.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmulticontroller.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmulticontroller.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmultipolemodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmultipolemodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmyexception.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cmyexception.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cparameters.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cparameters.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpegasus.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpegasus.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpendulummodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpendulummodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpendulumtestscript.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpolicies.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpolicies.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpolicygradient.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cpolicygradient.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cprioritizedsweeping.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cprioritizedsweeping.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqetraces.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqetraces.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtconfig.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtcontrol.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtcontrol.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtcontroller.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtcontroller.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtmodelvisualizer.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqtmodelvisualizer.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqttestsuitechooser.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cqttestsuitechooser.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cregions.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cregions.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\creinforce.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\creinforce.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cresiduals.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cresiduals.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\crewardfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\crewardfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\crewardmodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\crewardmodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstate.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstate.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstatecollection.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstatecollection.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstatemodifier.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstatemodifier.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstateproperties.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cstateproperties.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\csupervisedlearner.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\csupervisedlearner.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctaxidomain.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctaxidomain.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctdlearner.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctdlearner.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctestscripts.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctestscripts.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctestsuit.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctestsuit.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctheoreticalmodel.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctheoreticalmodel.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctorchvfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctorchvfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctransitionfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ctransitionfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cutility.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cutility.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvaluepolicygradientlearner.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvaluepolicygradientlearner.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvaps.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvaps.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvetraces.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvetraces.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvfunctionfromqfunction.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvfunctionfromqfunction.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvfunctionlearner.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\cvfunctionlearner.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\qtcontrol.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\qtcontrol.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ril_debug.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\ril_debug.h"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\testsuitechooser.cpp"
    >
   </File>
   <File
    RelativePath=".\rltoolbox\testsuitechooser.h"
    >
   </File>
  </Filter>
 </Files>
 <Globals>
  <Global
   Name="RESOURCE_FILE"
   Value="IMy90Controller.rc"
  />
  <Global
   Name="{BA13A8F8-8612-4A93-A09C-3DFAC0D3AACF}"
   Value="CWiRobotSDK"
  />
 </Globals>
</VisualStudioProject>
                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
356:
357:
358:
359:
360:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
373:
374:
375:
376:
377:
378:
379:
380:
381:
382:
383:
384:
385:
386:
387:
388:
389:
390:
391:
392:
393:
394:
395:
396:
397:
398:
399:
400:
401:
402:
403:
404:
405:
406:
407:
408:
409:
410:
411:
412:
413:
414:
415:
416:
417:
418:
419:
420:
421:
422:
423:
424:
425:
426:
427:
428:
429:
430:
431:
432:
433:
434:
435:
436:
437:
438:
439:
440:
441:
442:
443:
444:
445:
446:
447:
448:
449:
450:
451:
452:
453:
454:
455:
456:
457:
458:
459:
460:
461:
462:
463:
464:
465:
466:
467:
468:
469:
470:
471:
472:
473:
474:
475:
476:
477:
478:
479:
480:
481:
482:
483:
484:
485:
486:
487:
488:
489:
490:
491:
492:
493:
494:
495:
496:
497:
498:
499:
500:
501:
502:
503:
504:
505:
506:
507:
508:
509:
510:
511:
512:
513:
514:
515:
516:
517:
518:
519:
520:
521:
522:
523:
524:
525:
526:
527:
528:
529:
530:
531:
532:
533:
534:
535:
536:
537:
538:
539:
540:
541:
542:
543:
544:
545:
546:
547:
548:
549:
550:
551:
552:
553:
554:
555:
556:
557:
558:
559:
560:
561:
562:
563:
564:
565:
566:
567:
568:
569:
570:
571:
572:
573:
574:
575:
576:
577:
578:
579:
580:
581:
582:
583:
584:
585:
586:
587:
588:
589:
590:
591:
592:
593:
594:
595:
596:
597:
598:
599:
600:
601:
602:
603:
604:
605:
606:
607:
608:
609:
610:
611:
612:
613:
614:
615:
616:
617:
618:
619:
620:
621:
622:
623:
624:
625:
626:
627:
628:
629:
630:
631:
632:
633:
634:
635:
636:
637:
638:
639:
640:
641:
642:
643:
644:
645:
646:
647:
648:
649:
650:
651:
652:
653:
654:
655:
656:
657:
658:
659:
660:
661:
662:
663:
664:
665:
666:
667:
668:
669:
670:
671:
672:
673:
674:
675:
676:
677:
678:
679:
680:
681:
682:
683:
684:
685:
686:
687:
688:
689:
690:
691:
692:
693:
694:
695:
696:
697:
698:
699:
700:
701:
702:
703:
704:
705:
706:
707:
708:
709:
710:
711:
712:
713:
714:
715:
716:
717:
718:
719:
720:
721:
722:
723:
724:
725:
726:
727:
728:
729:
730:
731:
732:
733:
734:
735:
736:
737:
738:
739:
740:
741:
742:
743:
744:
745:
746:
747:
748:
749:
750:
751:
752:
753:
754:
755:
756:
757:
758:
759:
760:
761:
762:
763:
764:
765:
766:
767:
768:
769:
770:
771:
772:
773:
774:
775:
776:
777:
778:
779:
780:
781:
782:
783:
784:
785:
786:
787:
788:
789:
790:
791:
792:
793:
794:
795:
796:
797:
798:
799:
800:
801:
802:
803:
804:
805:
806:
807:
808:
809:
810:
811:
812:
813:
814:
815:
816:
817:
818:
819:
820:
821:
822:
823:
824:
825:
826:
827:
828:
829:
830:
831:
832:
833:
834:
835:
836:
837:
838:
839:
840:
841:
842:
843:
844:
845:
846:
847:
848:
849:
850:
851:
852:
853:
854:
855:
856:
857:
858:
859:
860:
861:
862:
863:
864:
865:
866:
867:
868:
869:
870:
871:
872:
873:
874:
875:
876:
877:
878:
879:
880:
881:
882:
883:
884:
885:
886:
887:
888:
889:
890:
891:
892:
893:
894:
895:
896:
897:
898:
899:
900:
901:
902:
903:
904:
905:
906:
907:
908:
909:
910:
911:
912:
913:
914:
915:
916:
917:
918:
919:
920:
921:
922:
923:
924:
925:
926:
927:
928:
929:
930:
931:
932:
933:
934:
935:
936:
937:
938:
939:
940:
941:
942:
943:
944:
945:
946:
947:
948:
949:
950:
951:
952:
953:
954:
955:
956:
957:
958:
959:
960:
961:
962:
963:
964:
965:
966:
967:
968:
969:
970:
971:
972:
973:
974:
975:
976:
977:
978:
979:
980:
981:
982:
983:
984:
985:
986:
987:
988:
989:
990:
991:
992:
993:
994:
995:
996:
997:
998:
999:
1000:
1001:
1002:
1003:
1004:
1005:
1006:
1007:
1008:
1009:
1010:
1011:
1012:
1013:
1014:
1015:
1016:
1017:
1018:
1019:
1020:
1021:
1022:
1023:
1024:
1025:
1026:
1027:
1028:
1029:
1030:

Select allOpen in new window

 

by: Gabriela1Posted on 2009-10-21 at 15:10:41ID: 25629037

it also should build as it is a 1:1 copy of the I90Controller sample

- After that you could substitute files in the sample with your code


I did what you asked me to do ..and I did not see any copyy of the I90controller...I tried to run it..press F5 but I had an error

Unable to start program 'c:\Doc and Settings\I90controllersamplecodeforVs2008\Imy90controller\Debug\IMy90controller.exe ...the system cannot find the file specified.

I checked and there are files like

IMy90Controller.exe.embed.manifest and 3 more almoste the same but no .exe simple.

 

by: itsmeandnobodyelsePosted on 2009-10-21 at 17:46:17ID: 25629866

Did it open in Visual Studio when you double-click on the IMy90Controller.vcproj?

If so, it created a new solution file which is IMy90Controller.sln.

Any further start would happen via the solution file.

In Visual Studio you should try to build the new project (before run it). Right-Click at the top entry of the project tree and choose Rebuild All.

If there are errors, check the files listed in the project tree. Try to open them. If they don't open, there is a path problem. You should get error messages like 'Could not open file c:\documents and settings\...' what should give you a clue what was wrong.

 

by: itsmeandnobodyelsePosted on 2009-10-21 at 18:08:22ID: 25629986

In the .vcproj file above I found a path for 'Additional Depenencies'

"&quot;C:\Documents and Settings\ogvalent\Desktop\IMy90Controller_V2\IMy90Controller_DRI\RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b\Release\RL Toolbox Release.lib&quot;"

The &quot; is an UTF-8 encoding for " , what is ok.

But what is ogvalent? And by my substitution of I90Controller by IMy90Controller, unfortunately, I changed also the folders I90Controller_V2 and I90Controller_DRI to IMy90Controller_V2 and IMy90Controller_DRI.

But what are those folders for?  Why is the RL Toolbox installed below I90Controller_V2\I90Controller_DRI ? And why is your new project IMy90Controller now at 'c:\Doc and Settings\I90controllersamplecodeforVs2008\Imy90controller\ what doesn't fit to the above path.

I think if you would have installed the RL Toolbox at c:\projects\rltoolbox and the I90Controller at c:\projects\i90controller and the Torch3 at c:\projects\torch3  instead of putting all those folders deeper and deeper into new paths ...

You at least must correct my wrong substitution.

Close the Visual Studio. Open the IMy90Controller with a text editor and search for IMy90Controller. If you find a wrong path, make it correct.

You said the I90Controller sample could be build and runs. But with those paths I can't believe that it ever had worked ...



 

by: itsmeandnobodyelsePosted on 2009-10-21 at 18:18:59ID: 25630085

It is 3 in the morning here. I goto bed.

Tomorrow evening I'll be at home and can build the sample project with my VS2008. I think I'll be able to post a valid .vcproj file for a copy of the I90Controller then. It would contain only relative paths like ..\torch3\...  That way we only have to move the top folders and their branch to a new - much simpler - directory tree. Do you agree?

 

by: Gabriela1Posted on 2009-10-21 at 19:00:42ID: 25630262

In Visual Studio you should try to build the new project (before run it). Right-Click at the top entry of the project tree and choose Rebuild All.

I try it and I got this..

1>------ Skipped Rebuild All: Project: IMy90Controller, Configuration: Debug Win32 ------
1>Project not selected to build for this solution configuration
========== Rebuild All: 0 succeeded, 0 failed, 1 skipped ==========

But what is ogvalent?
is my name of my account. I am in the university and I have an account on this computer.

The rest of the things I do not really understand...what should I do?

I


Tomorrow evening I'll be at home and can build the sample project with my VS2008. I think I'll be able to post a valid .vcproj file for a copy of the I90Controller then. It would contain only relative paths like ..\torch3\...  That way we only have to move the top folders and their branch to a new - much simpler - directory tree. Do you agree?

So what do you want me to do?

I should do this?

think if you would have installed the RL Toolbox at c:\projects\rltoolbox and the I90Controller at c:\projects\i90controller and the Torch3 at c:\projects\torch3  instead of putting all those folders deeper and deeper into new paths ...

I do not really understand how is it going to woprk for us...making it path easy..because the sampled worked before....using the same path.

 

by: Gabriela1Posted on 2009-10-21 at 19:33:15ID: 25630380


I am going to do it all over again

- create a folder below your project directory - say rltoolbox.
- copy all source files from
        RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b
    to that new folder
  - add a new folder to project tree say RL-Toolbox
  - add the new .cpp and .h files from folder yourproject\rltoolbox
     to the folder in the project tree by right-clicking on the folder and
     choosing 'Add Existing Item ...'

And then you can tell me what to do next...hope it is working because nothiing seems to work..I alerady sped alot of time on this and I am at the end of my strengths.

 

by: Gabriela1Posted on 2009-10-21 at 19:53:05ID: 25630449

I did take from scratch but I have this error

ttings\ogvalent\desktop\i90controller_samplecode_forvs2008\i90controller_dri\cgridworldmodel.h(39) : fatal error C1083: Cannot open include file: 'ctransitionfunction.h': No such file or directory
1>I90ControllerDlg.cpp
1>c:\documents and settings\ogvalent\desktop\i90controller_samplecode_forvs2008\i90controller_dri\cgridworldmodel.h(39) : fatal error C1083: Cannot open include file: 'ctransitionfunction.h': No such file or directory
1>qtcontrol.cpp

I have this transitionfunction.h in torch3 and in rltoolbox.

 

by: itsmeandnobodyelsePosted on 2009-10-22 at 02:27:05ID: 25632146

>>>> Project not selected to build for this solution configuration
Means you have to switch from Debug to Release (or vice versa) as the project  file contains only one of those configurations.

>>>> how is it going to woprk for us...making it path easy..because the sampled worked before....using the same path.

The main problem is not the long paths but that there were different paths which rely on some temporary copy. For example a path part like  "Desktop\IMy90Controller_V2\IMy90Controller_DRI\" actually never should have been used somewhere in a path settings, but it was. If you later move some data to some other - better - location but do not remove that settings, it works as long as those folders still exist. But if you ever would clean your copies or make changes to the base, you would get bad problems.

>>>> And then you can tell me what to do next...hope it is working because nothiing seems to work..I alerady sped alot of time on this and I am at the end of my strengths.

Yes, I will try to help you.

What you can do:

1. Are you allowed to move your projects from below c:\"Documents and Settings\ogvalent to - say c:\ogvalent? If yes, do it. If no, it is not the main problem, but would have made something easier.

In any case I suggest to make clearer and simpler - and especially unique - folder structures *before* we start to add a new project that uses those structures.

That means you would

    - create a folder c:\projects if possible
    - if not create a new folder projects below
        c:\document and settings\ogvalent

    - create a folder torch3 below the new projects folder
    - create folders lib and include below torch3
    - open the VS2003 zip file for RL Toolbox and extract all header files
      that belong to the torch3  to the torch3\include directory
    - extract torch3.lib to the torch3\lib folder

    - create a folder rltoolbox below the new projects folder
    - create a folder lib and include below rltoolbox
    - extract all files from the VS2003 zip at and below
      RL_Toolbox_Windows_Source_20b\RL_Toolbox_Windows_Source_20b
      to the new rltoolbox folder.
    - locate the  .vcproj file in the rltoolbox folder
      (if in below folder move it up to the rltoolbox folder)
    - rename it to rltoolbox.vcproj and edit it with a text editor
    - edit the toolbox name, e. g. replace it by RLToolbox.
    - close the .vcproj and double-click on it.
    - It should open with Visual Studio showing the new name
    - Ignore errors about not finding project files. That is because of
      moving the .vcproj file.
    - check the folders defined in Tools - Options - ... VC Directories
        + for 'Include Files' and 'Library Files' there only should be valid paths
        + remove all paths pointing to the old RLToolbox folders
        + add the absolute paths to the new rltoolbox\lib and torch3\lib to the
           directories for 'Library Files' and the absolute paths to the new
           rltoolbox\include and torch3\include to the 'Include Files'
        Note, those settings are *not* for the RLToolbox project itself but for
        your additional projects where you want to use the RLToolbox and Torch3
   
     - Back to the RLToolbox project
       + close the Visual Studio and move all header files (.h and .hpp)
          from rltoolbox folder (or below) to the rltoolbox\include folder
       + reopen the Visual Studio with the rltoolbox.sln (created by Visual Studio)
       + try to open the files in the project tree
       + if they do not open there is a path problem
            - remove the file from project tree
            - right-click at the folder in project tree where it resided
            - choose 'Add existing item...' and locate the removed file in or below
              the new rltoolbox folder.
            - add it again to the project tree
          If there are many files with the same problem you could remove
          and add them together
     - Finally check the configurations
        + you should have Release and Debug configuration
        + the project should build a Win32 library (I'll check that when I am at home)
        + The Code Generation should have multi-threaded
           (multi-threaded debug in debug confguration)
        + the resulting .lib file should be build in the rltoolbox\lib folder
           (you also could copy it after build using the Post-Build Event)
        + I would use filenames like rltoolboxd.lib (Debug) and rltoolbox.lib
        + the goal is to have a own library for the rltoolbox, same as with torch3
     - Yoy now can try to build in Debug configuration
     - Don't worry if you have a cillion of errors. That is because of moving .vcproj
       file. It won't find headers of torch3 and rltoolbox (probably).
     - Goto Project - Properties - All Configurations - C++ - General ...
         + add .\include to the 'Additional Include Directories'
         + add ..\torch3\include to the ''Additional Include Directories'
         + remove all absolute paths from those directories (if existing)
         + remove all paths to the old RL Toolbox (if existing)
      - Goto Project - Properties - All Configurations - Linker- General ...
         + add ..\torch3\lib to the 'Additional Library Directories'
         + remove all absolute paths from those directories (if existing)
         + remove all paths to the old RL Toolbox (if existing)
      - Goto Project - Properties - All Configurations - Linker- Input ...
         + add torch3.lib to the 'Additional Dependencies'


 

by: Gabriela1Posted on 2009-10-22 at 06:25:52ID: 25633858

>>>> Project not selected to build for this solution configuration
Means you have to switch from Debug to Release (or vice versa) as the project  file contains only one of those configurations.

It worked...now I can work with it as it is? I swithed to Release.

 

by: Gabriela1Posted on 2009-10-22 at 06:43:42ID: 25634056

- check the folders defined in Tools - Options - ... VC Directories
        + for 'Include Files' and 'Library Files' there only should be valid paths
        + remove all paths pointing to the old RLToolbox folders
        + add the absolute paths to the new rltoolbox\lib and torch3\lib to the
           directories for 'Library Files' and the absolute paths to the new
           rltoolbox\include and torch3\include to the 'Include Files'
        Note, those settings are *not* for the RLToolbox project itself but for
        your additional projects where you want to use the RLToolbox and Torch3

So...I should not check the folders defined Tools - Options - ... VC Directories in rltoolbox.vcproj?

The name is now rltoolbox, and the solution has the same name.I've changed the name inside the .vcproj.

 

by: Gabriela1Posted on 2009-10-22 at 07:02:31ID: 25634287

Goto Project - Properties - All Configurations - Linker- General ...

Is funny there is no Linker..is only Librarian

 

by: Gabriela1Posted on 2009-10-22 at 07:11:50ID: 25634398

rltoolbox\lib folder
           (you also could copy it after build using the Post-Build Event)

I have two .lib, as I said rltoolboxd.lib in Debug folder and rltoolbox.lib in Releease foder. Can i just copy them in rltoolbox/lib?

 

by: Gabriela1Posted on 2009-10-22 at 16:04:52ID: 25639977

Hi,

Did you get any results?

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 00:38:07ID: 25642004

>>>> Is funny there is no Linker..is only Librarian
That is good. The RLToolbox is a library project where the output isn't a .exe or a .dll but only a .lib.

>>>> Can i just copy them in rltoolbox/lib?
Yes. But the goal is to have it be copied automatically after each build.

There are two ways:

First and easiest is to change the path in Configuration - Librarian - Outputfile to

    .\lib\$(ProjectName).lib

The . is for the folder where the .vcproj resides (the project folder), i. e. it would go to rltoolbox\lib\rltoolbox.lib

Second (BUT only alternatively!!!) is in Build Events - Post Build Event - Command Line add the following copy command

      copy /Y $(OutDir)\$(ProjectName).lib $(ProjectDir)\lib\

It would - after build - copy the .lib from Debug or Release folder to the rltoolbox\lib folder. As your names now don't have spaces, it should work. If not open a command window (cmd) using the CTRL+R shortcut, navigate to the rltoolbox folder using cd (e. g.  cd \ogvalent\projects\rltoolbox or cd "\documents and settings\ogvalent\projects\rltoolbox"). Here do

  set OutDir=.\debug
  set ProjectName=rltoolbox
  set ProjectDir=.

Note, you may not have any spaces left or right of the =

Try the copy command (which is equivalent to the one what failed in Visual Studio)

   copy /Y %OutDir%\%ProjectName%.lib %ProjectDir%\lib\

and report the error you have.



   

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 00:39:49ID: 25642012

Did you try a build after all those settings?

 

by: Gabriela1Posted on 2009-10-23 at 07:02:20ID: 25644506

Did you try a build after all those settings?
 
I tried to build yesterday and it was ok
 I did not yet do the part that you explained about  First and easiest is to change the path in Configuration - Librarian - Outputfile to

    .\lib\$(ProjectName).lib

The . is for the folder where the .vcproj resides (the project folder), i. e. it would go to rltoolbox\lib\rltoolbox.lib


Now what I do not know is what you want me to do about I90Controller...because that is the project I have to link it with...

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 08:38:41ID: 25645460

>>>> I did not yet do the part that you explained about  First
If the build was ok, you also can copy it manually for to go further.

>>>> I do not know is what you want me to do about I90Controller...

Here we do similar:

    - create a folder I90Controller below projects
    - extract all files from the .zip in and below the folder where the I90Controller.vcproj exists
      and copy them to the new project folder
    - you might want to rename it to your own name
          - edit the I90Controller.vcproj with a text editor and change the name
             (don't use spaces in the name and change also the I90Controller.exe filename)
          - check for paths in the .vcproj
              + it actually MUST not have absolute path names (that is what begins with a c:\)
              + correct the relative paths to rltoolbox.lib (old: RL Toolbox Debug) and torch3 (if any)
                 It should be now  ..rltoolbox\lib ..\torch3\lib fpr paths to libraries
                 It should be now  ..rltoolbox\include ..\torch3\include for paths to header files
          - close the .vcproj
          - double-click on it and check the following in Visual Studio
               - Additional Include Directories in the C++ settings
                     should be ..\rltoolbox\include and ..\torch3\include
          - check the files in the project tree:
               if there are the .cpp and .h of RLToolbox again, delete them from tree.
               we now will link those files from rltoolbox.lib
          - build the project
 
               - Additional Library Directories in the Linker settings
                     should be ..\rltoolbox\lib and ..\torch3\lib
               - Additional Dependencies in the Linker-Input settings
                     add torch3.lib and rltoolboxd.lib (for Debug config) and rltoolbox.lib (for Release)
                     remove other torch3 or RL Toolbox if there
                 
                         


             
   

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 08:40:53ID: 25645490

         - check the files in the project tree:
               if there are the .cpp and .h of RLToolbox again, delete them from tree.
               we now will link those files from rltoolbox.lib
          - build the project


That part must be moved at end of my comment.

Here is the full howtodo again
--------------------------------------
Here we do similar:

    - create a folder I90Controller below projects
    - extract all files from the .zip in and below the folder where the I90Controller.vcproj exists
      and copy them to the new project folder
    - you might want to rename it to your own name
          - edit the I90Controller.vcproj with a text editor and change the name
             (don't use spaces in the name and change also the I90Controller.exe filename)
          - check for paths in the .vcproj
              + it actually MUST not have absolute path names (that is what begins with a c:\)
              + correct the relative paths to rltoolbox.lib (old: RL Toolbox Debug) and torch3 (if any)
                 It should be now  ..rltoolbox\lib ..\torch3\lib fpr paths to libraries
                 It should be now  ..rltoolbox\include ..\torch3\include for paths to header files
          - close the .vcproj
          - double-click on it and check the following in Visual Studio
               - Additional Include Directories in the C++ settings
                     should be ..\rltoolbox\include and ..\torch3\include
               - Additional Library Directories in the Linker settings
                     should be ..\rltoolbox\lib and ..\torch3\lib
               - Additional Dependencies in the Linker-Input settings
                     add torch3.lib and rltoolboxd.lib (for Debug config) and rltoolbox.lib (for Release)
          - check the files in the project tree:
               if there are the .cpp and .h of RLToolbox again, delete them from tree.
               we now will link those files from rltoolbox.lib
          - build the project
 
                     remove other torch3 or RL Toolbox if there

--------------------------------------

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 08:59:12ID: 25645690

I tried to find the I90Controller sample on the net. But without success. Can you show me a link?

 

by: Gabriela1Posted on 2009-10-23 at 09:05:49ID: 25645755

There is no link where you can get it but I had it put on 4shared. This is the link

http://www.4shared.com/file/140741162/ae7be729/i90Controller_SampleCode_forVS2008.html

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 09:37:43ID: 25646051

Ok. I got it.

It has the following directory structure

I90Controller
    I90Controller_SampleCode_forVS2008
         I90Controller

Extract all files and folders of the lower I90Controller to your projects\i90controller.
Extract the DROBOTSENTINELCONTROL.ocx and put it to a new folder projects\i90controller\bin

Remove all files .ncb, .aps, .suo, .sln, .plg which are temporaries of a foreign system.

I saw a I90Controller.UC_CAMPUS.ogvalent.vcproj ?

Is it a special version for you?



Then double-click the i90controller.vcproj
       

 

by: Gabriela1Posted on 2009-10-23 at 09:44:54ID: 25646134

I saw a I90Controller.UC_CAMPUS.ogvalent.vcproj ?
 
I do not know exactly..it is build whenI first buil the project.

 

by: Gabriela1Posted on 2009-10-23 at 09:45:54ID: 25646145

The ocx. must to be rgistered.

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 09:51:23ID: 25646205

The I90Controller.vcproj has no links to RL Toolbox so far, right?

If you made the above c++ and linker setting you should be able to use classes or functions of RLToolbox.


>>>> I tried to build yesterday and it was ok

I had a cillion of warnings regarding comparing int to unsigned int, strcpy, scanf, printf, ...

You also?

 

by: Gabriela1Posted on 2009-10-23 at 09:52:34ID: 25646215

had a cillion of warnings regarding comparing int to unsigned int, strcpy, scanf, printf, ...

You also?
Yes...but only warnings.

 

by: Gabriela1Posted on 2009-10-23 at 09:53:25ID: 25646228

The I90Controller.vcproj has no links to RL Toolbox so far, right?

If you made the above c++ and linker setting you should be able to use classes or functions of RLToolbox.


now I am not able to work on that but please tell me if you will try if it is working.

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 09:55:11ID: 25646248

>>>> The ocx. must to be rgistered

Hmmm. It also can be registered in the .manifest.  Open the .manifest with a text editor and search for the .ocx  If it is the .manifest you probably don't need to register it. Check if the path to the .ocx is correct.

If the .manifest doesn't know of the .ocx, open a command window and navigate to the folder where the .ocx resides. Type

   regsvr32 DRROBOTSentinelCONTROL.OCX



 

by: itsmeandnobodyelsePosted on 2009-10-23 at 10:02:38ID: 25646310

In debug mode I got an assertion when some controls should be instantiated from resources.

When I open the resource file it tells that three (more) active-x controls needs to be installed and registered. Any idea what controls were missing?

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 10:17:16ID: 25646414

I checked the resource file and the controls have the ids

   IDC_DRROBOTSDKCONTROLCTRL1
   IDC_DRROBOTSDKCONTROLCTRL2
   IDC_VITAMINCTRL

The first two look as if they were of the type that comes with the OCX. But registering at the command line doesn't help.

I have not much experience in using active-x controls in Visual Studio. I mean to remember that those controls must be installed somehow for use in Visual Studio but I have to check where it must be done.

Probably a reason for asking a new q. in EE?

 

by: Gabriela1Posted on 2009-10-23 at 10:28:42ID: 25646518

yes..sorry abou that...you need to have vitaminctrl..I think I should put that one also on 4shared

http://www.4shared.com/file/143056174/d2594871/AxisCamera.html
http://www.4shared.com/file/143056745/8afe5796/VivotekCamera.html

sorry about that,now it should work.

 

by: Gabriela1Posted on 2009-10-23 at 11:00:15ID: 25646784

I checked the resource file and the controls have the ids

   IDC_DRROBOTSDKCONTROLCTRL1
   IDC_DRROBOTSDKCONTROLCTRL2
   IDC_VITAMINCTRL


here you can find the links wher you can down and install the missing stuff
 
http://www.4shared.com/file/143056174/d2594871/AxisCamera.html
http://www.4shared.com/file/143056745/8afe5796/VivotekCamera.html


 

by: itsmeandnobodyelsePosted on 2009-10-23 at 13:24:29ID: 25648207

It seems as I achieved to successfully installing the vitamin control (vivotek). But there are still two controls not working...

Don't know what to do with the axiscamera. Executed the .exe avalable from download, but it doesn't happen anything.

Can you run the I90Controller? And what does it? Where is the connection to RLToolbox?

 

by: Gabriela1Posted on 2009-10-23 at 13:31:28ID: 25648271

It seems as I achieved to successfully installing the vitamin control (vivotek). But there are still two controls not working...

You already registered the .ocx?
I also have installed SDK2008..I do not know if that is the problem or not..would you like me to sent it ot you?

Can you run the I90Controller? And what does it?
When I run it, a window comes up with buttons and edit boxes , where I can read some sensor data and I can see viideo from a camera.

 

by: Gabriela1Posted on 2009-10-23 at 13:41:47ID: 25648369

Maybe this version is better...but I do not think i makes any difference

http://www.4shared.com/file/140738988/1116e19b/Copy_of_I90Controller.html


i know that every time I had to install this SDk_June2008. The problem is I do not know where I download...and on 4shared I cannot upload it because it is too big.

 

by: itsmeandnobodyelsePosted on 2009-10-23 at 16:55:23ID: 25649931

>>>> When I run it, a window comes up with buttons and edit boxes , where I can read some sensor data and I can see viideo from a camera.

Don't think that it is essential whether that dialog comes up at my system. I don't have a camera available anyhow.

What do you want to do with the RL Toolbox?

 

by: Gabriela1Posted on 2009-10-23 at 22:35:05ID: 25650958

Don't think that it is essential whether that dialog comes up at my system. I don't have a camera available anyhow.

you do not neeed a camera...because  you have to connect with it...anyhow.

I tried for example to declare

char *gridworldFileName = "Gridworld_10x10.txt";
CGridWorldModel *gridworldModel = new CGridWorldModel(gridworldFileName, 50);

just a simple declaration to see if it is working..

Where   "Gridworld_10x10.txt" is:

Gridworld
Size: 10x10
StartValues: 1, 2
TargetValues: 5, 4
ProhibitedValues: 9, 8


9999999999
9000000009
9059000009
9999000009
9009099009
9000009009
9909999999
9000000009
9000000019
9999999999


This is the simpel thing...only a small example..to see if it is working.

So to declare that in I90Controller.cpp and to see if it is working..if it is recognized.

 

by: itsmeandnobodyelsePosted on 2009-10-24 at 05:00:44ID: 25651791

>>>> you do not neeed a camera...because  you have to connect with it...anyhow.
But I don't have a camera to connect with either ...

>>>> I tried for example to declare
>>char *gridworldFileName = "Gridworld_10x10.txt";
>>CGridWorldModel *gridworldModel = new CGridWorldModel(gridworldFileName, 50);


Ok. I added those statements in main function of i90controller.cpp above the creation of the dlg.

Then I added #include "cgridworldmodel.h" below #include "I90ControllerDlg.h"

After getting lots of errors because of duplicate modules, I got back to rltoolbox project and changed the C++ Codegeneration settings to Mutithreaded Debug dll, so that it fits to the model in the I90Controller. I made a rebuild of RLToolboxd.lib (my post-build event copied the .lib to the rltoolbox\lib directory). Then rebuilding I90Controller I got

1>Embedding manifest...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>Build log was saved at "file://e:\projects\i90controller\Debug\BuildLog.htm"
1>I90Controller - 0 error(s), 5 warning(s)
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========



>>>> So to declare that in I90Controller.cpp and to see if it is working..if it is recognized.

I run the the above program with a debug break above dialog creation and got an assertion in

void CGridWorld::load(char* filename)
{
    FILE* stream = fopen(filename, "r");
    if (!stream)
    {
       throw new std::runtime_error("Gridworld: Datei konnte nicht gefunden werden!");
    }
    load(stream);
    fclose(stream);
}

what means it didn't find a gridworld inputfile which probably must be passed as argument to the I90Controller.

NOT SO BAD ;-)

Can you repeat that?


 

by: itsmeandnobodyelsePosted on 2009-10-24 at 05:10:57ID: 25651831

>>>> what means it didn't find a gridworld inputfile

I stored the Gridworld_10x10.txt - you posted above - in my project directory and now it successfully created a grid world model.

It died on one of the controls probably the robotcontrol.

 

by: Gabriela1Posted on 2009-10-25 at 22:13:23ID: 25659755

Here we do similar:

    - create a folder I90Controller below projects
    - extract all files from the .zip in and below the folder where the I90Controller.vcproj exists
      and copy them to the new project folder
    - you might want to rename it to your own name
          - edit the I90Controller.vcproj with a text editor and change the name
             (don't use spaces in the name and change also the I90Controller.exe filename)
          - check for paths in the .vcproj
              + it actually MUST not have absolute path names (that is what begins with a c:\)
              + correct the relative paths to rltoolbox.lib (old: RL Toolbox Debug) and torch3 (if any)
                 It should be now  ..rltoolbox\lib ..\torch3\lib fpr paths to libraries
                 It should be now  ..rltoolbox\include ..\torch3\include for paths to header files
          - close the .vcproj
          - double-click on it and check the following in Visual Studio
               - Additional Include Directories in the C++ settings
                     should be ..\rltoolbox\include and ..\torch3\include
               - Additional Library Directories in the Linker settings
                     should be ..\rltoolbox\lib and ..\torch3\lib
               - Additional Dependencies in the Linker-Input settings
                     add torch3.lib and rltoolboxd.lib (for Debug config) and rltoolbox.lib (for Release)
          - check the files in the project tree:
               if there are the .cpp and .h of RLToolbox again, delete them from tree.
               we now will link those files from rltoolbox.lib
          - build the project
 
                     remove other torch3 or RL Toolbox if there


I did what you've asked me but I get this error

1>------ Build started: Project: MyI90Controller, Configuration: Debug Win32 ------
1>Linking...
1>LINK : fatal error LNK1104: cannot open file 'Torch3.lib;rltoolboxd.lib;'

I added the 2 .lib to additional dependencies..

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 02:29:06ID: 25660654

>>>> cannot open file 'Torch3.lib;rltoolboxd.lib;'

remove the ; between both lib files. It must be a space.

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 02:29:46ID: 25660657

The settings are in Linker - Input.

 

by: Gabriela1Posted on 2009-10-26 at 09:19:05ID: 25663851

Now I have these errors

1>Linking...
1>msvcprtd.lib(MSVCP90D.dll) : error LNK2005: "public: class std::locale::facet * __thiscall std::locale::facet::_Decref(void)" (?_Decref@facet@locale@std@@QAEPAV123@XZ) already defined in rltoolboxd.lib(cparameters.obj)
1>libcpmtd.lib(locale0.obj) : error LNK2005: "void __cdecl _AtModuleExit(void (__cdecl*)(void))" (?_AtModuleExit@@YAXP6AXXZ@Z) already defined in msvcprtd.lib(locale0_implib.obj)
1>libcpmtd.lib(locale0.obj) : error LNK2005: __Fac_tidy already defined in msvcprtd.lib(locale0_implib.obj)
1>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static void __cdecl std::locale::facet::facet_Register(class std::locale::facet *)" (?facet_Register@facet@locale@std@@CAXPAV123@@Z) already defined in msvcprtd.lib(locale0_implib.obj)
1>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static class std::locale::_Locimp * __cdecl std::locale::_Getgloballocale(void)" (?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static class std::locale::_Locimp * __cdecl std::locale::_Init(void)" (?_Init@locale@std@@CAPAV_Locimp@12@XZ) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(locale0.obj) : error LNK2005: "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(locale0.obj) : error LNK2005: "public: static void __cdecl std::_Locinfo::_Locinfo_dtor(class std::_Locinfo *)" (?_Locinfo_dtor@_Locinfo@std@@SAXPAV12@@Z) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(ios.obj) : error LNK2005: "private: static void __cdecl std::ios_base::_Ios_base_dtor(class std::ios_base *)" (?_Ios_base_dtor@ios_base@std@@CAXPAV12@@Z) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(ios.obj) : error LNK2005: "public: static void __cdecl std::ios_base::_Addstd(class std::ios_base *)" (?_Addstd@ios_base@std@@SAXPAV12@@Z) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(xlock.obj) : error LNK2005: "public: __thiscall std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QAE@H@Z) already defined in msvcprtd.lib(MSVCP90D.dll)
1>libcpmtd.lib(xlock.obj) : error LNK2005: "public: __thiscall std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QAE@XZ) already defined in msvcprtd.lib(MSVCP90D.dll)
1>LIBCMTD.lib(setlocal.obj) : error LNK2005: __configthreadlocale already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: __CrtSetCheckCount already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(lconv.obj) : error LNK2005: _localeconv already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(tidtable.obj) : error LNK2005: __encode_pointer already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(tidtable.obj) : error LNK2005: __decode_pointer already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(winxfltr.obj) : error LNK2005: __XcptFilter already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(errmode.obj) : error LNK2005: ___set_app_type already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(dbghook.obj) : error LNK2005: __crt_debugger_hook already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: _exit already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: __exit already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: __cexit already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: __amsg_exit already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: __initterm_e already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(mlock.obj) : error LNK2005: __lock already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(mlock.obj) : error LNK2005: __unlock already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(atox.obj) : error LNK2005: _atoi already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(sprintf.obj) : error LNK2005: _sprintf already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(sprintf.obj) : error LNK2005: _sprintf_s already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xi_a already defined in msvcrtd.lib(cinitexe.obj)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xi_z already defined in msvcrtd.lib(cinitexe.obj)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xc_a already defined in msvcrtd.lib(cinitexe.obj)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xc_z already defined in msvcrtd.lib(cinitexe.obj)
1>LIBCMTD.lib(hooks.obj) : error LNK2005: "void __cdecl terminate(void)" (?terminate@@YAXXZ) already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(invarg.obj) : error LNK2005: __invalid_parameter already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(invarg.obj) : error LNK2005: __invoke_watson already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(dbgrptw.obj) : error LNK2005: __CrtDbgReportW already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(printf.obj) : error LNK2005: _printf already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(_file.obj) : error LNK2005: ___iob_func already defined in msvcrtd.lib(MSVCR90D.dll)
1>LIBCMTD.lib(fflush.obj) : error LNK2005: _fflush already defined in msvcrtd.lib(MSVCR90D.dll)
1>msvcrtd.lib(MSVCR90D.dll) : error LNK2005: _abort already defined in LIBCMTD.lib(abort.obj)
1>msvcrtd.lib(MSVCR90D.dll) : error LNK2005: __setmbcp already defined in LIBCMTD.lib(mbctype.obj)
1>LINK : warning LNK4098: defaultlib 'msvcrtd.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
1>LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
1>.\Debug/I90Controller.exe : fatal error LNK1169: one or more multiply defined symbols found
1>Build log was saved at "file://c:\Projects\MyI90Controller\Debug\BuildLog.htm"
1>MyI90Controller - 44 error(s), 2 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

I already rebuild the rltoolbox as dll.

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 11:04:22ID: 25664940

>>>> Now I have these errors

I already told you what to do above:

-------------------------------------
After getting lots of errors because of duplicate modules, I got back to rltoolbox project and changed the C++ Codegeneration settings to Mutithreaded Debug dll, so that it fits to the model in the I90Controller. I made a rebuild of RLToolboxd.lib (my post-build event copied the .lib to the rltoolbox\lib directory). Then rebuilding I90Controller I got
-------------------------------------

The problem is that when the RLToolbox was built with Multithreaded Debug and the I90Controller with Multithreaded Debug Dll, they latter was linking different system dlls but with the same symbols. That could be solved by building the RLToolbox library using the same code generation model.

 

by: Gabriela1Posted on 2009-10-26 at 11:12:07ID: 25665012

I already told you what to do above:

-------------------------------------
After getting lots of errors because of duplicate modules, I got back to rltoolbox project and changed the C++ Codegeneration settings to Mutithreaded Debug dll, so that it fits to the model in the I90Controller. I made a rebuild of RLToolboxd.lib (my post-build event copied the .lib to the rltoolbox\lib directory). Then rebuilding I90Controller I got
-------------------------------------

The problem is that when the RLToolbox was built with Multithreaded Debug and the I90Controller with Multithreaded Debug Dll, they latter was linking different system dlls but with the same symbols. That could be solved by building the RLToolbox library using the same code generation model.

I did this first time and it did not work..I rebuilf it after changing the settings and I still have the same errors.

 

by: Gabriela1Posted on 2009-10-26 at 11:34:32ID: 25665267

It is ok now....I made a small mistake...and now I have the same error with throw..

But now I have a assertion in debug...In Debug folder I have under MyI90Controller I have 2 .exe files MFC applications...one is called MyI90Controller.exe and another that is called I90Controller.exe...should it be 2 of them?

 

by: Gabriela1Posted on 2009-10-26 at 11:54:01ID: 25665453

I correct that one..I deleted the one who was extra but still I have a debug asserion failed.

 

by: Gabriela1Posted on 2009-10-26 at 12:14:56ID: 25665662

I put some breakpoints after

CI90ControllerDlg::CI90ControllerDlg(CWnd* pParent /*=NULL*/)
      : CDialog(CI90ControllerDlg::IDD, pParent)

there is another one

void CI90ControllerDlg::DoDataExchange(CDataExchange* pDX)

and it does not go inside...it just tells me that a debuf assertion failed. When trying to open the resources..to see the dialog it says that 2 activex conltrol must be installed or registered..and I do not understand..I already did this...for the other I90Controller and that is working...
My question is..if I have this project in another folder...like projects I have to register the .ocx again?

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 13:54:26ID: 25666788

>>>> one is called MyI90Controller.exe and another that is called I90Controller.exe...should it be 2 of them?
No, the MyI90Controller was an attempt before we tried to put all on a new base. Actually, if you did as I suggested above, the MyI90Controller.exe never could show up. I always told you to extract the sources freshly from the .zip files. But it seems that you copied some branches from former attempts what might spoil the new approach. If you didn't use the original .vcproj project files but some where youself don't know what was changed, we never will have a success.

>>>> if I have this project in another folder...like projects I have to register the .ocx again?
You have to register again if you moved the .ocx to another place.

>>>> it just tells me that a debuf assertion failed.
That most likely is one of the active-x controls I also can't get to run. The DoDataExchange has three tasks: first, it attaches the control to the dialog or view so that the dialog or view can get and handle messages for the control. Second, it moves data from the (dialog or view) class to screen. Third, it moves data from screen (e. g. by user input) to the (dialog or view) class which is the parent of the control. You should choose 'Retry' after the assertion to find out which of the three tasks failed (I would assume it is the first one).

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 14:01:12ID: 25666862

I don't know whether you really need the active-x controls used in the I90Controller. I personally don't like those controls because it is so often that they don't work outside of the environment they were developed.

Note, the grid world model was successfully created with your project. You probably can proceed without using the controls. Look at the sample code that came with the RL Toolbox.

 

by: Gabriela1Posted on 2009-10-26 at 14:10:43ID: 25666951

Note, the grid world model was successfully created with your project. You probably can proceed without using the controls. Look at the sample code that came with the RL Toolbox.

How can I proceed if it does not let me do the debug...i cannot run it.

 

by: Gabriela1Posted on 2009-10-26 at 14:59:54ID: 25667381

It is ok..now it is working..because I changed the I90Controller with one that works Thank you for all your help. now I do not know how to mark you..because we spend a lot of time on this and I have to give you points ..and I want to give you more.
I also have a big request...can you please keep the library and all your work...because now I will start woking with it and if I have problems it is easier to ask you..
Thank you!

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 15:21:31ID: 25667582

>>>> because we spend a lot of time on this and I have to give you points ..and I want to give you more.
I thank you very much. But points are not important as I'll leave the EE ...

>>>> can you please keep the library and all your work...because now I will start woking with it and if I have problems it is easier to ask you..

Yes, I'll keep the libraries but you would need to adress me directly in future. Check my profile for my email address.

 

by: Gabriela1Posted on 2009-10-26 at 21:42:00ID: 31643064

I learned a lot from the responses and he/she is a very good programmer...so a genius.

 

by: Gabriela1Posted on 2009-10-26 at 21:42:55ID: 25669190

Yes, I'll keep the libraries but you would need to adress me directly in future. Check my profile for my email address.

I checked your profile but there is no e-mail...maybe I am not in the right place.

 

by: itsmeandnobodyelsePosted on 2009-10-26 at 23:21:58ID: 25669491

.... maybe I am not in the right place.

It is some kind of a puzzle ;-)

 I EN EF O  AD  ES BE ES DOUBLEU E BE DOT I EN EF O


i. e. the first 5 letters are 'info@' and the last five are '.info'

 

by: Gabriela1Posted on 2009-10-27 at 08:40:34ID: 25673658

I've sent you a messge I hope you got it.

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...