-
Notifications
You must be signed in to change notification settings - Fork 0
/
Compile.txt
76 lines (58 loc) · 4.54 KB
/
Compile.txt
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
The most important thing about compiling: It works for me.
How to compile in n easy steps:
1a) Either install Mingw from www.mingw.org. You'll need w32api, binutils, mingw-runtime, gcc-core
and gcc-g++, see their site for installation instructions. I just untar the files into a folder named
mingw and add mingw\bin to my path. I've never used the installer, but that maybe
works as well. GCC 4.2+ is required (Technology preview release currently). I use the dw2 variant of gcc,
but if you want to experiment you can try the potentially slower sjlj. After installing gcc, you will
need to go to the bin folder of your mingw installation and copy g++-dw2/sjlj.exe and gcc-dw2/sjlj.exe to g++.exe
and gcc.exe respectively.
Note; Make sure gcc/g++ is in your path and before any cygwin installation.
1b) or install Microsoft Visual C++ 8.0 (I don't use it so there might be some compile problems)
- Make sure cl.exe is in your path (open a VS command prompt when building).
- You will probably need STLPort as MSVC doesn't have tr1 unordered containers (this might change
those are included in boost at some point in the future). Make sure to turn off nativestl (see
"scons -h") and compile/install STLPort in the stlport directory.
Note; If you get errors about a missing file "natupnp.h", you need to download the Platform SDK from MS
and copy the file to the include directory of your compiler (or add it to the include path...).
2) Install recent stable release of SCons (www.scons.org) and make sure you have it in your PATH.
3) Download HTML help workshop from http://msdn2.microsoft.com/en-us/library/ms670169.aspx. Copy the
include and library files to the respective directories in the htmlhelp folder. Make sure hhc.exe is
in your PATH.
4) Install gettext (http://www.gnu.org/software/gettext/). The easiest way to do this is to get the
precompiled binaries from http://www.gimp.org/~tml/gimp/win32/downloads.html, you'll need
gettext-runtime and gettext-tools, at least version 0.17. These links should work:
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-0.17.zip
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-tools-0.17.zip
Make sure gettext is in your PATH.
5) Open a command prompt and type "scons" followed by some options:
"tools=mingw" - Use mingw for building (default)
"tools=default" - Use msvc for building (yes, the option value is strange)
"mode=debug" - Compile a debug build (default)
"mode=release" - Compile an optimized release build
To see more options, type "scons -h".
Tip: You can create a file custom.py and put your options in there.
Note; If you have problems, use google. It works for me.
By the way, with doxygen, graphviz and some luck you can use the supplied doxygen configuration file
to generate some nice docs...just check that the paths in doxyfile are correct (graphviz)...
Linux / Unix:
Look at linuxdcpp.berlios.de for the *nix port of DC++ - they'll gladly accept any help.
Submitting patches
If you think you've done something that more people could use, you can always submit a patch for inclusion in the
original distribution. I will then consider whether I like the patch or not based on things that might seem to be
completely random, which just might be the case. Popular reasons for rejecting a patch include, but are not limited to,
ugly code, abusable features, features that I don't like that bloat the application and incompatibility with other
modifications I've already done.
To increase the chances of your patch being accepted, do like this:
1) Check out the latest code from SVN (see http://sf.net/projects/dcplusplus for instructions)
2) Make your modification. If you make other modifications apart from the one you want to submit, do them
on a separate copy of the DC++ source code and then copy them to this folder.
3) In the source root folder (the one with this file in it) do "svn diff > my-patch.diff".
4) Send the patch along with a description to the dcplusplus-devel mailing list (more information here:
http://sourceforge.net/mail/?group_id=40287). Please make sure to include a
copyright handover notice (see below).
In order to avoid future licensing issues, I ask you to give me copyright over any submitted code.
If you don't like this policy, you are free to start your own distribution (as
many have done), and if you're lucky it might become more popular than the original =). Please
state explicitly when submitting the patch that you give me copyright over the code if the submission is larger
than trivial.