Jason,The Link: part of the module.modulemap seems to look for libcairo.so but then outputs the errors shown previously. Instead of CCAiro not found, it becomes "couldn't link library" though the absolute path exists. Cheers,--MGage-- Sent from Outlook Mobile
On Tue, Dec 8, 2015 at 8:08 PM -0800, "Jason Dusek" <[email protected]> wrote: 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
