Gage,

For what it's worth, after running `git init` and `git tag -f 1.0.0`
in `CCairo` to get something importable, I run into this error:

:;  swift build
Cloning Packages/CCairo
<unknown>:0: error: no such file or directory:
'/Users/solidsnack/Downloads/Sources/example/Packages/CCairo/Package.swift'


On Tue, 8 Dec 2015 at 18:22 Gage Morgan via swift-users
<[email protected]> wrote:
>
> Okay, I've filed a report. To make it easier, the thing's code is SR-152.
>
> https://bugs.swift.org/browse/SR-152
>
> ________________________________
> From: [email protected]
> To: [email protected]; [email protected]
>
> Subject: RE: [swift-users] Binding Regular C Functions (Gtk, Cairo, etc.)
> Date: Tue, 8 Dec 2015 18:11:03 -0500
>
> What I'd like to know is, what is the "link: " part of the module.modulemap 
> for? I pasted in the cairo.so part, but this only said that after doing so. 
> I'd honestly just like to make sure this works.
>
> ________________________________
> To: [email protected]; [email protected]
> Date: Tue, 8 Dec 2015 18:07:25 -0500
>
> Subject: Re: [swift-users] Binding Regular C Functions (Gtk, Cairo, etc.)
> From: [email protected]
>
>
>
>
> ________________________________
> From: [email protected]
> To: [email protected]
> Subject: RE: [swift-users] Binding Regular C Functions (Gtk, Cairo, etc.)
> Date: Tue, 8 Dec 2015 18:03:42 -0500
>
> So...including cairo in an app returns this:
>
> Linking Executable:  .build/debug/example
> /usr/bin/ld: cannot find -l/usr/lib/x86_64-linux-gnu/libcairo.so
> clang: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> <unknown>:0: error: link command failed with exit code 1 (use -v to see 
> invocation)
> <unknown>:0: error: build had 1 command failures
> swift-build: exit(1): 
> ["/home/mgage/Downloads/swift-2.2-SNAPSHOT-2015-12-01-b-ubuntu15.10/usr/bin/swift-build-tool",
>  "-f", "/home/mgage/Sources/example/.build/debug/example.o/llbuild.yaml"]
>
> What went amiss?
>
> ________________________________
> From: [email protected]
> Subject: Re: [swift-users] Binding Regular C Functions (Gtk, Cairo, etc.)
> Date: Mon, 7 Dec 2015 19:27:56 -0800
> To: [email protected]
>
> Once you have followed the instructions to create a system package, your own 
> package declares a dependency on that package. This is also covered in those 
> steps.
>
> To use the C APIs in your code, simply import the name of the module (as 
> defined by the modulemap entry) in your swift file. It should just work.
>
> For instance, in the example from the sysmodules doc link I sent, you just
>
> import CJPEG
>
>
>
> The C functions will have the same name in Swift as their C counterparts. The 
> types might adjust to UnsafePointer etc.. For a list of those Swift bindings, 
> run the REPL and import your module, then perform “:type lookup Module” to 
> get a printout of available APIs.
>
> - mish
>
> On Dec 7, 2015, at 6:40 PM, Gage Morgan <[email protected]> wrote:
>
> I read that. What I want to know is how to bind the functions themselves 
> after creating a system package. How to use the c functions that got 
> imported, if you will.
>
> Sent from Outlook
>
>
>
>
> On Mon, Dec 7, 2015 at 6:39 PM -0800, "Mish Awadah" <[email protected]> wrote:
>
> Please see the reference at 
> https://github.com/apple/swift-package-manager/blob/master/Documentation/SystemModules.md
>
> - mish
>
> On Dec 7, 2015, at 6:33 PM, Gage Morgan via swift-users 
> <[email protected]> wrote:
>
> For any project: How is a C to Swift function binding created? I'd like to 
> know how to import C functions to Swift. Once I can do this successfully, 
> I'll be all set.
>
> Sent from Outlook
>
> _______________________________________________
> swift-users mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-users
>
>
>
>
> _______________________________________________ swift-users mailing list 
> [email protected] https://lists.swift.org/mailman/listinfo/swift-users
> _______________________________________________
> swift-users mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-users
_______________________________________________
swift-users mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-users

Reply via email to