[KDE/Mac] Help my confusion
iandw.au at gmail.com
Sun Feb 8 22:37:35 UTC 2015
On 09/02/2015, at 4:02 AM, René J.V. Bertin wrote:
> On Sunday February 08 2015 09:13:37 Jeremy Whiting wrote:
>> After reading man environ on both systems I've submitted a review request
>> that builds on both machines also https://git.reviewboard.kde.org/r/122481/
> Saw that; looks good. And I see you figured out that _environ was just the way the linker calls the symbol, as I just did :)
I have not been following this discussion, nor, I must confess, do I understand
all of it. However, how come compiling kdelibs (4) works for me? I have about
the same Macbook setup as Jeremy (Lion, 4-core, 64-bit) and Xcode 4.6.1 vs.
Jeremy's 4.6.3 (for details see my earlier post on this thread).
The first 20 or 30 lines of kurlcompletion.cpp seem to be essentially the same
in KDE 4, but I have never had any trouble compiling the "environ" bits.
I am using kdesrc-build and CMake to generate makefiles and my CMakeCache.txt
file for kdelibs shows:
cc and c++ are links, each evaluating to /usr/bin/clang eventually. And then:
/usr/bin/clang: Mach-O 64-bit x86_64 executable
So, as far as I can see, I am using Apple's clang. My workflow is dead simple
(simplistic, some might say :-)), but I like it that way. I use kdesrc-build to
update source from repositories and rebuild (but not every day). Then I use
"make install" or "make" in the "build" directory, as I edit the source, taking
advantage of the makefiles generated by kdesrc-build and CMake.
So what is the problem? That all works for me. Am I missing something?
I am asking because I cannot see the point of changing KF5 code unless it is
really necessary, especially as the proposed patch, viewed in isolation, is rather
obscure (it needs a comment to help or reassure anyone seeing it a year from now).
Cheers, Ian W.
>> What compiler is used by macports, or is that configurable by the end user?
> No, at least it's not accepted/supported practice. As far as I've understood, MacPorts uses what the system provides and if that doesn't correspond to blacklisting information it will try to find a matching compiler from the clang compilers installed through MacPorts. So it will never chose a gcc compiler except for port:apple-gcc42 which is the default compiler used on 10.6 and earlier.
>> Cross compling and using distcc may be interesting in the future, first I'd
>> like to get everything to build on the platforms I have though.
> Just to clarify: with MacPorts set to use distcc (or a compiler wrapper that does something like `distcc clang.sh "$@"`) you're doing implicit, no hassles cross-compiling in which you can slave your Linux host(s) to build jobs controlled from a Mac. And vice versa. Just make sure that on the Linux side, clang.sh does something like `clang --target=x86_64-apple-darwin "$@"`.
More information about the kde-mac