Post Reply 
Compiling Proximodo Visual Studio / VC 2008 - wxWidgets 2.8.10 -
Feb. 01, 2010, 11:58 PM
Post: #1
Compiling Proximodo Visual Studio / VC 2008 - wxWidgets 2.8.10 -
Hi there! Crazy
Since the lack of information I decided to make a little tutorial to help people who are interested in compile proximodo in Visual Studio 2008.
I hope this will encourage people to revive this fantastic project. Thumbs Up
If you follow all the following steps you will be able to compile Proxi HOWEVER you will not get the "best" build, it will be very unstable, may be because the new librarys used are different or incorrect.
I'm gladly to contribute with this project if there is a renewed interest to continue this project. Wink



1) Getting stuff:
A. Visual C++ 2008: http://www.microsoft.com/express/Downloa...Visual-CPP
B. wxWidgets latest stable version: http://www.wxwidgets.org/downloads/
C. zlib for windows: http://gnuwin32.sourceforge.net/packages/zlib.htm
D. Proximodo 0.2.5: http://sourceforge.net/projects/proximodo/

2) Installing VS and wxWidgets:
A. Install Visual Studio, no so much to explain.
B. Install wxWidgets in C:\wxWidgets-2.8.10 or choose a different path if you want.

3) Create an environment variable for the wxWidgets path:
A. Click on Start.
B. Right Click on Computer.
C. Select Properties.
D. Click on Advanced System Settings.
E. Click on Environment Variables.
F. Click on New.
G. create a new variable.
Name: WXWIN
Path: C:\wxWidgets-2.8.10
H. Click OK, OK, and OK.

4) Compile the wxWidgets Libraries:
A. Open the following folder C:\wxWidgets-2.8.10\build\msw
B. Locate the file wx.dsw and open it with VS.
C. VS will ask you to convert the files, click on Yes To All.
D. Now Click on Build > Configurarion Manager.
E. Set Active Solution Configuration to Debug, Click on Close.
F. Click on Build > Build Solution. May take 2-4 mins to compile.
G. Click on Build > Configurarion Manager again.
H. Set Active Solution Configuration to Release, Click on Close.
I. Click on Build > Build Solution.
J. Close Visual Studio.


5) Install zlib:
A. Uncompress the content of zlib123-dll.zip
B. Copy zlib1.dll to your system directory. I.E: C:\WINDOWS\system32
C. Copy the files in include directory to C:\Program Files\Microsoft Visual Studio 9.0\VC\include
D. Copy the files in lib directory to C:\Program Files\Microsoft Visual Studio 9.0\VC\lib.

6) Creating new Proximodo project:
A. Open Visual Studio.
B. Click on File > New > Project.
C. Select Project Type General > Empty Project.
D. Give the name Proximodo.
E. Open Proximodo_0.2.5_src.zip and Uncompress all files from the src folder in your solution directory.
F. Select all .h and .cpp files in your project directory, drag and drop those files over the project name.
All .h files should be automatically added in the "Header Files" section.
All .cpp files should be automatically added in the "Source Files" section.
G. Drag and drop the Proximodo.ico over the project name.
Proximodo.ico should be automatically added in the "Resource Files" section.
H. Open with a text editor the file Proximodo_private.rc.
I. Replace the line:
Code:
#include "../../MinGW/include/wx/msw/wx.rc"
For:
Code:
#include "C:/wxWidgets-2.8.10/include/wx/msw/wx.rc"
J. Comment the following line adding // at the begining
Code:
1 24 "../bin/Proximodo.exe.Manifest"
K. Close the text editor.
L. Select Proximodo_private.rc in your project directory, drag and drop the file over the project name.
Proximodo_private.rc should be automatically added in the "Resource Files" section.

7) Configuring Project properties:
A. Right Click on Proximodo project > select Properties (Don’t right click the Solution name, make sure to right click the project under the solution name.)
B. In the top left of the windows Click on Configuration > select "All Configurations".
C. Click to expand Configuration Properties.
D. Click to expand C/C++.
E. Click to highlight General.
Enter the following in Additional Include Directories:
Code:
"$(WXWIN)\include";"$(WXWIN)\lib\vc_lib\mswd"
F. Click to expand Linker.
G. Click to highlight General.
Enter the following in Additional Library Directories:
Code:
"$(WXWIN)\lib\vc_lib"
H. Click to highlight System.
Select the following in SubSystem:
Code:
Windows (/SUBSYSTEM:WINDOWS)
I. Click to expand Resources.
J. Click to highlight General.
Enter the following in Additional Include Directories:
Code:
"$(WXWIN)\include";"$(WXWIN)\lib\vc_lib\mswd"


K. In the top left of the windows Click on Configuration > select "Debug".
L. Click to expand C/C++.
M. Click to highlight Preprocessor.
Enter the following in Preprocessor Definitions:
Code:
WIN32;__WXMSW__;_WINDOWS;_DEBUG;__WXDEBUG__
N. Click to expand Linker.
O. Click to highlight Input.
Enter the following in Additional Dependencies:
Code:
wxmsw28d_core.lib wxmsw28d_adv.lib wxbase28d.lib wxbase28d_net.lib wxzlibd.lib comctl32.lib rpcrt4.lib wsock32.lib
P. Click to expand Resources.
Q. Click to highlight General.
Enter the following in Preprocessor Definitions:
Code:
_DEBUG;__WXMSW__;__WXDEBUG__;_WINDOWS;NOPCH


R. In the top left of the windows Click on Configuration > select "Release".
S. Click to expand C/C++.
T. Click to highlight Preprocessor.
Enter the following in Preprocessor Definitions:
Code:
WIN32;__WXMSW__;_WINDOWS;_RELEASE;__WXRELEASE__
W. Click to expand Linker.
X. Click to highlight Input.
Enter the following in Additional Dependencies:
Code:
wxmsw28_core.lib wxmsw28_adv.lib wxbase28.lib wxbase28_net.lib wxzlib.lib comctl32.lib rpcrt4.lib wsock32.lib
Y. Click to expand Resources.
Z. Click to highlight General.
Enter the following in Preprocessor Definitions:
Code:
_RELEASE;__WXMSW__;__WXRELEASE__;_WINDOWS;NOPCH


You are now ready to build your Proximodo!! Cheers
If you get errors refer to Troubleshooting.

Troubleshooting:
PROBLEM: When I try to compile I get errors like:
: cannot convert parameter 1 from 'wxFrame *' to 'wxWindow *'
SOLUTION: Add this include in welcomescreen.cpp and windowcontent.cpp
Code:
#include <wx/frame.h>
PROBLEM: When I try to connect to a webstie Proximodo crashs
SOLUTION: This is a strange problem, sometimes rdirToHost has null value
Open Util.cpp and edit:
Code:
// Returns true if s2 begins with s1
bool CUtil::noCaseBeginsWith(const string& s1, const string& s2) {
    return equal(s1.begin(), s1.end(), s2.begin(), insensitive_compare());
}
change it to:
Code:
// Returns true if s2 begins with s1
bool CUtil::noCaseBeginsWith(const string& s1, const string& s2) {
    return false;// temp crashfix
    return equal(s1.begin(), s1.end(), s2.begin(), insensitive_compare());
}
If still crash delete the file settings.txt.


Hope this guide has been useful for you, and sorry if my english is not the best.

Special thanks to: Smile!
Shea for his old compiling tutorial
Rhyous for wxWidgets instalation tutorial
And Kuruden for Proximodo Hail Wink
Add Thank You Quote this message in a reply
Feb. 02, 2010, 10:31 PM (This post was last modified: Feb. 02, 2010 10:54 PM by bugger.)
Post: #2
RE: Compiling Proximodo Visual Studio / VC 2008 - wxWidgets 2.8.10 -
First off. Nice work on compile the code.

I think "proxie" might want to help you out http://prxbx.com/forums/showthread.php?tid=1446

what we really need is someone is good at C++. Testing is easy, there a group of us who would test it and report bugs. If we get a new speedy version(multi core suppor) and someone puts up a fairly good filterset(probably moved sidki set) then proximodo time will come. Currently most of us is happy to milk every last drop of life out of proximitron.

I remember some of us even put up our hands to write the documentation, since that all we can do.
Add Thank You Quote this message in a reply
Feb. 04, 2010, 02:40 PM
Post: #3
RE: Compiling Proximodo Visual Studio / VC 2008 - wxWidgets 2.8.10 -
Having a fully working Proximodo would be a really nice thing!! Thanks for your work
(Gracias por tu interés y trabajo Javi)
Add Thank You Quote this message in a reply
Feb. 26, 2010, 05:07 AM
Post: #4
RE: Compiling Proximodo Visual Studio / VC 2008 - wxWidgets 2.8.10 -
ok I am a total noob to this but I thought that I would try it but I keep getting the same error compiling this I think that it is looking for a dir that doesn't exist or something.
Quote:c:\wxwidgets-2.9.0\include\wx\platform.h(247) : fatal error C1083: Cannot open include file: 'wx/setup.h': No such file or directory
can you look at tell me what it is
oh and I followed the instruction on installing everything like what was written
Add Thank You Quote this message in a reply
Mar. 02, 2010, 05:12 PM
Post: #5
RE: Compiling Proximodo Visual Studio / VC 2008 - wxWidgets 2.8.10 -
I had that error i guess, but I can't remember exactly how I fixed it.

Try this:
Search 'Setup.h' in C:\wxWidgets-2.8.10\include\wx\msw
and copy it to the following folders:
C:\wxWidgets-2.8.10\lib\vc_lib\msw\wx
C:\wxWidgets-2.8.10\lib\vc_lib\mswd\wx

Tell me if doesn't work
Add Thank You Quote this message in a reply
Post Reply 


Forum Jump: