swiftでスタティックライブラリ(.a)を使用したい3例:lib helloLib.aを ビルドして使用します。swiftで静的ライブラリ(.a)を使用する方法3
のhello.c
#include <stdio.h>
#include "hello.h"
int printHello()
{
printf("hello wourl");
return 0;
}
hello.h
#include <stdio.h>
int printHello();
ビルドへ:libHello.aおよび/ usr/local/libディレクトリ
コード迅速
モジュールにコピーします.modulemap
module hello [system] {
header "hello.h"
link "libhello"
export *
}
Package.swift
import PackageDescription
let package = Package(
name: "hello",
dependencies: []
)
使用モジュールハローSWIFT(コマンド)と
main.swift
import hello
printHello()
ビルド:迅速なビルド
エラーが表示されます。
Compile Swift Module 'usehello' (1 sources)
Linking ./.build/debug/usehello
ld: library not found for -llibhello for architecture x86_64
:0: error: link command failed with exit code 1 (use -v to see invocation)
:0: error: build had 1 command failures
「-llibhello」を理解し、リンクに変更されません。 helloLib "、コンパイルはOKです。 ld:警告:オブジェクトファイル(/usr/local/lib/libhelloLib.a(hello.o))は、新しいOSXバージョン(10.11)用にビルドされていた(10.10)ためにビルドされました。 – duck