Sponsored Content
Top Forums Programming Compiling Objective-C 2.0 under Linux Post 302364575 by Corona688 on Friday 23rd of October 2009 12:01:13 PM
Old 10-23-2009
Objective C as used on the Macintosh is an almost wholly proprietary language for various reasons.
 

9 More Discussions You Might Find Interesting

1. HP-UX

compiling linux driver to run on HPUX

Hi, a friend of mine gave me an old HP B180 Unix Workstation with HPUX, the only problem with that, the onboard graphicsbaord doesn´t work anymore. I want to buy a new PCI Graphicsboard (350RAMDAC), but they only have Linux drivers going with the card. Question: Is it possible to compile... (4 Replies)
Discussion started by: hilbi
4 Replies

2. Linux

Compiling Apple Top on Linux

Hello all. I recently tried compiling Apple's version of top on my Linux system. Can someone with some C experience explain why it won't build . . . and any tips to getting it to compile. Any help appreciated. BTW, you can pick up the Apple source code here: ... (0 Replies)
Discussion started by: blahblah
0 Replies

3. Programming

Cross compiling under Windows for Linux

I have two headless servers I am writing code for, and a Windows box networked with them. I want to compile my code within an IDE on the Windows box (eclipse most likely) and run the compiled binarys on the Linux boxes. Will this work? Using Cygwin (or MinGW)? Thoughts? Cheers, Ian (8 Replies)
Discussion started by: IanVaughan
8 Replies

4. Linux

Automate compiling of linux kernel

Hi, I'm a newbie at kernel compilation. Currently trying to do a bash script to automate the compiling process of the linux kernel. I'm having some problems with automating the configuration. I know its possible to load an existing .config file in the make menuconfig screen prompt. But... (3 Replies)
Discussion started by: aloe_vera
3 Replies

5. Programming

compiling old C program in Linux.

Hello, I am writing to ask for support about compiling an very old but famous C-progam for genetics study called MapMaker/QTL, and the source code is available from MIT: http://www.broadinstitute.org/ftp/distribution/software/mapmaker3/The program was originally designed for systems like SunOS... (1 Reply)
Discussion started by: yifangt
1 Replies

6. Shell Programming and Scripting

Compiling FORTRAN into Linux

