• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Cocoa dylib access by C program
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cocoa dylib access by C program


  • Subject: Re: Cocoa dylib access by C program
  • From: Martin Wierschin via Cocoa-dev <email@hidden>
  • Date: Fri, 13 Nov 2020 11:42:11 -0800

A nice way to do this is to have a bridge header file that only declares C
functions. The corresponding .m source code file will have C functions that
natively call Objective-C methods. This same header can be included in .c files
without any trouble, letting them have access to Obj-C code via the bridge's C
functions.

Basically structure your files something like this:

**************** MyBridge.h
extern void DoObjectiveCStuff();

**************** MyBridge.m
#import <Foundation/Foundation.h>

void DoObjectiveCStuff()
{
        NSLog(@"Hooray, calling Obj-C methods...");
        [NSArray arrayWithCapacity:32];
}

**************** pure.c
#include "MyBridge.h"

void RegularFunction()
{
        DoObjectiveCStuff();
}

I hope that helps!

~Martin Wierschin


> On Nov 13, 2020, at 11:16 AM, Carl Hoefs via Cocoa-dev
> <email@hidden> wrote:
>
> I have built an ObjC/Cocoa/Foundation library.dylib; it works well when
> linked with ObjC apps.
>
> But now I need to link a C program against that library. How do I invoke the
> ObjC library methods from a C program? (I know I can add C function entry
> points to the library, but how do they invoke the internal ObjC library
> methods?)
>
> -Carl

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: Cocoa dylib access by C program
      • From: Carl Hoefs via Cocoa-dev <email@hidden>
References: 
 >Cocoa dylib access by C program (From: Carl Hoefs via Cocoa-dev <email@hidden>)

  • Prev by Date: Cocoa dylib access by C program
  • Next by Date: Re: Cocoa dylib access by C program
  • Previous by thread: Cocoa dylib access by C program
  • Next by thread: Re: Cocoa dylib access by C program
  • Index(es):
    • Date
    • Thread