<div dir="ltr">Hi again,<br><br>So I am attempting to compile the system.c example Richard linked me to in the previous message. I am using the compile string from the website. At first try, I got the following error:<br><br>
system.c: In function 'main':<br>system.c:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token<br>system.c:15: error: 'obj' undeclared (first use in this function)<br>system.c:15: error: (Each undeclared identifier is reported only once<br>
system.c:15: error: for each function it appears in.)<br>system.c:60: warning: implicit declaration of function 'pk_package_list_get_obj'<br><br>Then I tried to find the culprit of the first&nbsp; error &quot;error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token&quot;. I removed the &quot;const&quot; from the line &quot;const PkPackageObj *obj;&quot; and tried&nbsp; to compile, giving me the error output:<br>
<br>system.c: In function 'main':<br>system.c:18: error: 'PkPackageObj' undeclared (first use in this function)<br>system.c:18: error: (Each undeclared identifier is reported only once<br>system.c:18: error: for each function it appears in.)<br>
system.c:18: error: 'obj' undeclared (first use in this function)<br>system.c:63: warning: implicit declaration of function 'pk_package_list_get_obj'<br><br>I then tried to track down which header PkPackageObj was being declared in. I grep&#39;d for the string in the libpackagekit directory from the git main branch (0.2.3) image and noticed it was used in &lt;pk-package-list.h&gt; and &lt;pk-package-obj.h&gt;. Also I searched for &quot;pk_package_list_get_obj&quot; which was used in &lt;pk-package-list.h&gt;.<br>

<br>
I added those header includes to the file, tried to compile again and got the same errors. So I looked in /usr/include/packagekit and noticed that &#39;pk-package-obj.h&#39; does not exist there, but &#39;pk-package-list.h&#39; does. <br>
<br>[/usr/include/packagekit/]<br>pk-catalog.h&nbsp; pk-client.h&nbsp; pk-common.h&nbsp; pk-connection.h&nbsp; pk-control.h&nbsp; pk-debug.h&nbsp; pk-enum.h&nbsp; pk-extra.h&nbsp; pk-package-id.h&nbsp; pk-package-ids.h&nbsp; pk-package-item.h&nbsp; pk-package-list.h&nbsp; pk-task-list.h<br>
<br>I grep&#39;d for PkPackageObj here are could not find it. I recursively grep&#39;d the entire&nbsp; /usr/include branch for PkPackageObj and found nothing.<br><br>And this is where my ideas ended. HELP! :)<br><br>Thanks,<br>
-Dorian<br><br><div class="gmail_quote">On Thu, Aug 7, 2008 at 2:34 AM, Richard Hughes <span dir="ltr">&lt;<a href="mailto:hughsient@gmail.com">hughsient@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Wed, 2008-08-06 at 18:53 -0700, Dorian Perkins wrote:<br>
&gt; Hello again,<br>
&gt;<br>
&gt; So I have another question now. In reference to the example at hand,<br>
&gt; the FAQ mentions:<br>
</div>&gt; &nbsp; &nbsp; &nbsp; * InstallPackageName(&quot;openoffice-clipart&quot;)<br>
<div class="Ih2E3d">&gt; &nbsp; &nbsp; &nbsp; * InstallProvideFile(&quot;/usr/share/fonts/sarai/Sarai_07.ttf&quot;)<br>
&gt; &nbsp; &nbsp; &nbsp; * InstallLocalFile(&quot;/home/dave/Desktop/lirc-0.6.6-4.rhfc1.dag.i686.rpm&quot;)<br>
&gt; &nbsp; &nbsp; &nbsp; * InstallMimeType(&quot;application/x-rpm&quot;)<br>
&gt; &nbsp; &nbsp; &nbsp; * InstallFont(&quot;lang(en_GB)&quot;)<br>
&gt; &quot;<br>
&gt;<br>
&gt; However, I&#39;d like to do other tasks such as EnableRepo() and<br>
&gt; GetRepoList(), etc. How can I do this? Am I approaching this the wrong<br>
&gt; way?<br>
<br>
</div>Well, the problem is that you are using the session &quot;easy&quot; interface.<br>
See <a href="http://www.packagekit.org/pk-faq.html#session-system" target="_blank">http://www.packagekit.org/pk-faq.html#session-system</a> for an<br>
explanation of why you would want to use the session interface in an<br>
trivial application, but the system one for more complex or for<br>
integrated use cases.<br>
<br>
To do RepoEnable you&#39;ll need to use the system service -- it&#39;s more<br>
complicated but much more powerful. Luckily there are some nice GObject<br>
bindings that make it a lot easier to work with. Have a look at an<br>
example file I just uploaded: <a href="http://www.packagekit.org/files/system.c" target="_blank">http://www.packagekit.org/files/system.c</a><br>
-- all the docs for that are here: <a href="http://www.packagekit.org/gtk-doc/" target="_blank">http://www.packagekit.org/gtk-doc/</a><br>
<br>
That&#39;s certainly some reading for you to do! :-)<br>
<div><div></div><div class="Wj3C7c"><br>
Richard.<br>
<br>
<br>
<br>
_______________________________________________<br>
PackageKit mailing list<br>
<a href="mailto:PackageKit@lists.freedesktop.org">PackageKit@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/packagekit" target="_blank">http://lists.freedesktop.org/mailman/listinfo/packagekit</a><br>
</div></div></blockquote></div><br></div>