As I experienced over the last year (cross) compiling the desktop clients some times is a real challenge. It's always a big search for the right dependencies, and so on.
So I've made a set of bash scripts to automate this process in our companies workflow. With these scripts one can build the various desktop clients, code sign them and produce the DSA signature, which is needed to get the Sparkle updater working. Furthermore ist's possible to theme the clients.
There is improvement possible, so pull requests will be highly appreciated.
I intend to keep the scripts in sync with each stable version of the desktop clients. The current set can be used to compile 1.6.0, 1.6.1 and 1.6.2.
At last I'd like to propose a vote of thanks for Daniel Molkentin, for his advice and his endless patience.
I hope you'll enjoy the scripts.
Thanks a lot for sharing the scripts. I'm always fighting with dependencies!
I'd like to ask you if you run your script on OS X 10.10 -Yosemite- and if it works correctly.
I tried the script on a brand new OS X 10.10, it downloaded all the dependencies, it compiled the package perfectly but when I'm running the client for the first time it crashes on the last page of the setup wizard and if I try to run again it always crashes. It's my opinion (but I'm not totally sure) that there are some problems with neon library on Yosemite. Did you experienced problems like this?
make: *** No rule to make target `/home/mirall/administration/build-clients/uildenv/mirall/src/i686-w64-mingw32-windres', needed by `src/ownCloud_res.o'. top.
make: *** [src/CMakeFiles/owncloud.dir/all] Error 2
make: *** [all] Error 2
cp: cannot stat ‘/home/mirall/administration/build-clients/buildenv/windows/mirll-build/*.exe’: No such file or directory
The build scripts have been updated to the 1.7 branch.
Furthermore I added an extra parameter -le.
By using that one no source files will be collected from Github. Instead, they should be locally present already.
This might come in handy if you want to adjust some files.
Am 21.11.2014 um 20:26 schrieb kwillems:
> The build scripts have been updated to the 1.7 branch.
> Furthermore I added an extra parameter -le.
> By using that one no source files will be collected from Github. Instead,
> they should be locally present already.
> This might come in handy if you want to adjust some files.
An extra parameter -ni or --non-interactive is available when you build the Windows and Linux clients.
In enables zypper into non-interactive mode and has to be used combined with the parameters -d or -do.
When used no user interaction is required when all dependencies are collected.
This post has NOT been accepted by the mailing list yet.
I'm getting the following error's, please could you assist:
[ 21%] Building CXX object src/CMakeFiles/owncloudsync.dir/mirall/theme.cpp.o
In file included from /Users/darrenwhite/build-clients/buildenv/mirall/src/mirall/theme.cpp:15:
base class has incomplete type
class OWNCLOUDSYNC_EXPORT Theme : public QObject
forward declaration of 'QObject'
assigning to 'Mirall::Theme *' from incompatible type
_instance = new THEME_CLASS;
type 'QObject' is not a direct or virtual base of 'Mirall::Theme'
3 errors generated.
make: *** [src/CMakeFiles/owncloudsync.dir/mirall/theme.cpp.o] Error 1
make: *** [src/CMakeFiles/owncloudsync.dir/all] Error 2
make: *** [all] Error 2
Unable to copy item at path '/Users/darrenwhite/build-clients/buildenv/install/owncloud.app' because the item could not be found