<div dir="ltr"><div>Thanks.</div>It compiled successfully now under linux.<div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-01-04 12:29 GMT-06:00 Joe Groff <span dir="ltr">&lt;<a href="mailto:jgroff@apple.com" target="_blank">jgroff@apple.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
&gt; On Dec 30, 2016, at 11:17 AM, Yang Yang via swift-users &lt;<a href="mailto:swift-users@swift.org">swift-users@swift.org</a>&gt; wrote:<br>
&gt;<br>
</span><div><div class="h5">&gt; I try to wrap a c library in swift package named Test.<br>
&gt; The code looks like this:<br>
&gt;<br>
&gt; Test1.h<br>
&gt;<br>
&gt; struct MyParams {<br>
&gt;       int (*func)();<br>
&gt; };<br>
&gt;<br>
&gt; typedef struct MyParams MyParams;<br>
&gt;<br>
&gt; Test2.h<br>
&gt; #include &quot;Test1.h&quot;<br>
&gt;<br>
&gt; static int test(){<br>
&gt;   return 0;<br>
&gt; }<br>
&gt;<br>
&gt; void myTest()<br>
&gt; {<br>
&gt;       MyParams params;<br>
&gt;       params.func = test;<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; Then I try to import the package into swift code and use<br>
&gt; in Test.swift.<br>
&gt; ************************<br>
&gt; import Test<br>
&gt;<br>
&gt; class TestSwift {<br>
&gt;   func runtest(){<br>
&gt;     myTest()<br>
&gt;   }<br>
&gt; }<br>
&gt;<br>
&gt; However, the compiler report link error:<br>
&gt; function myTest: error: undefined reference to &#39;test&#39;<br>
&gt;<br>
&gt; If I comment out<br>
&gt; &quot;params.func = test;&quot; in myTest.<br>
&gt;<br>
&gt; It successfully build. How should I handle this situation?<br>
<br>
</div></div>Try making `test` static inline instead of just static.<br>
<span class="HOEnZb"><font color="#888888"><br>
-Joe<br>
<br>
</font></span></blockquote></div><br></div>