Hello, I use Linux on Ubuntu 12.04. I have a fortran script with extension .f and I want to compile it to an executable file in linux. I have used this command: f77 -o snp_hwe.exe snp_hwe.f But I receive this error: (.text+0x18): undefined reference to `main' collect2: ld returned 1... (1 Reply)
Discussion started by: Homa
1 Replies

7. UNIX and Linux Applications

Pro*c file Compiling Issue in suse Linux

The existing .pc (pro *C) file is running successfully in UNIX. But when Iam trying to compile this same file in LINUX using proc iname filename.pc, Iam getting an error, proc file not recognized. Could someone help how to generate execute file from the proc*c file. what are the prerequisites... (2 Replies)
Discussion started by: vikrambharat
2 Replies

8. UNIX for Beginners Questions & Answers

Answers for few objective questions.

Hi Unix geniuses, I need your help for the answers of few objective Q&A. i dont know if my answers are correct or not. So i really need your help to provide the answers which will help me in unix programming. (1 Reply)
Discussion started by: Vivekit82
1 Replies

9. UNIX for Beginners Questions & Answers

Compiling Android system on Linux MInt

i have been trying to compile an android Marshmello system with no success. every time i try to compile i get this error javac: invalid source release: 1.7s Usage: javac <options> <source files> make: *** Error 41 #### make failed to build some targets (03:04 (mm:ss)) ####... (2 Replies)
Discussion started by: gearm
2 Replies
dispatch_object(3)					   BSD Library Functions Manual 					dispatch_object(3)

NAME
dispatch_object -- General manipulation of dispatch objects SYNOPSIS
#include <dispatch/dispatch.h> void dispatch_retain(dispatch_object_t object); void dispatch_release(dispatch_object_t object); void dispatch_suspend(dispatch_object_t object); void dispatch_resume(dispatch_object_t object); void * dispatch_get_context(dispatch_object_t object); void dispatch_set_context(dispatch_object_t object, void *context); void dispatch_set_finalizer_f(dispatch_object_t object, dispatch_function_t finalizer); DESCRIPTION
Dispatch objects share functions for coordinating memory management, suspension, cancellation and context pointers. MEMORY MANGEMENT
Objects returned by creation functions in the dispatch framework may be uniformly retained and released with the functions dispatch_retain() and dispatch_release() respectively. The dispatch framework does not guarantee that any given client has the last or only reference to a given object. Objects may be retained internally by the system. INTEGRATION WITH OBJECTIVE-C When building with an Objective-C or Objective-C++ compiler, dispatch objects are declared as Objective-C types. This results in the following differences compared to building as plain C/C++: - if Objective-C Automated Reference Counting is enabled, dispatch objects are memory managed by the Objective-C runtime and explicit calls to the dispatch_retain() and dispatch_release() functions will produce build errors. Note: when ARC is enabled, care needs to be taken with dispatch API returning an interior pointer that is only valid as long as an associated object has not been released. If that object is held in a variable with automatic storage, it may need to be annotated with the objc_precise_lifetime attribute, or stored in a __strong instance variable instead, to ensure that the object is not pre- maturely released. The functions returning interior pointers are dispatch_data_create_map(3) and dispatch_data_apply(3). - the Blocks runtime automatically retains and releases dispatch objects captured by blocks upon Block_copy() and Block_release(), e.g. as performed during asynchronous execution of a block via dispatch_async(3). Note: retain cycles may be encountered if dispatch source objects are captured by their handler blocks; these cycles can be broken by declaring the captured object __weak or by calling dispatch_source_cancel(3) to cause its handler blocks to be released explic- itly. - dispatch objects can be added directly to Cocoa collections, and their lifetime is tracked by the Objective-C static analyzer. Integration of dispatch objects with Objective-C requires targeting Mac OS X 10.8 or later, and is disabled when building with Objec- tive-C Garbage Collection or for the legacy Objective-C runtime. It can also be disabled manually by using compiler options to define the OS_OBJECT_USE_OBJC preprocessor macro to 0. Important: When building with a plain C/C++ compiler or when integration with Objective-C is disabled, dispatch objects are not automatically retained and released when captured by a block. Therefore, when a dispatch object is captured by a block that will be executed asyn- chronously, the object must be manually retained and released: dispatch_retain(object); dispatch_async(queue, ^{ do_something_with_object(object); dispatch_release(object); }); SUSPENSION
The invocation of blocks on dispatch queues or dispatch sources may be suspended or resumed with the functions dispatch_suspend() and dispatch_resume() respectively. Other dispatch objects do not support suspension. The dispatch framework always checks the suspension status before executing a block, but such changes never affect a block during execution (non-preemptive). Therefore the suspension of an object is asynchronous, unless it is performed from the context of the target queue for the given object. The result of suspending or resuming an object that is not a dispatch queue or a dispatch source is undefined. Important: suspension applies to all aspects of the dispatch object life cycle, including the finalizer function and cancellation handler. Suspending an object causes it to be retained and resuming an object causes it to be released. Therefore it is important to balance calls to dispatch_suspend() and dispatch_resume() such that the dispatch object is fully resumed when the last reference is released. The result of releasing all references to a dispatch object while in a suspended state is undefined. CONTEXT POINTERS
Dispatch objects support supplemental context pointers. The value of the context pointer may be retrieved and updated with dispatch_get_context() and dispatch_set_context() respectively. The dispatch_set_finalizer_f() specifies an optional per-object finalizer function that is invoked asynchronously if the context pointer is not NULL when the last reference to the object is released. This gives the application an opportunity to free the context data associated with the object. The finalizer will be run on the object's target queue. SEE ALSO
dispatch(3), dispatch_async(3), dispatch_group_create(3), dispatch_queue_create(3), dispatch_semaphore_create(3), dispatch_set_target_queue(3), dispatch_source_cancel(3), dispatch_source_create(3) Darwin March 1, 2012 Darwin
All times are GMT -4. The time now is 11:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy