<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ZSoluciones</title>
	<atom:link href="http://zsoluciones.com/datos/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://zsoluciones.com/datos</link>
	<description>Tu solución en Internet</description>
	<lastBuildDate>Fri, 16 Mar 2012 07:06:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>:-)</title>
		<link>http://zsoluciones.com/datos/?p=397</link>
		<comments>http://zsoluciones.com/datos/?p=397#comments</comments>
		<pubDate>Mon, 23 Jan 2012 02:32:13 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=397</guid>
		<description><![CDATA[&#1061;&#1091;&#1076;&#1086;&#1078;&#1085;&#1080;&#1082;&#1041;&#1086;&#1075;&#1086;&#1088;&#1086;&#1076;&#1080;&#1094;&#1072;

			
			
				
				Escuchaeste post
			]]></description>
			<content:encoded><![CDATA[<p><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://ikoni.eu/">&#1061;&#1091;&#1076;&#1086;&#1078;&#1085;&#1080;&#1082;</a></font><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://xn--h1aafme.net/%E8%EA%EE%ED%EE%EF%E8%F1">&#1041;&#1086;&#1075;&#1086;&#1088;&#1086;&#1076;&#1080;&#1094;&#1072;</a></font><img title="wp-1327280669320.jpg" class="alignnone" alt="image" src="http://zsoluciones.com/datos/wp-content/uploads/2012/01/wpid-wp-1327280669320.jpg" /></p>
<form id="vozme_form_792b523b40d16c1a497725cf4abc6434" method="post" name="vozme_form_792b523b40d16c1a497725cf4abc6434" target="792b523b40d16c1a497725cf4abc6434" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value=":-).. &#1061;&#1091;&#1076;&#1086;&#1078;&#1085;&#1080;&#1082;&#1041;&#1086;&#1075;&#1086;&#1088;&#1086;&#1076;&#1080;&#1094;&#1072;
" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', '792b523b40d16c1a497725cf4abc6434', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', '792b523b40d16c1a497725cf4abc6434', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_792b523b40d16c1a497725cf4abc6434').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D397&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D397&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D397&amp;title=%3A-%29" id="wpa2a_2"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=397</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Instalando GlomoSim em Gnu-Linux (Debian Squeeze)</title>
		<link>http://zsoluciones.com/datos/?p=368</link>
		<comments>http://zsoluciones.com/datos/?p=368#comments</comments>
		<pubDate>Mon, 29 Aug 2011 19:59:37 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=368</guid>
		<description><![CDATA[ikoni&#1050;&#1072;&#1088;&#1090;&#1080;&#1085;&#1080;

 Copia o arquivo &#8220;glomosim-2.03.tar.gz&#8221; numa pasta, no meu caso eu coloquei em: &#8220;~/Programas&#8221;
Que é o mesmo que dizer &#8220;/home/fpujaico/Programas&#8221;, logo entra nessa pasta escrevendo num terminal:

cd ~/Programas


 Descomprima o arquivo &#8220;glomosim-2.03.tar.gz&#8221;:

tar zxvf glomosim-2.03.tar.gz


 Edite o arquivo .bashrc:

gedit ~/.bashrc

E acrescente ao final:

## Para compilar GlomoSim.
PATH=~/Programas/glomosim-2.03/parsec/redhat-7.2/bin:&#34;${PATH}&#34;
export PCC_DIRECTORY=&#34;~/Programas/glomosim-2.03/parsec/redhat-7.2&#34;
&#160;
## Para ejecutar GlomoSim
PATH=~/Programas/glomosim-2.03/glomosim/bin:&#34;${PATH}&#34;


 Encerra sessão, e abre novamente uma sessão,  &#8230; <a class="read-excerpt" href="http://zsoluciones.com/datos/?p=368">Continue reading <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://xn--h1aafme.net/">ikoni</a></font><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://ikoni.eu/kartini">&#1050;&#1072;&#1088;&#1090;&#1080;&#1085;&#1080;</a></font>
<ol>
<li> Copia o arquivo &#8220;glomosim-2.03.tar.gz&#8221; numa pasta, no meu caso eu coloquei em: &#8220;~/Programas&#8221;
<p>Que é o mesmo que dizer &#8220;/home/fpujaico/Programas&#8221;, logo entra nessa pasta escrevendo num terminal:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ~<span style="color: #000000; font-weight: bold;">/</span>Programas</pre></div></div>

</li>
<li> Descomprima o arquivo &#8220;glomosim-2.03.tar.gz&#8221;:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">tar</span> zxvf glomosim-<span style="color: #000000;">2.03</span>.tar.gz</pre></div></div>

</li>
<li> Edite o arquivo .bashrc:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gedit ~<span style="color: #000000; font-weight: bold;">/</span>.bashrc</pre></div></div>

<p>E acrescente ao final:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">## Para compilar GlomoSim.</span>
<span style="color: #007800;">PATH</span>=~<span style="color: #000000; font-weight: bold;">/</span>Programas<span style="color: #000000; font-weight: bold;">/</span>glomosim-<span style="color: #000000;">2.03</span><span style="color: #000000; font-weight: bold;">/</span>parsec<span style="color: #000000; font-weight: bold;">/</span>redhat-<span style="color: #000000;">7.2</span><span style="color: #000000; font-weight: bold;">/</span>bin:<span style="color: #ff0000;">&quot;<span style="color: #007800;">${PATH}</span>&quot;</span>
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">PCC_DIRECTORY</span>=<span style="color: #ff0000;">&quot;~/Programas/glomosim-2.03/parsec/redhat-7.2&quot;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">## Para ejecutar GlomoSim</span>
<span style="color: #007800;">PATH</span>=~<span style="color: #000000; font-weight: bold;">/</span>Programas<span style="color: #000000; font-weight: bold;">/</span>glomosim-<span style="color: #000000;">2.03</span><span style="color: #000000; font-weight: bold;">/</span>glomosim<span style="color: #000000; font-weight: bold;">/</span>bin:<span style="color: #ff0000;">&quot;<span style="color: #007800;">${PATH}</span>&quot;</span></pre></div></div>

</li>
<li> Encerra sessão, e abre novamente uma sessão, para atualizar as variaveis de entorno.
</li>
<li> Para provar que as variaveis estão correctamente carregadas tipea:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">pcc</pre></div></div>

<p>E obteras: &#8220;No input files.&#8221;</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">pcc <span style="color: #660033;">-env</span></pre></div></div>

<p>E obteras as variaveis de entorno por default.
</li>
<li> Compila glomosim:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ~<span style="color: #000000; font-weight: bold;">/</span>Programas<span style="color: #000000; font-weight: bold;">/</span>glomosim-<span style="color: #000000;">2.03</span><span style="color: #000000; font-weight: bold;">/</span>glomosim<span style="color: #000000; font-weight: bold;">/</span>main</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">make</span></pre></div></div>

<table summary="Nota 1." border="10">
<tbody>
<tr>
<td>* Se o compilador não pode achar o arquivo pc_api.h então ejecuta.</td>
</tr>
<tr>
<td>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"> <span style="color: #c20cb9; font-weight: bold;">cp</span> ..<span style="color: #000000; font-weight: bold;">/</span>..<span style="color: #000000; font-weight: bold;">/</span>parsec<span style="color: #000000; font-weight: bold;">/</span>redhat-<span style="color: #000000;">7.2</span><span style="color: #000000; font-weight: bold;">/</span>include<span style="color: #000000; font-weight: bold;">/*</span>.<span style="color: #000000; font-weight: bold;">*</span> .<span style="color: #000000; font-weight: bold;">/</span></pre></div></div>

<p>e ejecuta novamente o</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"> <span style="color: #c20cb9; font-weight: bold;">make</span></pre></div></div>

</td>
</tr>
</tbody>
</table>
</li>
<li> Test de instalação:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ..<span style="color: #000000; font-weight: bold;">/</span>bin</pre></div></div>

<p>ou</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ~<span style="color: #000000; font-weight: bold;">/</span>Programas<span style="color: #000000; font-weight: bold;">/</span>glomosim-<span style="color: #000000;">2.03</span><span style="color: #000000; font-weight: bold;">/</span>glomosim<span style="color: #000000; font-weight: bold;">/</span>bin</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">.<span style="color: #000000; font-weight: bold;">/</span>glomosim config.in</pre></div></div>

</li>
</ol>
<form id="vozme_form_ca15f05cb0dd66afe0426311f8f13b7d" method="post" name="vozme_form_ca15f05cb0dd66afe0426311f8f13b7d" target="ca15f05cb0dd66afe0426311f8f13b7d" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value="Instalando GlomoSim em Gnu-Linux (Debian Squeeze).. ikoni&#1050;&#1072;&#1088;&#1090;&#1080;&#1085;&#1080;

 Copia o arquivo &#8220;glomosim-2.03.tar.gz&#8221; numa pasta, no meu caso eu coloquei em: &#8220;~/Programas&#8221;
Que é o mesmo que dizer &#8220;/home/fpujaico/Programas&#8221;, logo entra nessa pasta escrevendo num terminal:
787485cde0c4fc5d0df75e1958491bc3013

 Descomprima o arquivo &#8220;glomosim-2.03.tar.gz&#8221;:
787485cde0c4fc5d0df75e1958491bc3014

 Edite o arquivo .bashrc:
787485cde0c4fc5d0df75e1958491bc3015
E acrescente ao final:
787485cde0c4fc5d0df75e1958491bc3016

 Encerra sessão, e abre novamente uma sessão, para atualizar as variaveis de entorno.

 Para provar que as variaveis estão correctamente carregadas tipea:
787485cde0c4fc5d0df75e1958491bc3017
E obteras: &#8220;No input files.&#8221;
787485cde0c4fc5d0df75e1958491bc3018
E obteras as variaveis de entorno por default.

 Compila glomosim:
787485cde0c4fc5d0df75e1958491bc3019
787485cde0c4fc5d0df75e1958491bc3020



* Se o compilador não pode achar o arquivo pc_api.h então ejecuta.



787485cde0c4fc5d0df75e1958491bc3021
e ejecuta novamente o
787485cde0c4fc5d0df75e1958491bc3022





 Test de instalação:
787485cde0c4fc5d0df75e1958491bc3023
ou
787485cde0c4fc5d0df75e1958491bc3024
787485cde0c4fc5d0df75e1958491bc3025


" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', 'ca15f05cb0dd66afe0426311f8f13b7d', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', 'ca15f05cb0dd66afe0426311f8f13b7d', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_ca15f05cb0dd66afe0426311f8f13b7d').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D368&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D368&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D368&amp;title=Instalando%20GlomoSim%20em%20Gnu-Linux%20%28Debian%20Squeeze%29" id="wpa2a_4"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=368</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unir varios archivos pdf en uno solo [Linux]</title>
		<link>http://zsoluciones.com/datos/?p=359</link>
		<comments>http://zsoluciones.com/datos/?p=359#comments</comments>
		<pubDate>Fri, 29 Jul 2011 09:49:41 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=359</guid>
		<description><![CDATA[&#1080;&#1082;&#1086;&#1085;&#1086;&#1075;&#1088;&#1072;&#1092;&#1080;&#1103;&#1055;&#1088;&#1072;&#1074;&#1086;&#1089;&#1083;&#1072;&#1074;&#1085;&#1080; &#1080;&#1082;&#1086;&#1085;&#1080;Si deseas unir varios archivos PDF en uno solo, puedes usar el programa pdftk
Para instalar:

sudo apt-get install pdftk

Para usar:

pdftk  tese-part1.pdf tese-part2.pdf tese-part3.pdf cat output tese-final.pdf

Para ver ejemplos de uso de pdftk entra aquí.

			
			
				
				Escuchaeste post
			]]></description>
			<content:encoded><![CDATA[<p><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://xn--h1aafme.net/">&#1080;&#1082;&#1086;&#1085;&#1086;&#1075;&#1088;&#1072;&#1092;&#1080;&#1103;</a></font><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://ikoni.eu/">&#1055;&#1088;&#1072;&#1074;&#1086;&#1089;&#1083;&#1072;&#1074;&#1085;&#1080; &#1080;&#1082;&#1086;&#1085;&#1080;</a></font>Si deseas unir varios archivos PDF en uno solo, puedes usar el programa <a title="PDFTK" href="http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/" target="_blank">pdftk</a></p>
<p>Para instalar:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> pdftk</pre></div></div>

<p>Para usar:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">pdftk  tese-part1.pdf tese-part2.pdf tese-part3.pdf <span style="color: #c20cb9; font-weight: bold;">cat</span> output tese-final.pdf</pre></div></div>

<p>Para ver ejemplos de uso de <a title="PDFTK" href="http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/" target="_blank">pdftk</a> entra <a title="PDFTK" href="http://www.pdflabs.com/docs/pdftk-cli-examples/" target="_blank">aquí</a>.</p>
<form id="vozme_form_4c3db9c5fa1e505a9981e5e341d8c07e" method="post" name="vozme_form_4c3db9c5fa1e505a9981e5e341d8c07e" target="4c3db9c5fa1e505a9981e5e341d8c07e" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value="Unir varios archivos pdf en uno solo [Linux].. &#1080;&#1082;&#1086;&#1085;&#1086;&#1075;&#1088;&#1072;&#1092;&#1080;&#1103;&#1055;&#1088;&#1072;&#1074;&#1086;&#1089;&#1083;&#1072;&#1074;&#1085;&#1080; &#1080;&#1082;&#1086;&#1085;&#1080;Si deseas unir varios archivos PDF en uno solo, puedes usar el programa pdftk
Para instalar:
787485cde0c4fc5d0df75e1958491bc3028
Para usar:
787485cde0c4fc5d0df75e1958491bc3029
Para ver ejemplos de uso de pdftk entra aquí.
" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', '4c3db9c5fa1e505a9981e5e341d8c07e', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', '4c3db9c5fa1e505a9981e5e341d8c07e', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_4c3db9c5fa1e505a9981e5e341d8c07e').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D359&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D359&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D359&amp;title=Unir%20varios%20archivos%20pdf%20en%20uno%20solo%20%5BLinux%5D" id="wpa2a_6"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=359</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creando una aplicación para Android usando la SDK (sin eclipse)</title>
		<link>http://zsoluciones.com/datos/?p=323</link>
		<comments>http://zsoluciones.com/datos/?p=323#comments</comments>
		<pubDate>Tue, 12 Jul 2011 05:46:20 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=323</guid>
		<description><![CDATA[Primero se debe tener instalado el SDK. Luego se crea el proyecto con el siguiente comando [1].

android create project	--target 7 \
			--name HelloWorld \
			--path ./HelloWorldProject \
			--activity HelloWorldActivity \
			--package com.hello.world

Para obtener el binario de la aplicación se entra a la carpeta HelloWorldProject.

cd HelloWorldProject

Y se ejecuta el comando:

ant debug

Obviamente debes tener instalado ant.

Luego si deseas subir la aplicación  &#8230; <a class="read-excerpt" href="http://zsoluciones.com/datos/?p=323">Continue reading <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Primero se debe tener instalado el <a href="http://developer.android.com/sdk/index.html" title="SDK" target="_blank">SDK</a>. Luego se crea el proyecto con el siguiente comando <b>[1]</b>.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">android create project	<span style="color: #660033;">--target</span> <span style="color: #000000;">7</span> \
			<span style="color: #660033;">--name</span> HelloWorld \
			<span style="color: #660033;">--path</span> .<span style="color: #000000; font-weight: bold;">/</span>HelloWorldProject \
			<span style="color: #660033;">--activity</span> HelloWorldActivity \
			<span style="color: #660033;">--package</span> com.hello.world</pre></div></div>

<p>Para obtener el binario de la aplicación se entra a la carpeta <b>HelloWorldProject</b>.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> HelloWorldProject</pre></div></div>

<p>Y se ejecuta el comando:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ant debug</pre></div></div>

<p>Obviamente debes tener instalado ant.<br />
<br />
Luego si deseas subir la aplicación a un emulador, desde el programa <b>android</b> entra a Virtual Devices, y creamos uno nuevo.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">android</pre></div></div>

<p>finalmente para mandar/instalar la aplicación al dispositivo virtual usa:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">adb <span style="color: #c20cb9; font-weight: bold;">install</span> bin<span style="color: #000000; font-weight: bold;">/</span>HelloWorld-debug.apk</pre></div></div>

<p>Mira que no es necesario indicar a que dispositivo enviar la aplicación, dado que solo hay uno, que es el virtual que hemos creado.</p>
<hr />
<b>[1]</b></p>
<hr />
Explicación de cada uno de los parámetros de <b>android create project</b>:<br />
</p>
<h3>&#8211;target:</h3>
<p> ID del objetivo. Para obtener la lista de ID, ejecuta:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">android list target</pre></div></div>

<p>Obteniendo como resultado (en mi caso):</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">Available Android targets:
<span style="color: #c20cb9; font-weight: bold;">id</span>: <span style="color: #000000;">1</span> or <span style="color: #ff0000;">&quot;android-3&quot;</span>
     Name: Android <span style="color: #000000;">1.5</span>
     Type: Platform
     API level: <span style="color: #000000;">3</span>
     Revision: <span style="color: #000000;">4</span>
     Skins: QVGA-P, QVGA-L, HVGA-L, HVGA <span style="color: #7a0874; font-weight: bold;">&#40;</span>default<span style="color: #7a0874; font-weight: bold;">&#41;</span>, HVGA-P
<span style="color: #c20cb9; font-weight: bold;">id</span>: <span style="color: #000000;">2</span> or <span style="color: #ff0000;">&quot;Google Inc.:Google APIs:3&quot;</span>
     Name: Google APIs
     Type: Add-On
...</pre></div></div>

<p>Y asi sigue mostrando todos los ID, El ID=7 que es equivalente a decir &#8220;Android-8&#8243; indica que usaremos Android 2.2 (Android en la versión 2.2).<br />
.</p>
<p></p>
<h3>&#8211;name:</h3>
<p> Nombre del proyecto.<br />
</p>
<h3>&#8211;path:</h3>
<p> El directorio donde se creará el proyecto de nombre <b>name</b>.<br />
</p>
<h3>&#8211;activity:</h3>
<p> Actividad. <a href="http://casidiablo.net/tutorial-basico-android/" title="Android">Una actividad presenta una interfaz gráfica</a> (escrita en XML) que permite al usuario interactuar con la aplicación.<br />
</p>
<h3>&#8211;package:</h3>
<p> paquete.<br /></p>
<form id="vozme_form_2b4a40a95614405d78b0ff09ca9a2bea" method="post" name="vozme_form_2b4a40a95614405d78b0ff09ca9a2bea" target="2b4a40a95614405d78b0ff09ca9a2bea" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value="Creando una aplicación para Android usando la SDK (sin eclipse).. Primero se debe tener instalado el SDK. Luego se crea el proyecto con el siguiente comando [1].
787485cde0c4fc5d0df75e1958491bc3037
Para obtener el binario de la aplicación se entra a la carpeta HelloWorldProject.
787485cde0c4fc5d0df75e1958491bc3038
Y se ejecuta el comando:
787485cde0c4fc5d0df75e1958491bc3039
Obviamente debes tener instalado ant.

Luego si deseas subir la aplicación a un emulador, desde el programa android entra a Virtual Devices, y creamos uno nuevo.
787485cde0c4fc5d0df75e1958491bc3040
finalmente para mandar/instalar la aplicación al dispositivo virtual usa:
787485cde0c4fc5d0df75e1958491bc3041
Mira que no es necesario indicar a que dispositivo enviar la aplicación, dado que solo hay uno, que es el virtual que hemos creado.

[1]

Explicación de cada uno de los parámetros de android create project:

&#8211;target:
 ID del objetivo. Para obtener la lista de ID, ejecuta:
787485cde0c4fc5d0df75e1958491bc3042
Obteniendo como resultado (en mi caso):
787485cde0c4fc5d0df75e1958491bc3043
Y asi sigue mostrando todos los ID, El ID=7 que es equivalente a decir &#8220;Android-8&#8243; indica que usaremos Android 2.2 (Android en la versión 2.2).
.

&#8211;name:
 Nombre del proyecto.

&#8211;path:
 El directorio donde se creará el proyecto de nombre name.

&#8211;activity:
 Actividad. Una actividad presenta una interfaz gráfica (escrita en XML) que permite al usuario interactuar con la aplicación.

&#8211;package:
 paquete.
" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', '2b4a40a95614405d78b0ff09ca9a2bea', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', '2b4a40a95614405d78b0ff09ca9a2bea', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_2b4a40a95614405d78b0ff09ca9a2bea').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D323&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D323&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D323&amp;title=Creando%20una%20aplicaci%C3%B3n%20para%20Android%20usando%20la%20SDK%20%28sin%20eclipse%29" id="wpa2a_8"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=323</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Primeros pasos con PostgreSQL</title>
		<link>http://zsoluciones.com/datos/?p=315</link>
		<comments>http://zsoluciones.com/datos/?p=315#comments</comments>
		<pubDate>Sun, 26 Jun 2011 05:16:21 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=315</guid>
		<description><![CDATA[Instalando
Instala el cliente y servidor de la base de datos y la aplicación pgAdmin para administrar la base de datos PostgreSQL.

sudo apt-get install postgresql postgresql-client postgresql-contrib

Si deseas crear tus funciones escritas en lenguaje C, para ser cargadas dinámicamente por el servidor PostgreSQL, debes instalar también los siguientes paquetes de bibliotecas y cabeceras. (en mi caso  &#8230; <a class="read-excerpt" href="http://zsoluciones.com/datos/?p=315">Continue reading <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<h2><strong>Instalando</strong></h2>
<p>Instala el cliente y servidor de la base de datos y la aplicación pgAdmin para administrar la base de datos PostgreSQL.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> postgresql postgresql-client postgresql-contrib</pre></div></div>

<p>Si deseas crear tus funciones escritas en lenguaje C, para ser cargadas dinámicamente por el servidor PostgreSQL, debes instalar también los siguientes paquetes de bibliotecas y cabeceras. (en mi caso PostgreSQL 8.4)</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> libpq-dev postgresql-server-dev-<span style="color: #000000;">8.4</span></pre></div></div>

<h2><strong>Cambiando contraseña</strong></h2>
<p>Para cambiar la contraseña al ususario postgres ejecuta:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">passwd</span> postgres</pre></div></div>

<h2><strong>Interactuando con el servidor</strong></h2>
<p>Lo primero es cambiar a el usuario Postgres, dado que este es el usuario de máximos privilegios, para el servidor.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">su</span> - postgres</pre></div></div>

<p>Crea una base de datos prueba1</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">createdb prueba1</pre></div></div>

<p>Conectate a la base de datos prueba1</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">psql prueba1</pre></div></div>

<p>Crea una tabla</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">CREATE TABLE tabla1 <span style="color: #7a0874; font-weight: bold;">&#40;</span>pathfilename char<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">128</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>;</pre></div></div>

<p>Insertando valores</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">INSERT INTO tabla1 VALUES <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #ff0000;">'/home/fernando/texto1.txt'</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>;
INSERT INTO tabla1 VALUES <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #ff0000;">'/home/fernando/texto2.txt'</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>;</pre></div></div>

<p>Viendo datos de la tabla</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">SELECT <span style="color: #000000; font-weight: bold;">*</span> FROM tabla1;</pre></div></div>

<form id="vozme_form_e61765010f6dd34d215bcaaf667c64fe" method="post" name="vozme_form_e61765010f6dd34d215bcaaf667c64fe" target="e61765010f6dd34d215bcaaf667c64fe" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value="Primeros pasos con PostgreSQL.. Instalando
Instala el cliente y servidor de la base de datos y la aplicación pgAdmin para administrar la base de datos PostgreSQL.
787485cde0c4fc5d0df75e1958491bc3053
Si deseas crear tus funciones escritas en lenguaje C, para ser cargadas dinámicamente por el servidor PostgreSQL, debes instalar también los siguientes paquetes de bibliotecas y cabeceras. (en mi caso PostgreSQL 8.4)
787485cde0c4fc5d0df75e1958491bc3054
Cambiando contraseña
Para cambiar la contraseña al ususario postgres ejecuta:
787485cde0c4fc5d0df75e1958491bc3055
Interactuando con el servidor
Lo primero es cambiar a el usuario Postgres, dado que este es el usuario de máximos privilegios, para el servidor.
787485cde0c4fc5d0df75e1958491bc3056
Crea una base de datos prueba1
787485cde0c4fc5d0df75e1958491bc3057
Conectate a la base de datos prueba1
787485cde0c4fc5d0df75e1958491bc3058
Crea una tabla
787485cde0c4fc5d0df75e1958491bc3059
Insertando valores
787485cde0c4fc5d0df75e1958491bc3060
Viendo datos de la tabla
787485cde0c4fc5d0df75e1958491bc3061
" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', 'e61765010f6dd34d215bcaaf667c64fe', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', 'e61765010f6dd34d215bcaaf667c64fe', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_e61765010f6dd34d215bcaaf667c64fe').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D315&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D315&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D315&amp;title=Primeros%20pasos%20con%20PostgreSQL" id="wpa2a_10"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=315</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creando Aplicaciones Nativas en Android</title>
		<link>http://zsoluciones.com/datos/?p=245</link>
		<comments>http://zsoluciones.com/datos/?p=245#comments</comments>
		<pubDate>Sun, 19 Jun 2011 06:01:11 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=245</guid>
		<description><![CDATA[He visto una manera súper fácil de crear aplicaciones en código nativo para Android (es decir archivos binarios ejecutables) en este blog (www.myboyfriendisageek.com), aquí les dejo una variante.
Antes de continuar algunas aclaraciones:
OBJETIVO:

Crear un archivo binario ejecutable llamado &#8220;test&#8220;.
Dar atributos de ejecutable al programa &#8220;test&#8221;.(Hardware: Necesitas root obligatorio, Emulador: Ya viene rooteado)
Colocar el programa &#8220;test&#8221; en  &#8230; <a class="read-excerpt" href="http://zsoluciones.com/datos/?p=245">Continue reading <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>He visto una manera súper fácil de crear aplicaciones en <a title="Código Nativo" href="http://es.wikipedia.org/wiki/C%C3%B3digo_nativo" target="_blank">código nativo</a> para Android (es decir archivos binarios ejecutables) en este blog (<a title="Creando Aplicaciones nativas para Android" href="http://www.myboyfriendisageek.com/2011/android/native-android-development/" target="_blank">www.myboyfriendisageek.com</a>), aquí les dejo una variante.</p>
<p>Antes de continuar algunas aclaraciones:</p>
<p>OBJETIVO:</p>
<ul>
<li><strong>Crear un archivo binario ejecutable llamado &#8220;test</strong>&#8220;.</li>
<li><strong>Dar atributos de ejecutable al programa &#8220;test&#8221;</strong>.(Hardware: Necesitas root obligatorio, Emulador: Ya viene rooteado)</li>
<li><strong>Colocar el programa &#8220;test&#8221; en nuestro dispositivo Android. </strong><strong> </strong>Se ejecuta usando algún programa que emule una terminal en Android, escribiendo &#8220;./test&#8221;. Esto  al estilo de los programa ls, mkdir, rm, etc. Que ya están en tu  dispositivo Android en la dirección &#8220;/system/bin&#8221;</li>
</ul>
<p>REQUISITOS:</p>
<ul>
<li><strong>Debes tener descargado y descomprimido el <a title="SDK" href="http://developer.android.com/sdk/index.html" target="_blank">SDK</a> de Android</strong>.</li>
<li><strong>Debes tener descargado y descomprimido el <a title="NDK" href="http://developer.android.com/sdk/ndk/index.html" target="_blank">NDK</a> de Android</strong>.</li>
<li><strong>Si deseas testear el programa en un dispositivo real, este debe de estar root-eado</strong>. Caso contrario deberas usar un emulador. Por causa de que solo puedes darle atributos de ejecución a un programa cuando  eres <strong>root</strong>.</li>
</ul>
<p>METODO:</p>
<p>He descomprimido la <strong><a title="SDK" href="http://developer.android.com/sdk/index.html" target="_blank">SDK</a></strong> y la <strong><a title="NDK" href="http://developer.android.com/sdk/ndk/index.html" target="_blank">NDK</a></strong> en mi carpeta &#8220;~/Android&#8221; obteniendo en el interior a la fecha (Junio-2011) las carpetas &#8220;android-sdk-linux_x86&#8243; y &#8220;android-ndk-r5c&#8221;.</p>
<p>Creando la StandAlone-<a title="ToolChain" href="http://es.wikipedia.org/wiki/Toolchain" target="_blank">ToolChain</a> (Cadena de herramientas independientes), Escribe y ejecuta el script.</p>
<p>creando-toolchain.sh:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #007800;">ANDROIDDIR</span>=~<span style="color: #000000; font-weight: bold;">/</span>Android
<span style="color: #007800;">NDK</span>=<span style="color: #007800;">$ANDROIDDIR</span><span style="color: #000000; font-weight: bold;">/</span>android-ndk-r5c
&nbsp;
<span style="color: #007800;">MAKETOOLCHAIN</span>=<span style="color: #007800;">$NDK</span><span style="color: #000000; font-weight: bold;">/</span>build<span style="color: #000000; font-weight: bold;">/</span>tools<span style="color: #000000; font-weight: bold;">/</span>make-standalone-toolchain.sh
&nbsp;
<span style="color: #007800;">PLATFORM</span>=android-<span style="color: #000000;">9</span>
&nbsp;
<span style="color: #007800;">INSTALLDIR</span>=<span style="color: #007800;">$NDK</span><span style="color: #000000; font-weight: bold;">/</span>.standalone<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$PLATFORM</span>-toolchain
&nbsp;
<span style="color: #c20cb9; font-weight: bold;">chmod</span> +x <span style="color: #007800;">$MAKETOOLCHAIN</span>
&nbsp;
<span style="color: #007800;">$MAKETOOLCHAIN</span> <span style="color: #660033;">--platform</span>=<span style="color: #007800;">$PLATFORM</span> <span style="color: #660033;">--install-dir</span>=<span style="color: #007800;">$INSTALLDIR</span></pre></div></div>

<p>Sobre el script &#8220;creando-toolchain.sh&#8221;</p>
<ul>
<li> $MAKETOOLCHAIN es la dirección del script que creará el standalone-toolchain en $INSTALLDIR</li>
<li> Puedes ver las <a href="http://developer.android.com/resources/dashboard/platform-versions.html" target="_blank">plataformas</a> disponibles en &#8220;$NDK/platforms&#8221;. Para Gingerbread API (level 9)</li>
</ul>
<p>Eso es todo! los binarios del toolchain  no dependen o contienen un path específico para el host, en otras palabras, se puede instalar en cualquier lugar, o incluso mover si es necesario. Ahora, sólo tienes que agregar la carpeta de binarios &#8220;$INSTALLDIR/bin&#8221; en tu variable de entorno $PATH:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"> gedit ~<span style="color: #000000; font-weight: bold;">/</span>.bashrc</pre></div></div>

<p>y escribiendo al final:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"> <span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">PATH</span>=:~<span style="color: #000000; font-weight: bold;">/</span>Android<span style="color: #000000; font-weight: bold;">/</span>android-ndk-r5c<span style="color: #000000; font-weight: bold;">/</span>.standalone<span style="color: #000000; font-weight: bold;">/</span>android-<span style="color: #000000;">9</span>-toolchain<span style="color: #000000; font-weight: bold;">/</span>bin:<span style="color: #007800;">$PATH</span></pre></div></div>

<p>Para finalizar reinicia o cierra sesión.</p>
<p>Para compilar, crea el programa test.c:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #339933;">#include &lt;stdio.h&gt;</span>
&nbsp;
<span style="color: #993333;">int</span> main<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> argc<span style="color: #339933;">,</span> <span style="color: #993333;">char</span><span style="color: #339933;">**</span> argv<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000066;">printf</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;HOLA MUNDO<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">return</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>y compila con:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">arm-linux-androideabi-gcc <span style="color: #660033;">-o</span> <span style="color: #7a0874; font-weight: bold;">test</span> test.c</pre></div></div>

<p>Esto creará el programa &#8220;test&#8221;. Para enviar y dar privilegios de ejecución al programa en tu dispositivo Android, o tu emulador, usa los siguientes comandos tomando en cuenta [1]:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">adb push <span style="color: #7a0874; font-weight: bold;">test</span> <span style="color: #000000; font-weight: bold;">/</span>data<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">test</span>
adb shell <span style="color: #c20cb9; font-weight: bold;">chmod</span> <span style="color: #000000;">777</span> <span style="color: #000000; font-weight: bold;">/</span>data<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">test</span></pre></div></div>

<p>Usando el programa adb tambien puedes ejecutar el programa &#8220;test&#8221; en tu dispositivo android y ver el resultado:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">adb shell <span style="color: #000000; font-weight: bold;">/</span>data<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">test</span></pre></div></div>

<p>Si simplemente quieres jugar con la shell de tu dispositivo android ejecuta:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">adb shell</pre></div></div>

<p>PROBLEMAS:</p>
<ul>
<li><strong>Necesitas ser root</strong>!!!, no puedo esperar que todas las personas que quieran instalar mi programa(osea copiar y dar privilegios de ejecución) sean root. El problema es la instalación, una vez instalado supongo que un usuario normal podría ejecutarlo, pero el trabajo de rootearlo ya se hizo.</li>
</ul>
<hr />
<p><em><strong>[1]</strong> Para que esto funcione debes tener instalado el SDK y las carpetas &#8220;$ANDROIDDIR/android-sdk-linux_x86/platform-tools&#8221; y &#8220;$ANDROIDDIR/android-sdk-linux_x86/tools&#8221; deben de estar en tu variable de entorno PATH. Para conseguirlo es necesario:</em></p>
<p><em> </em></p>
<p><em></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"> gedit ~<span style="color: #000000; font-weight: bold;">/</span>.bashrc</pre></div></div>

<p>y escribir al final:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">PATH</span>=:~<span style="color: #000000; font-weight: bold;">/</span>Android<span style="color: #000000; font-weight: bold;">/</span>android-sdk-linux_x86<span style="color: #000000; font-weight: bold;">/</span>platform-tools:<span style="color: #007800;">$PATH</span>
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">PATH</span>=:~<span style="color: #000000; font-weight: bold;">/</span>Android<span style="color: #000000; font-weight: bold;">/</span>android-sdk-linux_x86<span style="color: #000000; font-weight: bold;">/</span>tools:<span style="color: #007800;">$PATH</span></pre></div></div>

<p></em></p>
<p><em> </em></p>
<p><em>Para finalizar reinicia o cierra sesión.<br />
</em></p>
<hr />
<form id="vozme_form_18c67f2ddd707e3ee0c470e70d0f60a2" method="post" name="vozme_form_18c67f2ddd707e3ee0c470e70d0f60a2" target="18c67f2ddd707e3ee0c470e70d0f60a2" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value="Creando Aplicaciones Nativas en Android.. He visto una manera súper fácil de crear aplicaciones en código nativo para Android (es decir archivos binarios ejecutables) en este blog (www.myboyfriendisageek.com), aquí les dejo una variante.
Antes de continuar algunas aclaraciones:
OBJETIVO:

Crear un archivo binario ejecutable llamado &#8220;test&#8220;.
Dar atributos de ejecutable al programa &#8220;test&#8221;.(Hardware: Necesitas root obligatorio, Emulador: Ya viene rooteado)
Colocar el programa &#8220;test&#8221; en nuestro dispositivo Android.  Se ejecuta usando algún programa que emule una terminal en Android, escribiendo &#8220;./test&#8221;. Esto  al estilo de los programa ls, mkdir, rm, etc. Que ya están en tu  dispositivo Android en la dirección &#8220;/system/bin&#8221;

REQUISITOS:

Debes tener descargado y descomprimido el SDK de Android.
Debes tener descargado y descomprimido el NDK de Android.
Si deseas testear el programa en un dispositivo real, este debe de estar root-eado. Caso contrario deberas usar un emulador. Por causa de que solo puedes darle atributos de ejecución a un programa cuando  eres root.

METODO:
He descomprimido la SDK y la NDK en mi carpeta &#8220;~/Android&#8221; obteniendo en el interior a la fecha (Junio-2011) las carpetas &#8220;android-sdk-linux_x86&#8243; y &#8220;android-ndk-r5c&#8221;.
Creando la StandAlone-ToolChain (Cadena de herramientas independientes), Escribe y ejecuta el script.
creando-toolchain.sh:
787485cde0c4fc5d0df75e1958491bc3072
Sobre el script &#8220;creando-toolchain.sh&#8221;

 $MAKETOOLCHAIN es la dirección del script que creará el standalone-toolchain en $INSTALLDIR
 Puedes ver las plataformas disponibles en &#8220;$NDK/platforms&#8221;. Para Gingerbread API (level 9)

Eso es todo! los binarios del toolchain  no dependen o contienen un path específico para el host, en otras palabras, se puede instalar en cualquier lugar, o incluso mover si es necesario. Ahora, sólo tienes que agregar la carpeta de binarios &#8220;$INSTALLDIR/bin&#8221; en tu variable de entorno $PATH:
787485cde0c4fc5d0df75e1958491bc3073
y escribiendo al final:
787485cde0c4fc5d0df75e1958491bc3074
Para finalizar reinicia o cierra sesión.
Para compilar, crea el programa test.c:
787485cde0c4fc5d0df75e1958491bc3075
y compila con:
787485cde0c4fc5d0df75e1958491bc3076
Esto creará el programa &#8220;test&#8221;. Para enviar y dar privilegios de ejecución al programa en tu dispositivo Android, o tu emulador, usa los siguientes comandos tomando en cuenta [1]:
787485cde0c4fc5d0df75e1958491bc3077
Usando el programa adb tambien puedes ejecutar el programa &#8220;test&#8221; en tu dispositivo android y ver el resultado:
787485cde0c4fc5d0df75e1958491bc3078
Si simplemente quieres jugar con la shell de tu dispositivo android ejecuta:
787485cde0c4fc5d0df75e1958491bc3079
PROBLEMAS:

Necesitas ser root!!!, no puedo esperar que todas las personas que quieran instalar mi programa(osea copiar y dar privilegios de ejecución) sean root. El problema es la instalación, una vez instalado supongo que un usuario normal podría ejecutarlo, pero el trabajo de rootearlo ya se hizo.


[1] Para que esto funcione debes tener instalado el SDK y las carpetas &#8220;$ANDROIDDIR/android-sdk-linux_x86/platform-tools&#8221; y &#8220;$ANDROIDDIR/android-sdk-linux_x86/tools&#8221; deben de estar en tu variable de entorno PATH. Para conseguirlo es necesario:
 

787485cde0c4fc5d0df75e1958491bc3080
y escribir al final:
787485cde0c4fc5d0df75e1958491bc3081

 
Para finalizar reinicia o cierra sesión.


" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', '18c67f2ddd707e3ee0c470e70d0f60a2', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', '18c67f2ddd707e3ee0c470e70d0f60a2', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_18c67f2ddd707e3ee0c470e70d0f60a2').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D245&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D245&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D245&amp;title=Creando%20Aplicaciones%20Nativas%20en%20Android" id="wpa2a_12"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=245</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Que es el NDK de Android? (Traducción)</title>
		<link>http://zsoluciones.com/datos/?p=246</link>
		<comments>http://zsoluciones.com/datos/?p=246#comments</comments>
		<pubDate>Sun, 19 Jun 2011 03:13:07 +0000</pubDate>
		<dc:creator>TrucomanX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://zsoluciones.com/datos/?p=246</guid>
		<description><![CDATA[Este post es una traducción de http://developer.android.com/sdk/ndk/overview.html
El NDK de Android es un conjunto de herramientas que permite incorporar los componentes que hacen uso de código nativo en las aplicaciones de Android.
Las aplicaciones para Android se ejecutan en la máquina virtual Dalvik. El NDK permite implementar parte de tus aplicaciones usando código nativo con lenguajes como  &#8230; <a class="read-excerpt" href="http://zsoluciones.com/datos/?p=246">Continue reading <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Este post es una traducción de <a href="http://developer.android.com/sdk/ndk/overview.html">http://developer.android.com/sdk/ndk/overview.html</a></p>
<p>El NDK de Android es un conjunto de herramientas que permite incorporar los componentes que hacen uso de código nativo en las aplicaciones de Android.</p>
<p>Las aplicaciones para Android se ejecutan en la máquina virtual Dalvik. El NDK permite implementar parte de tus aplicaciones usando código nativo con lenguajes como C y C + +. Esto puede proporcionar beneficios a ciertas clases de aplicaciones, en la medida que se puede reutilizar el código existente y en algunos casos obtener un aumento de la velocidad.</p>
<p>El NDK establece lo siguiente:</p>
<ul>
<li>Un conjunto de herramientas y archivos de construcción que se utilizan para generar bibliotecas de código nativo de fuentes en C y C + +.</li>
<li>Una manera de integrar las correspondientes bibliotecas nativas en un archivo de paquete de aplicaciones (. Apk) que se pueden implementar en los dispositivos Android.</li>
<li>Un conjunto de cabeceras y bibliotecas nativas del sistema  que estarán soportadas en todas las futuras versiones de la plataforma Android, a partir de Android 1.5. Las aplicaciones que utilizan actividades nativas deben de ejecutarse sobre Android 2.3 o posterior.</li>
<li>Documentación, ejemplos y tutoriales.</li>
</ul>
<p>La última versión de la NDK soporta estos conjuntos de instrucciones ARM:</p>
<ul>
<li>ARMv5TE (incluyendo instrucciones Thumb-1 )</li>
<li>ARMv7-A (incluyendo instrucciones Thumb-2 y  VFPv3-D16, con soporte opcional para instrucciones NEON/VFPv3-D32 )</li>
</ul>
<p>Las futuras versiones de la NDK también prestarán apoyo a:</p>
<ul>
<li>Instrucciones x86 (ver CPU-ARCH-ABIS.HTML para más información)</li>
</ul>
<p>El código máquina ARMv5TE  funcionará en todos los dispositivos  ARM-Based de Android. ARMv7-A sólo se ejecutarán en los dispositivos tales como el Droid de Verizon o Google Nexus One que tengan una CPU compatible. La principal diferencia entre los dos conjuntos de instrucciones es que ARMv7-A soporta instrucciones hardware FPU, Thumb-2, y  NEON. Usted puede apuntar (Target) a uno o ambos conjuntos de instrucciones &#8211; ARMv5TE es el valor predeterminado, pero cambiar a ARMv7-A es tan fácil como añadir una línea al archivo de aplicación Application.mk , sin necesidad de cambiar nada mas en el archivo. También se puede construir para ambas arquitecturas al mismo tiempo y tenerlo todo almacenado en el *.Apk final. Toda la información se encontrará en el archivo CPU-ARCH-ABIS.HTML del paquete NDK.</p>
<p>El NDK proporciona las cabeceras estables para libc (la biblioteca de C), libm (la biblioteca matemática), OpenGL ES (3D Graphics Library), la interfaz JNI, y otras bibliotecas, como se indica en la sección de <a title="Developers Tools" href="http://developer.android.com/sdk/ndk/overview.html#tools" target="_blank">herramientas de desarrollo</a>.</p>
<form id="vozme_form_347666495ad9cd9a86354878e0e7b8a5" method="post" name="vozme_form_347666495ad9cd9a86354878e0e7b8a5" target="347666495ad9cd9a86354878e0e7b8a5" action="http://vozme.com/text2voice.php"><input name="text" type="hidden" value="Que es el NDK de Android? (Traducción).. Este post es una traducción de http://developer.android.com/sdk/ndk/overview.html
El NDK de Android es un conjunto de herramientas que permite incorporar los componentes que hacen uso de código nativo en las aplicaciones de Android.
Las aplicaciones para Android se ejecutan en la máquina virtual Dalvik. El NDK permite implementar parte de tus aplicaciones usando código nativo con lenguajes como C y C + +. Esto puede proporcionar beneficios a ciertas clases de aplicaciones, en la medida que se puede reutilizar el código existente y en algunos casos obtener un aumento de la velocidad.
El NDK establece lo siguiente:

Un conjunto de herramientas y archivos de construcción que se utilizan para generar bibliotecas de código nativo de fuentes en C y C + +.
Una manera de integrar las correspondientes bibliotecas nativas en un archivo de paquete de aplicaciones (. Apk) que se pueden implementar en los dispositivos Android.
Un conjunto de cabeceras y bibliotecas nativas del sistema  que estarán soportadas en todas las futuras versiones de la plataforma Android, a partir de Android 1.5. Las aplicaciones que utilizan actividades nativas deben de ejecutarse sobre Android 2.3 o posterior.
Documentación, ejemplos y tutoriales.

La última versión de la NDK soporta estos conjuntos de instrucciones ARM:

ARMv5TE (incluyendo instrucciones Thumb-1 )
ARMv7-A (incluyendo instrucciones Thumb-2 y  VFPv3-D16, con soporte opcional para instrucciones NEON/VFPv3-D32 )

Las futuras versiones de la NDK también prestarán apoyo a:

Instrucciones x86 (ver CPU-ARCH-ABIS.HTML para más información)

El código máquina ARMv5TE  funcionará en todos los dispositivos  ARM-Based de Android. ARMv7-A sólo se ejecutarán en los dispositivos tales como el Droid de Verizon o Google Nexus One que tengan una CPU compatible. La principal diferencia entre los dos conjuntos de instrucciones es que ARMv7-A soporta instrucciones hardware FPU, Thumb-2, y  NEON. Usted puede apuntar (Target) a uno o ambos conjuntos de instrucciones &#8211; ARMv5TE es el valor predeterminado, pero cambiar a ARMv7-A es tan fácil como añadir una línea al archivo de aplicación Application.mk , sin necesidad de cambiar nada mas en el archivo. También se puede construir para ambas arquitecturas al mismo tiempo y tenerlo todo almacenado en el *.Apk final. Toda la información se encontrará en el archivo CPU-ARCH-ABIS.HTML del paquete NDK.
El NDK proporciona las cabeceras estables para libc (la biblioteca de C), libm (la biblioteca matemática), OpenGL ES (3D Graphics Library), la interfaz JNI, y otras bibliotecas, como se indica en la sección de herramientas de desarrollo.
" /><input name="lang" type="hidden" value="es" /><input name="gn" type="hidden" value="ml" /><input type="hidden" id="interface" name="interface" value="full" />
			<div style="text-align:left;">
			
				<input style="float:left;" type="image" width="40" height="40" src="http://zsoluciones.com/datos/wp-content/plugins/vozme/img/megaphone40x40w.gif" alt="Escucha este post" onclick="window.open('', '347666495ad9cd9a86354878e0e7b8a5', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');">
				<div style="margin-left:48px; text-align:left;"><a style="font-size:12px;" href="javascript:void(0);" onclick="window.open('', '347666495ad9cd9a86354878e0e7b8a5', 'width=600,height=370,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes'); document.getElementById('vozme_form_347666495ad9cd9a86354878e0e7b8a5').submit();">Escucha<br/>este post</a></div>
			</div></form><p><!--[if IE]><iframe frameborder="0" allowTransparency="true" class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D246&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><![endif]--><!--[if !IE]><!--><iframe class="addtoany_special_service google_plusone" src="https://plusone.google.com/u/0/_/%2B1/fastbutton?url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D246&amp;size=medium&amp;count=true" scrolling="no" style="border:none;overflow:hidden;width:90px;height:20px"></iframe><!--<![endif]--><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fzsoluciones.com%2Fdatos%2F%3Fp%3D246&amp;title=Que%20es%20el%20NDK%20de%20Android%3F%20%28Traducci%C3%B3n%29" id="wpa2a_14"><img src="http://zsoluciones.com/datos/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://zsoluciones.com/datos/?feed=rss2&#038;p=246</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

