Skip to content
This repository has been archived by the owner on May 28, 2019. It is now read-only.

Support alternative Objective-C build process #137

Closed
moreau-nicolas opened this issue Nov 19, 2015 · 6 comments
Closed

Support alternative Objective-C build process #137

moreau-nicolas opened this issue Nov 19, 2015 · 6 comments

Comments

@moreau-nicolas
Copy link
Contributor

The current Objective-C build process uses Xcode, which is not available on Linux. I suggest moving to a more platform-independant alternative, such as gcc-objc.

At the moment a fresh git clone of the project cannot compile on a Linux box (or even a Windows one).

@aslakhellesoy
Copy link
Contributor

Yeah requiring xcode is obviously not ideal. Would you be interested in sending a PR to address this?

@moreau-nicolas
Copy link
Contributor Author

I'm willing, but I'm not sure I'm the best person to do this: I don't have access to an Apple computer and have no experience at all with Objective-C.

@aslakhellesoy
Copy link
Contributor

Isn't the point of this bug to make the build pass on a non-apple computer (Linux and/or Windows)?

@moreau-nicolas
Copy link
Contributor Author

Of course it is! My feeling of not-being-the-best-guy-for-the-job is more related to my lack of knowledge on Objective-C than lack of a computer.
I'll try and propose something.

@aslakhellesoy
Copy link
Contributor

I don't know Objective-C either, and I don't think you need to know any in order to compile it ;-)

@moreau-nicolas
Copy link
Contributor Author

I just tried to (naively) compile all *.m files into object files with gcc 4.8 but it does not work.
Clang 3.4 does not work either.
Both don't seem to support *.pch files, so I tried manually importing <Foundation/Foundation.h> at the very beginning of each *.m file, but no dice, it still is not enough.

I got the following error, which seems pretty obscure to me:

GHTag.m:15:13: error: synthesized property 'location' must either be named the same as a compatible instance variable or must
      explicitly name an instance variable
@synthesize location;
            ^
GHTag.m:16:13: error: synthesized property 'name' must either be named the same as a compatible instance variable or must explicitly
      name an instance variable
@synthesize name;
            ^
2 errors generated.

Here is the command that generated this error:

cd objective-c/Gherkin
clang -ObjC -I/usr/include/GNUstep -c GHTag.m

Maybe @LiohAu could help?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants