mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-12-25 23:49:35 -05:00
Merge pull request #2391 from defnax/macos
removed the old macos instructions
This commit is contained in:
commit
914a2eca55
@ -1,60 +0,0 @@
|
|||||||
Hi there,
|
|
||||||
|
|
||||||
I heard about RetroShare recently (on Slashdot) and really like the goal of the program; it's something I've been wanting for a long time now. I'm a software developer so I figured I could help contribute to the project. I started by getting a build up and running on my mac, which was non-trivial as it looks like the Mac build hasn't been maintained (or maybe it's just targetting older OS X version?). Anyway, I have instructions and patches to get a build going on OS X 10.6, if you want to put them up on the wiki or something. The steps I used boiled down to running the following commands in a directory that also contains the retroshare-mac-build.patch file, which I posted at https://staktrace.com/pub/retroshare-mac-build.patch (you can also see the changes at https://github.com/staktrace/retroshare/commit/51f554f909086f4baca7be215d5edacab744dea4)
|
|
||||||
|
|
||||||
sudo port selfupdate
|
|
||||||
sudo port install qt4-mac
|
|
||||||
sudo port install wget
|
|
||||||
|
|
||||||
wget ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.10.tar.bz2
|
|
||||||
tar xjf libgpg-error-1.10.tar.bz2
|
|
||||||
rm libgpg-error-1.10.tar.bz2
|
|
||||||
pushd libgpg-error-1.10
|
|
||||||
./configure --prefix=$PWD/build --enable-static=yes --enable-shared=no
|
|
||||||
make
|
|
||||||
make install
|
|
||||||
popd
|
|
||||||
|
|
||||||
wget ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-1.3.1.tar.bz2
|
|
||||||
tar xjf gpgme-1.3.1.tar.bz2
|
|
||||||
rm gpgme-1.3.1.tar.bz2
|
|
||||||
pushd gpgme-1.3.1
|
|
||||||
./configure --prefix=$PWD/build --enable-static=yes --enable-shared=no --with-gpg-error-prefix=$PWD/../libgpg-error-1.10/build
|
|
||||||
make
|
|
||||||
make install
|
|
||||||
popd
|
|
||||||
|
|
||||||
wget http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.3.tar.gz
|
|
||||||
tar xzf miniupnpc-1.3.tar.gz
|
|
||||||
rm miniupnpc-1.3.tar.gz
|
|
||||||
pushd miniupnpc-1.3
|
|
||||||
make upnpc-static
|
|
||||||
popd
|
|
||||||
|
|
||||||
git clone https://github.com/kigeia/retroshare
|
|
||||||
pushd retroshare
|
|
||||||
git apply ../retroshare-mac-build.patch
|
|
||||||
popd
|
|
||||||
|
|
||||||
pushd retroshare/libbitdht/src
|
|
||||||
qmake
|
|
||||||
make
|
|
||||||
popd
|
|
||||||
|
|
||||||
pushd retroshare/libretroshare/src
|
|
||||||
qmake
|
|
||||||
make
|
|
||||||
popd
|
|
||||||
|
|
||||||
pushd retroshare/retroshare-gui/src
|
|
||||||
qmake
|
|
||||||
make
|
|
||||||
popd
|
|
||||||
|
|
||||||
At the end there is a RetroShare.App in the retroshare/retroshare-gui/ folder which seems to work as expected.
|
|
||||||
|
|
||||||
Now that I've gotten it building and working, I'd like to start working on adding features. One that I would like to see is taking advantage of the RetroShare platform to enable F2F games. A while back I wrote a P2P collaborative crossword solver app in Java; porting that to work as a RetroShare plugin would probably be a good start for me. I looked briefly at the existing plugins in the source tree but haven't yet had time to peruse the rsplugin.h API in detail; if you have any tips or pointers before I dive in, please do let me know. I'll probably start work on it in a couple of days and progress might be a little slow because I'm also fairly busy with other things right now.
|
|
||||||
|
|
||||||
Cheers,
|
|
||||||
kats
|
|
||||||
|
|
@ -1,66 +0,0 @@
|
|||||||
|
|
||||||
Mac OSX Build Instructions.
|
|
||||||
-------------------------------------------
|
|
||||||
|
|
||||||
There are several complications with building Retroshare under OSX.
|
|
||||||
1) Support Libraries must be built and installed seperately.
|
|
||||||
2) Universal and OSX 10.5 support is a little tricky, mainly due to the support libraries.
|
|
||||||
|
|
||||||
Additional Libraries
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
* GnuPG Package, that comes with Retroshare OSX install image. (GnuPG-1.4.9.dmg)
|
|
||||||
|
|
||||||
GPG Development libraries
|
|
||||||
* libassuan (I'm using 2.0.1)
|
|
||||||
* libgpg-error (I'm using 1.9)
|
|
||||||
* libgpgme (I'm using 1.3.0)
|
|
||||||
|
|
||||||
These libraries use standard UNIX installation systems: AUTOCONF/AUTOMAKE (configure, make, etc)
|
|
||||||
Unfortunately, this makes it difficult and a little manual to compile Universal and 10.5 libraries.
|
|
||||||
|
|
||||||
UPNPC (for OSX and windows)
|
|
||||||
* miniupnpc (I'm using 1.0)
|
|
||||||
|
|
||||||
You will also need to install
|
|
||||||
* XCode (available on the Apple Install CDs)
|
|
||||||
* Qt4 (from trolltech.com)
|
|
||||||
|
|
||||||
First Compilation...
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The First challenge is to build Retroshare on your Mac. For this first compilation,
|
|
||||||
we only build for your specific machine, and not attempt a Generic / 10.5 / Univeral build.
|
|
||||||
|
|
||||||
|
|
||||||
1) Install / Compile all the packages listed above.
|
|
||||||
be sure to use a configure command like this where applicable to only create a static library.
|
|
||||||
./configure --enable-static=yes --enable-shared=no CFLAGS="-arch i386" CPPFLAGS="-arch i386"
|
|
||||||
|
|
||||||
2) Check out the Retroshare SVN.
|
|
||||||
|
|
||||||
3) compile libbitdht:
|
|
||||||
cd libbitdht/src
|
|
||||||
qmake
|
|
||||||
|
|
||||||
This recreates a xcodeproj file for compilation using XCode.
|
|
||||||
Open with Xcode, and build.
|
|
||||||
|
|
||||||
4) compile libretroshare: same way.
|
|
||||||
5) compile retroshare-gui: same way.
|
|
||||||
|
|
||||||
|
|
||||||
Creating Retroshare OSX Distribution Packages.
|
|
||||||
-----------------------------------------------
|
|
||||||
TODO, once I've got feedback on First Compilation!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,94 +0,0 @@
|
|||||||
commit 51f554f909086f4baca7be215d5edacab744dea4
|
|
||||||
Author: Kartikaya Gupta <kats@calvin.staktrace.com>
|
|
||||||
Date: Wed Mar 7 23:30:48 2012 -0500
|
|
||||||
|
|
||||||
Modifications needed to get build working on Mac OS X 10.6
|
|
||||||
|
|
||||||
diff --git a/.gitignore b/.gitignore
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..3e90033
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/.gitignore
|
|
||||||
@@ -0,0 +1,6 @@
|
|
||||||
+*.o
|
|
||||||
+Makefile
|
|
||||||
+libbitdht/src/lib/
|
|
||||||
+libretroshare/src/lib/
|
|
||||||
+retroshare-gui/src/RetroShare.app/
|
|
||||||
+retroshare-gui/src/temp/
|
|
||||||
diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro
|
|
||||||
index 6f35e01..267cc91 100644
|
|
||||||
--- a/libretroshare/src/libretroshare.pro
|
|
||||||
+++ b/libretroshare/src/libretroshare.pro
|
|
||||||
@@ -312,7 +312,7 @@ mac {
|
|
||||||
OBJECTS_DIR = temp/obj
|
|
||||||
MOC_DIR = temp/moc
|
|
||||||
#DEFINES = WINDOWS_SYS WIN32 STATICLIB MINGW
|
|
||||||
- #DEFINES *= MINIUPNPC_VERSION=13
|
|
||||||
+ DEFINES *= MINIUPNPC_VERSION=13
|
|
||||||
DESTDIR = lib
|
|
||||||
|
|
||||||
#miniupnp implementation files
|
|
||||||
@@ -326,12 +326,11 @@ mac {
|
|
||||||
# Beautiful Hack to fix 64bit file access.
|
|
||||||
QMAKE_CXXFLAGS *= -Dfseeko64=fseeko -Dftello64=ftello -Dfopen64=fopen -Dvstatfs64=vstatfs
|
|
||||||
|
|
||||||
- UPNPC_DIR = ../../../miniupnpc-1.0
|
|
||||||
- GPG_ERROR_DIR = ../../../../libgpg-error-1.7
|
|
||||||
- GPGME_DIR = ../../../../gpgme-1.1.8
|
|
||||||
+ UPNPC_DIR = ../../../miniupnpc-1.3
|
|
||||||
+ GPG_ERROR_DIR = ../../../libgpg-error-1.10
|
|
||||||
+ GPGME_DIR = ../../../gpgme-1.3.1
|
|
||||||
|
|
||||||
- INCLUDEPATH += . $${UPNPC_DIR}
|
|
||||||
- #INCLUDEPATH += . $${UPNPC_DIR} $${GPGME_DIR}/src $${GPG_ERROR_DIR}/src
|
|
||||||
+ INCLUDEPATH += . $${UPNPC_DIR} $${GPGME_DIR}/src $${GPG_ERROR_DIR}/src
|
|
||||||
}
|
|
||||||
|
|
||||||
################################# FreeBSD ##########################################
|
|
||||||
diff --git a/libretroshare/src/pqi/sslfns.cc b/libretroshare/src/pqi/sslfns.cc
|
|
||||||
index 2588cb8..305433f 100644
|
|
||||||
--- a/libretroshare/src/pqi/sslfns.cc
|
|
||||||
+++ b/libretroshare/src/pqi/sslfns.cc
|
|
||||||
@@ -586,8 +586,8 @@ X509 *loadX509FromDER(const uint8_t *ptr, uint32_t len)
|
|
||||||
X509 *tmp = NULL;
|
|
||||||
#ifdef __APPLE__
|
|
||||||
// This depends on which version you are compiling for... OSX10.5 doesn't have consts (old OpenSSL!)
|
|
||||||
- unsigned char **certptr = (unsigned char **) &ptr;
|
|
||||||
- //const unsigned char **certptr = (const unsigned char **) &ptr;
|
|
||||||
+ //unsigned char **certptr = (unsigned char **) &ptr;
|
|
||||||
+ const unsigned char **certptr = (const unsigned char **) &ptr;
|
|
||||||
#else
|
|
||||||
const unsigned char **certptr = (const unsigned char **) &ptr;
|
|
||||||
#endif
|
|
||||||
diff --git a/retroshare-gui/src/RetroShare.pro b/retroshare-gui/src/RetroShare.pro
|
|
||||||
index adcb5a0..ffbf669 100644
|
|
||||||
--- a/retroshare-gui/src/RetroShare.pro
|
|
||||||
+++ b/retroshare-gui/src/RetroShare.pro
|
|
||||||
@@ -140,19 +140,21 @@ win32 {
|
|
||||||
|
|
||||||
macx {
|
|
||||||
# ENABLE THIS OPTION FOR Univeral Binary BUILD.
|
|
||||||
- CONFIG += ppc x86
|
|
||||||
- QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.4
|
|
||||||
+ # CONFIG += ppc x86
|
|
||||||
+ QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.6
|
|
||||||
|
|
||||||
CONFIG += version_detail_bash_script
|
|
||||||
LIBS += ../../libretroshare/src/lib/libretroshare.a
|
|
||||||
- LIBS += -lssl -lcrypto -lz -lgpgme -lgpg-error -lassuan
|
|
||||||
- LIBS += ../../../miniupnpc-1.0/libminiupnpc.a
|
|
||||||
+ LIBS += ../../../libgpg-error-1.10/build/lib/libgpg-error.a
|
|
||||||
+ LIBS += ../../../gpgme-1.3.1/build/lib/libgpgme.a
|
|
||||||
+ LIBS += ../../../miniupnpc-1.3/libminiupnpc.a
|
|
||||||
+ LIBS += -lssl -lcrypto -lz -lassuan
|
|
||||||
LIBS += -framework CoreFoundation
|
|
||||||
LIBS += -framework Security
|
|
||||||
|
|
||||||
# LIBS += -framework CoreServices
|
|
||||||
|
|
||||||
- INCLUDEPATH += .
|
|
||||||
+ INCLUDEPATH += . ../../../gpgme-1.3.1/src
|
|
||||||
#DEFINES* = MAC_IDLE # for idle feature
|
|
||||||
CONFIG -= uitools
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user