I lost my blog

This commit is contained in:
2016-09-08 23:16:21 -04:00
parent 3d27025b6d
commit 60a09d8cf0
48 changed files with 24 additions and 6121 deletions
View File
-239
View File
@@ -1,239 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>about me - Mil años de solitario</title>
<meta property='og:title' content="about me - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://codersherlock.github.io/about/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="single">
<div class="row">
<div class="col-md-8">
<article class="single" itemscope="itemscope" itemtype="http://schema.org/Article">
<meta itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" content="https://codersherlock.github.io/"/>
<meta itemprop="dateModified" content="1993-08-26T08:10:55-04:00">
<meta itemprop="headline" content="about me">
<meta itemprop="description" content="2012 - Coder Sherlock 2013 - Sherlock Hao 2015 - Jon Hao Email me">
<meta itemprop="url" content="https://codersherlock.github.io/about/">
<div itemprop="image" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/default.jpg" />
<meta itemprop="width" content="800">
<meta itemprop="height" content="800">
</div>
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/logo.jpg">
<meta itemprop="width" content="100">
<meta itemprop="height" content="100">
</div>
<meta itemprop="name" content="Mil años de solitario">
</div>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<meta itemprop="name" content="">
</div>
<header class="article-header">
<time itemprop="datePublished" pubdate="pubdate" datetime="1993-08-26T08:10:55-04:00">Thu, Aug 26, 1993</time>
<h1 class="article-title">about me</h1>
</header>
<div class="article-body" itemprop="articleBody">
<p>2012 - Coder Sherlock
2013 - Sherlock Hao
2015 - Jon Hao</p>
<p><a href="mailto:haopengzhan@gmail.com">Email me</a></p>
</div>
<aside>
<div class="section share">
<a href="http://www.facebook.com/sharer.php?src=bm&u=https%3a%2f%2fcodersherlock.github.io%2fabout%2f&t=about%20me" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-facebook"></i></a>
<a href="http://twitter.com/intent/tweet?url=https%3a%2f%2fcodersherlock.github.io%2fabout%2f&text=about%20me&tw_p=tweetbutton" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-twitter"></i></a>
<a href="https://plus.google.com/share?url=https%3a%2f%2fcodersherlock.github.io%2fabout%2f" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-google-plus"></i></a>
<a href="http://getpocket.com/edit?url=https%3a%2f%2fcodersherlock.github.io%2fabout%2f&title=about%20me" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-get-pocket"></i></a>
</div>
<div class="section">
<div id="disqus_thread"></div>
<script type="text/javascript">
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
var disqus_shortname = 'codersherlockblog';
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>
</aside>
</article>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-204
View File
@@ -1,204 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Cross Compile - Mil años de solitario</title>
<meta property='og:title' content="Cross Compile - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/categories/cross-compile/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Cross Compile</header>
<article class="li">
<header>
<div class="date">Mon, Aug 15, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">Cross Compile RSync ARM</a></div>
</header>
<div class="body">As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">Cross Compile Seafile to ARM</a></div>
</header>
<div class="body">Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-200
View File
@@ -1,200 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Cross Compile on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/categories/cross-compile/</link>
<description>Recent content in Cross Compile on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Mon, 15 Aug 2016 15:44:05 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/categories/cross-compile/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Cross Compile RSync ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</link>
<pubDate>Mon, 15 Aug 2016 15:44:05 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</guid>
<description>
&lt;p&gt;As always, feel free to ask. // Sherlock&lt;/p&gt;
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. &lt;a href=&#34;https://rsync.samba.org/&#34;&gt;Rsync&lt;/a&gt; is one of the most mature synchronization solution. So I made the decision on planting rsync to android.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in &lt;a href=&#34;https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/&#34;&gt;previews blog&lt;/a&gt;, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install &lt;a href=&#34;https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;amp;hl=en&#34;&gt;SSHDroid&lt;/a&gt; from Google Play Store.&lt;/p&gt;
&lt;h1 id=&#34;cross-compile-rsync&#34;&gt;Cross-Compile Rsync&lt;/h1&gt;
&lt;p&gt;Running following script to build rsync. It will generate a executable file named rsync in the root directory.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;push-rsync-to-android&#34;&gt;Push RSync to Android.&lt;/h1&gt;
&lt;p&gt;After installing SSHDroid, we can now push our arm-version-rsync to target machine.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;run-rsync-with-argument&#34;&gt;Run Rsync with argument&lt;/h1&gt;
&lt;p&gt;Now we can easily use rsync in android shell. Similar to what we use on PC.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./rsync -e &amp;quot;./ssh&amp;quot; {target-data} {target-location}:{target-directory}
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;references&#34;&gt;References&lt;/h1&gt;
&lt;p&gt;&lt;a href=&#34;http://stackoverflow.com/questions/8130889/build-rsync-for-android&#34;&gt;Build Rsync for Android&lt;/a&gt;&lt;/p&gt;
</description>
</item>
<item>
<title>Cross Compile Seafile to ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</link>
<pubDate>Sat, 30 Jul 2016 14:02:34 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</guid>
<description>
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;This project is working for delta sync from mobile to server. Currently, there&amp;rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&amp;rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Basically, I used the native android compilation tool-chains, &lt;a href=&#34;https://developer.android.com/ndk/downloads/index.html&#34;&gt;Android NDK&lt;/a&gt;, as working tools. Due to my working situation, I use a &lt;a href=&#34;https://shield.nvidia.com/tablet/k1&#34;&gt;Nvidia Shield Tablet&lt;/a&gt; as target device. As &lt;em&gt;Zengwen&lt;/em&gt; said in his &lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;blog&lt;/a&gt;, newest updated NDK might has some issue which can influence compilation progress. So you can find &lt;a href=&#34;http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk&#34;&gt;other version&lt;/a&gt; of NDK once you have some problems. Based on what &lt;em&gt;Zengwen&amp;rsquo;s&lt;/em&gt; blog mentioned, we can write following useful system environment and export in terminal.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;link-with-standalone-tool-chains&#34;&gt;Link with standalone tool-chains&lt;/h2&gt;
&lt;p&gt;In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;original-system-environment-configuration&#34;&gt;Original System Environment Configuration&lt;/h2&gt;
&lt;p&gt;[TODO]-&amp;gt; I will fix this part later.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don&#39;t mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&amp;quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&amp;quot;
export LIBS=&amp;quot;-lc -lstdc++ -ld&amp;quot;
export LDFLAGS=&amp;quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;compile-process&#34;&gt;Compile Process&lt;/h1&gt;
&lt;p&gt;To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.&lt;/p&gt;
&lt;h2 id=&#34;libsearpc&#34;&gt;libsearpc&lt;/h2&gt;
&lt;h3 id=&#34;glib&#34;&gt;glib&lt;/h3&gt;
&lt;h4 id=&#34;libiconv&#34;&gt;libiconv&lt;/h4&gt;
&lt;h4 id=&#34;libffi&#34;&gt;libffi&lt;/h4&gt;
&lt;h4 id=&#34;gettext&#34;&gt;gettext&lt;/h4&gt;
&lt;h3 id=&#34;libjasson&#34;&gt;libjasson&lt;/h3&gt;
&lt;h2 id=&#34;ccnet&#34;&gt;ccnet&lt;/h2&gt;
&lt;h3 id=&#34;libuuid&#34;&gt;libuuid&lt;/h3&gt;
&lt;h2 id=&#34;seafile&#34;&gt;seafile&lt;/h2&gt;
&lt;h1 id=&#34;preferences&#34;&gt;Preferences&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;zwyuan&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>
</channel>
</rss>
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/categories/cross-compile/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/categories/cross-compile/" /></head></html>
-188
View File
@@ -1,188 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Experiment - Mil años de solitario</title>
<meta property='og:title' content="Experiment - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/categories/experiment/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Experiment</header>
<article class="li">
<header>
<div class="date">Sat, Aug 20, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">Rsync Experiment Towards X86 VS ARM</a></div>
</header>
<div class="body">Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc</div>
<footer>
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-47
View File
@@ -1,47 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Experiment on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/categories/experiment/</link>
<description>Recent content in Experiment on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 20 Aug 2016 01:44:59 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/categories/experiment/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Rsync Experiment Towards X86 VS ARM</title>
<link>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</link>
<pubDate>Sat, 20 Aug 2016 01:44:59 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</guid>
<description>
&lt;p&gt;Partial content of this post won&amp;rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing&#34;&gt;Google Docs&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;used-command&#34;&gt;Used Command&lt;/h4&gt;
&lt;h5 id=&#34;solve-android-read-only-issue&#34;&gt;Solve Android Read_Only Issue&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;mount -o rw,remount /system
mount -o ro,remount /system
&lt;/code&gt;&lt;/pre&gt;
&lt;h5 id=&#34;using-tc-to-limit-bandwidth-on-host-server&#34;&gt;Using tc to limit bandwidth on host server&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;# Apply speed limits
sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
# Delete limitation profile
sudo tc qdisc del dev {DEV_NAME} root
&lt;/code&gt;&lt;/pre&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/categories/experiment/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/categories/experiment/" /></head></html>
-188
View File
@@ -1,188 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Game - Mil años de solitario</title>
<meta property='og:title' content="Game - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/categories/game/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Game</header>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-41
View File
@@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Game on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/categories/game/</link>
<description>Recent content in Game on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 30 Jul 2016 18:10:20 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/categories/game/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/categories/game/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/categories/game/" /></head></html>
-188
View File
@@ -1,188 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Hack - Mil años de solitario</title>
<meta property='og:title' content="Hack - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/categories/hack/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Hack</header>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-41
View File
@@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Hack on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/categories/hack/</link>
<description>Recent content in Hack on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 30 Jul 2016 18:10:20 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/categories/hack/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/categories/hack/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/categories/hack/" /></head></html>
-179
View File
@@ -1,179 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Categories - Mil años de solitario</title>
<meta property='og:title' content="Categories - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/categories/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list terms">
<div class="row">
<div class="col-md-8">
<header class="page-title">Categories</header>
<a href="https://CoderSherlock.github.io/categories/cross-compile/">cross-compile</a>
<a href="https://CoderSherlock.github.io/categories/experiment/">experiment</a>
<a href="https://CoderSherlock.github.io/categories/game/">game</a>
<a href="https://CoderSherlock.github.io/categories/hack/">hack</a>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-1
View File
@@ -1 +0,0 @@
/* Please override here. */
-216
View File
@@ -1,216 +0,0 @@
html {
font-size: 16px;
}
body {
font-family: 'Open Sans', "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", , Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
-webkit-font-smoothing: antialiased;
font-size: inherit;
color: #000;
}
@media (max-width: 768px) {
html {
font-size: 14px;
}
}
html,
body {
margin: 0;
}
a {
transition-duration: .2s;
}
a:hover,
a:focus,
a:active {
outline: none;
box-shadow: none;
}
a.tag {
font-size: .8rem;
color: #999;
}
a.tag:hover {
color: #333;
}
code:not(.hljs) {
font-size: .8rem;
}
img {
width: 100%;
}
.share {
text-align: right;
}
.share a {
display: inline-block;
color: #999;
padding: 0 .5rem;
}
header.site nav.navbar {
border-radius: 0;
border-top: none;
border-right: none;
border-left: none;
}
header.site .navbar-default .navbar-nav>li>a {
font-size: .8rem;
}
header.page-title {
font-size: 1.6rem;
line-height: 2rem;
margin-bottom: 1rem;
text-decoration: underline;
}
article.li .date {
font-size: .8rem;
line-height: 1rem;
}
article.li .title {
font-size: 1.4rem;
line-height: 2rem;
margin-bottom: .5rem;
}
article.li .body {
margin-bottom: 1rem;
}
article.single .article-header {
margin: 1rem 0 2rem 0;
}
article.single .article-header time {
font-size: .8rem;
line-height: 1rem;
display: block;
}
article.single .article-title {
margin: 0;
font-size: 1.4rem;
line-height: 2rem;
}
article.single .article-body {
max-width: 650px;
margin: 0 auto;
margin-bottom: 1rem;
padding: 0 1rem;
}
@media (max-width: 768px) {
article.single .article-body {
padding: 0;
}
}
article.single .article-body h1,
article.single .article-body h2,
article.single .article-body h3,
article.single .article-body h4,
article.single .article-body h5,
article.single .article-body h6 {
word-break: break-all;
}
article.single h1 { font-size: 1.6rem; line-height: 2.4rem; }
article.single h2 { font-size: 1.4rem; line-height: 2.1rem; }
article.single h3 { font-size: 1.1rem; line-height: 1.7rem; }
article.single h4 { font-size: 1rem; line-height: 1.5rem; }
article.single h5 { font-size: 1rem; line-height: 1.5rem; }
article.single .article-body h1:first-child,
article.single .article-body h2:first-child,
article.single .article-body h3:first-child,
article.single .article-body h4:first-child,
article.single .article-body h5:first-child,
article.single .article-body h6:first-child {
margin-top: 0;
}
article.single .article-body h1 {
margin-top: 4rem;
margin-bottom: 1rem;
font-weight: 900;
}
article.single .article-body h2 {
margin-top: 2rem;
margin-bottom: 1rem;
}
article.single .article-body h3,
article.single .article-body h4,
article.single .article-body h5,
article.single .article-body h6 {
margin-top: 2rem;
margin-bottom: .5rem;
}
article.single .article-body p {
line-height: 1.5rem;
margin-bottom: 1rem;
word-break: break-word;
}
article.single .article-body blockquote {
padding: .5rem;
font-size: .8rem;
border-left: none;
background-color: #eee;
}
article.single .article-body blockquote p {
line-height: 1rem;
}
article.single .article-body blockquote p:last-child {
margin-bottom: 0;
}
article.single .article-body pre {
padding: 0;
border: none;
border-radius: 0;
}
article.single aside {
padding: 2rem;
}
@media (max-width: 768px) {
article.single aside {
padding: 0;
}
}
article.single aside .section {
margin-bottom: 2rem;
}
footer.site {
padding: 3rem 0;
}
footer.site p {
font-size: .8rem;
margin-bottom: .5rem;
color: #999;
}
+5
View File
@@ -0,0 +1,5 @@
# Coder Sherlock's Website
* My blog [Mil años de solitario](./blog.html)
* My code repo [Don't try to be smart](./code.html)
* About me [Curriculum Vitae](./mycv.html)
+12 -240
View File
@@ -1,251 +1,23 @@
<!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="UTF-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Mil años de solitario</title>
<meta property='og:title' content="Mil años de solitario">
<meta property="og:type" content="website">
<meta property="og:url" content="https://CoderSherlock.github.io/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="index">
<div class="row">
<div class="col-md-8">
<article class="li">
<header>
<div class="date">Sat, Aug 20, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">Rsync Experiment Towards X86 VS ARM</a></div>
</header>
<div class="body">Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc</div>
<footer>
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Mon, Aug 15, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">Cross Compile RSync ARM</a></div>
</header>
<div class="body">As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">Cross Compile Seafile to ARM</a></div>
</header>
<div class="body">Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Thu, Aug 26, 1993</div>
<div class="title"><a href="https://codersherlock.github.io/about/">about me</a></div>
</header>
<div class="body"><p>2012 - Coder Sherlock
2013 - Sherlock Hao
2015 - Jon Hao</p>
<p><a href="mailto:haopengzhan@gmail.com">Email me</a></p>
</div>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script> <script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto'); ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview'); ga('send', 'pageview');
</script> </script>
</head>
<body>
<h1 id="coder-sherlocks-website">Coder Sherlock's Website</h1>
<ul>
<li>My blog <a href="./blog.html">Mil años de solitario</a></li>
<li>My code repo <a href="./code.html">Don't try to be smart</a></li>
<li>About me <a href="./mycv.html">Curriculum Vitae</a></li>
</ul>
</body> </body>
</html> </html>
-274
View File
@@ -1,274 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Mil años de solitario</title>
<link>https://CoderSherlock.github.io/</link>
<description>Recent content on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 20 Aug 2016 01:44:59 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Rsync Experiment Towards X86 VS ARM</title>
<link>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</link>
<pubDate>Sat, 20 Aug 2016 01:44:59 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</guid>
<description>
&lt;p&gt;Partial content of this post won&amp;rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing&#34;&gt;Google Docs&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;used-command&#34;&gt;Used Command&lt;/h4&gt;
&lt;h5 id=&#34;solve-android-read-only-issue&#34;&gt;Solve Android Read_Only Issue&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;mount -o rw,remount /system
mount -o ro,remount /system
&lt;/code&gt;&lt;/pre&gt;
&lt;h5 id=&#34;using-tc-to-limit-bandwidth-on-host-server&#34;&gt;Using tc to limit bandwidth on host server&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;# Apply speed limits
sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
# Delete limitation profile
sudo tc qdisc del dev {DEV_NAME} root
&lt;/code&gt;&lt;/pre&gt;
</description>
</item>
<item>
<title>Cross Compile RSync ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</link>
<pubDate>Mon, 15 Aug 2016 15:44:05 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</guid>
<description>
&lt;p&gt;As always, feel free to ask. // Sherlock&lt;/p&gt;
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. &lt;a href=&#34;https://rsync.samba.org/&#34;&gt;Rsync&lt;/a&gt; is one of the most mature synchronization solution. So I made the decision on planting rsync to android.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in &lt;a href=&#34;https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/&#34;&gt;previews blog&lt;/a&gt;, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install &lt;a href=&#34;https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;amp;hl=en&#34;&gt;SSHDroid&lt;/a&gt; from Google Play Store.&lt;/p&gt;
&lt;h1 id=&#34;cross-compile-rsync&#34;&gt;Cross-Compile Rsync&lt;/h1&gt;
&lt;p&gt;Running following script to build rsync. It will generate a executable file named rsync in the root directory.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;push-rsync-to-android&#34;&gt;Push RSync to Android.&lt;/h1&gt;
&lt;p&gt;After installing SSHDroid, we can now push our arm-version-rsync to target machine.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;run-rsync-with-argument&#34;&gt;Run Rsync with argument&lt;/h1&gt;
&lt;p&gt;Now we can easily use rsync in android shell. Similar to what we use on PC.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./rsync -e &amp;quot;./ssh&amp;quot; {target-data} {target-location}:{target-directory}
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;references&#34;&gt;References&lt;/h1&gt;
&lt;p&gt;&lt;a href=&#34;http://stackoverflow.com/questions/8130889/build-rsync-for-android&#34;&gt;Build Rsync for Android&lt;/a&gt;&lt;/p&gt;
</description>
</item>
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
<item>
<title>Cross Compile Seafile to ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</link>
<pubDate>Sat, 30 Jul 2016 14:02:34 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</guid>
<description>
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;This project is working for delta sync from mobile to server. Currently, there&amp;rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&amp;rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Basically, I used the native android compilation tool-chains, &lt;a href=&#34;https://developer.android.com/ndk/downloads/index.html&#34;&gt;Android NDK&lt;/a&gt;, as working tools. Due to my working situation, I use a &lt;a href=&#34;https://shield.nvidia.com/tablet/k1&#34;&gt;Nvidia Shield Tablet&lt;/a&gt; as target device. As &lt;em&gt;Zengwen&lt;/em&gt; said in his &lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;blog&lt;/a&gt;, newest updated NDK might has some issue which can influence compilation progress. So you can find &lt;a href=&#34;http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk&#34;&gt;other version&lt;/a&gt; of NDK once you have some problems. Based on what &lt;em&gt;Zengwen&amp;rsquo;s&lt;/em&gt; blog mentioned, we can write following useful system environment and export in terminal.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;link-with-standalone-tool-chains&#34;&gt;Link with standalone tool-chains&lt;/h2&gt;
&lt;p&gt;In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;original-system-environment-configuration&#34;&gt;Original System Environment Configuration&lt;/h2&gt;
&lt;p&gt;[TODO]-&amp;gt; I will fix this part later.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don&#39;t mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&amp;quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&amp;quot;
export LIBS=&amp;quot;-lc -lstdc++ -ld&amp;quot;
export LDFLAGS=&amp;quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;compile-process&#34;&gt;Compile Process&lt;/h1&gt;
&lt;p&gt;To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.&lt;/p&gt;
&lt;h2 id=&#34;libsearpc&#34;&gt;libsearpc&lt;/h2&gt;
&lt;h3 id=&#34;glib&#34;&gt;glib&lt;/h3&gt;
&lt;h4 id=&#34;libiconv&#34;&gt;libiconv&lt;/h4&gt;
&lt;h4 id=&#34;libffi&#34;&gt;libffi&lt;/h4&gt;
&lt;h4 id=&#34;gettext&#34;&gt;gettext&lt;/h4&gt;
&lt;h3 id=&#34;libjasson&#34;&gt;libjasson&lt;/h3&gt;
&lt;h2 id=&#34;ccnet&#34;&gt;ccnet&lt;/h2&gt;
&lt;h3 id=&#34;libuuid&#34;&gt;libuuid&lt;/h3&gt;
&lt;h2 id=&#34;seafile&#34;&gt;seafile&lt;/h2&gt;
&lt;h1 id=&#34;preferences&#34;&gt;Preferences&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;zwyuan&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>
<item>
<title>about me</title>
<link>https://codersherlock.github.io/about/</link>
<pubDate>Thu, 26 Aug 1993 08:10:55 -0400</pubDate>
<guid>https://codersherlock.github.io/about/</guid>
<description>&lt;p&gt;2012 - Coder Sherlock
2013 - Sherlock Hao
2015 - Jon Hao&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;mailto:haopengzhan@gmail.com&#34;&gt;Email me&lt;/a&gt;&lt;/p&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/" /></head></html>
-276
View File
@@ -1,276 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Cross Compile RSync ARM - Mil años de solitario</title>
<meta property='og:title' content="Cross Compile RSync ARM - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="single">
<div class="row">
<div class="col-md-8">
<article class="single" itemscope="itemscope" itemtype="http://schema.org/Article">
<meta itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" content="https://codersherlock.github.io/"/>
<meta itemprop="dateModified" content="2016-08-15T15:44:05-04:00">
<meta itemprop="headline" content="Cross Compile RSync ARM">
<meta itemprop="description" content="As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.">
<meta itemprop="url" content="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">
<div itemprop="image" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/default.jpg" />
<meta itemprop="width" content="800">
<meta itemprop="height" content="800">
</div>
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/logo.jpg">
<meta itemprop="width" content="100">
<meta itemprop="height" content="100">
</div>
<meta itemprop="name" content="Mil años de solitario">
</div>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<meta itemprop="name" content="">
</div>
<header class="article-header">
<time itemprop="datePublished" pubdate="pubdate" datetime="2016-08-15T15:44:05-04:00">Mon, Aug 15, 2016</time>
<h1 class="article-title">Cross Compile RSync ARM</h1>
</header>
<div class="article-body" itemprop="articleBody">
<p>As always, feel free to ask. // Sherlock</p>
<h1 id="motivation">Motivation</h1>
<p>I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. <a href="https://rsync.samba.org/">Rsync</a> is one of the most mature synchronization solution. So I made the decision on planting rsync to android.</p>
<h1 id="pre-work">Pre-work</h1>
<p>Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in <a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">previews blog</a>, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install <a href="https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;hl=en">SSHDroid</a> from Google Play Store.</p>
<h1 id="cross-compile-rsync">Cross-Compile Rsync</h1>
<p>Running following script to build rsync. It will generate a executable file named rsync in the root directory.</p>
<pre><code>$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
</code></pre>
<h1 id="push-rsync-to-android">Push RSync to Android.</h1>
<p>After installing SSHDroid, we can now push our arm-version-rsync to target machine.</p>
<pre><code>$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
</code></pre>
<h1 id="run-rsync-with-argument">Run Rsync with argument</h1>
<p>Now we can easily use rsync in android shell. Similar to what we use on PC.</p>
<pre><code>$ ./rsync -e &quot;./ssh&quot; {target-data} {target-location}:{target-directory}
</code></pre>
<h1 id="references">References</h1>
<p><a href="http://stackoverflow.com/questions/8130889/build-rsync-for-android">Build Rsync for Android</a></p>
</div>
<aside>
<div class="section"><a href="https://codersherlock.github.io/tags/android" class="tag">android</a> <a href="https://codersherlock.github.io/tags/arm" class="tag">arm</a> <a href="https://codersherlock.github.io/tags/research" class="tag">research</a> </div>
<div class="section share">
<a href="http://www.facebook.com/sharer.php?src=bm&u=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-RSync-ARM%2f&t=Cross%20Compile%20RSync%20ARM" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-facebook"></i></a>
<a href="http://twitter.com/intent/tweet?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-RSync-ARM%2f&text=Cross%20Compile%20RSync%20ARM&tw_p=tweetbutton" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-twitter"></i></a>
<a href="https://plus.google.com/share?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-RSync-ARM%2f" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-google-plus"></i></a>
<a href="http://getpocket.com/edit?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-RSync-ARM%2f&title=Cross%20Compile%20RSync%20ARM" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-get-pocket"></i></a>
</div>
<div class="section">
<div id="disqus_thread"></div>
<script type="text/javascript">
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
var disqus_shortname = 'codersherlockblog';
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>
</aside>
</article>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-360
View File
@@ -1,360 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Cross Compile Seafile to ARM - Mil años de solitario</title>
<meta property='og:title' content="Cross Compile Seafile to ARM - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="single">
<div class="row">
<div class="col-md-8">
<article class="single" itemscope="itemscope" itemtype="http://schema.org/Article">
<meta itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" content="https://codersherlock.github.io/"/>
<meta itemprop="dateModified" content="2016-07-30T14:02:34-04:00">
<meta itemprop="headline" content="Cross Compile Seafile to ARM">
<meta itemprop="description" content="Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.">
<meta itemprop="url" content="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">
<div itemprop="image" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/default.jpg" />
<meta itemprop="width" content="800">
<meta itemprop="height" content="800">
</div>
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/logo.jpg">
<meta itemprop="width" content="100">
<meta itemprop="height" content="100">
</div>
<meta itemprop="name" content="Mil años de solitario">
</div>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<meta itemprop="name" content="">
</div>
<header class="article-header">
<time itemprop="datePublished" pubdate="pubdate" datetime="2016-07-30T14:02:34-04:00">Sat, Jul 30, 2016</time>
<h1 class="article-title">Cross Compile Seafile to ARM</h1>
</header>
<div class="article-body" itemprop="articleBody">
<h1 id="motivation">Motivation</h1>
<p>This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</p>
<h1 id="pre-work">Pre-work</h1>
<p>Basically, I used the native android compilation tool-chains, <a href="https://developer.android.com/ndk/downloads/index.html">Android NDK</a>, as working tools. Due to my working situation, I use a <a href="https://shield.nvidia.com/tablet/k1">Nvidia Shield Tablet</a> as target device. As <em>Zengwen</em> said in his <a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">blog</a>, newest updated NDK might has some issue which can influence compilation progress. So you can find <a href="http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk">other version</a> of NDK once you have some problems. Based on what <em>Zengwen&rsquo;s</em> blog mentioned, we can write following useful system environment and export in terminal.</p>
<h2 id="prerequisites">Prerequisites</h2>
<pre><code>$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
</code></pre>
<h2 id="link-with-standalone-tool-chains">Link with standalone tool-chains</h2>
<p>In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.</p>
<pre><code>$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
</code></pre>
<h2 id="original-system-environment-configuration">Original System Environment Configuration</h2>
<p>[TODO]-&gt; I will fix this part later.</p>
<pre><code># Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don't mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&quot;
export LIBS=&quot;-lc -lstdc++ -ld&quot;
export LDFLAGS=&quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&quot;
</code></pre>
<h1 id="compile-process">Compile Process</h1>
<p>To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.</p>
<h2 id="libsearpc">libsearpc</h2>
<h3 id="glib">glib</h3>
<h4 id="libiconv">libiconv</h4>
<h4 id="libffi">libffi</h4>
<h4 id="gettext">gettext</h4>
<h3 id="libjasson">libjasson</h3>
<h2 id="ccnet">ccnet</h2>
<h3 id="libuuid">libuuid</h3>
<h2 id="seafile">seafile</h2>
<h1 id="preferences">Preferences</h1>
<ul>
<li><a href="http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/">zwyuan</a></li>
</ul>
</div>
<aside>
<div class="section"><a href="https://codersherlock.github.io/tags/android" class="tag">android</a> <a href="https://codersherlock.github.io/tags/arm" class="tag">arm</a> <a href="https://codersherlock.github.io/tags/research" class="tag">research</a> </div>
<div class="section share">
<a href="http://www.facebook.com/sharer.php?src=bm&u=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-Seafile-2-ARM%2f&t=Cross%20Compile%20Seafile%20to%20ARM" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-facebook"></i></a>
<a href="http://twitter.com/intent/tweet?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-Seafile-2-ARM%2f&text=Cross%20Compile%20Seafile%20to%20ARM&tw_p=tweetbutton" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-twitter"></i></a>
<a href="https://plus.google.com/share?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-Seafile-2-ARM%2f" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-google-plus"></i></a>
<a href="http://getpocket.com/edit?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fCross-Compile-Seafile-2-ARM%2f&title=Cross%20Compile%20Seafile%20to%20ARM" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-get-pocket"></i></a>
</div>
<div class="section">
<div id="disqus_thread"></div>
<script type="text/javascript">
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
var disqus_shortname = 'codersherlockblog';
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>
</aside>
</article>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-252
View File
@@ -1,252 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Pokemon Go Hack - Mil años de solitario</title>
<meta property='og:title' content="Pokemon Go Hack - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://codersherlock.github.io/post/Pokemon-Go-Hack/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="single">
<div class="row">
<div class="col-md-8">
<article class="single" itemscope="itemscope" itemtype="http://schema.org/Article">
<meta itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" content="https://codersherlock.github.io/"/>
<meta itemprop="dateModified" content="2016-07-30T18:10:20-04:00">
<meta itemprop="headline" content="Pokemon Go Hack">
<meta itemprop="description" content="Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.">
<meta itemprop="url" content="https://codersherlock.github.io/post/Pokemon-Go-Hack/">
<div itemprop="image" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/default.jpg" />
<meta itemprop="width" content="800">
<meta itemprop="height" content="800">
</div>
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/logo.jpg">
<meta itemprop="width" content="100">
<meta itemprop="height" content="100">
</div>
<meta itemprop="name" content="Mil años de solitario">
</div>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<meta itemprop="name" content="">
</div>
<header class="article-header">
<time itemprop="datePublished" pubdate="pubdate" datetime="2016-07-30T18:10:20-04:00">Sat, Jul 30, 2016</time>
<h1 class="article-title">Pokemon Go Hack</h1>
</header>
<div class="article-body" itemprop="articleBody">
<h1 id="catch-them-all-until-bored">Catch them all until bored</h1>
<h1 id="preface">Preface</h1>
<p>I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted <strong>EVERYDAY</strong> and the place where I am now is so barren which even doesn&rsquo;t have much insects and birds(I mean Weedle and Pidgey).
<em>afk I have to battle a nearby gym now</em>
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.</p>
<h1 id="todo-list">TODO List</h1>
<p>-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&rsquo;s idea)
-[ ] Become a Pokemon Master</p>
</div>
<aside>
<div class="section"><a href="https://codersherlock.github.io/tags/hack" class="tag">hack</a> <a href="https://codersherlock.github.io/tags/github" class="tag">github</a> <a href="https://codersherlock.github.io/tags/game" class="tag">game</a> </div>
<div class="section share">
<a href="http://www.facebook.com/sharer.php?src=bm&u=https%3a%2f%2fcodersherlock.github.io%2fpost%2fPokemon-Go-Hack%2f&t=Pokemon%20Go%20Hack" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-facebook"></i></a>
<a href="http://twitter.com/intent/tweet?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fPokemon-Go-Hack%2f&text=Pokemon%20Go%20Hack&tw_p=tweetbutton" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-twitter"></i></a>
<a href="https://plus.google.com/share?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fPokemon-Go-Hack%2f" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-google-plus"></i></a>
<a href="http://getpocket.com/edit?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fPokemon-Go-Hack%2f&title=Pokemon%20Go%20Hack" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-get-pocket"></i></a>
</div>
<div class="section">
<div id="disqus_thread"></div>
<script type="text/javascript">
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
var disqus_shortname = 'codersherlockblog';
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>
</aside>
</article>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
@@ -1,258 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Rsync Experiment Towards X86 VS ARM - Mil años de solitario</title>
<meta property='og:title' content="Rsync Experiment Towards X86 VS ARM - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="single">
<div class="row">
<div class="col-md-8">
<article class="single" itemscope="itemscope" itemtype="http://schema.org/Article">
<meta itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" content="https://codersherlock.github.io/"/>
<meta itemprop="dateModified" content="2016-08-20T01:44:59-04:00">
<meta itemprop="headline" content="Rsync Experiment Towards X86 VS ARM">
<meta itemprop="description" content="Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc">
<meta itemprop="url" content="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">
<div itemprop="image" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/default.jpg" />
<meta itemprop="width" content="800">
<meta itemprop="height" content="800">
</div>
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<meta itemprop="url" content="https://codersherlock.github.io/images/logo.jpg">
<meta itemprop="width" content="100">
<meta itemprop="height" content="100">
</div>
<meta itemprop="name" content="Mil años de solitario">
</div>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<meta itemprop="name" content="">
</div>
<header class="article-header">
<time itemprop="datePublished" pubdate="pubdate" datetime="2016-08-20T01:44:59-04:00">Sat, Aug 20, 2016</time>
<h1 class="article-title">Rsync Experiment Towards X86 VS ARM</h1>
</header>
<div class="article-body" itemprop="articleBody">
<p>Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.</p>
<p><a href="https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing">Google Docs</a></p>
<h4 id="used-command">Used Command</h4>
<h5 id="solve-android-read-only-issue">Solve Android Read_Only Issue</h5>
<pre><code>mount -o rw,remount /system
mount -o ro,remount /system
</code></pre>
<h5 id="using-tc-to-limit-bandwidth-on-host-server">Using tc to limit bandwidth on host server</h5>
<pre><code># Apply speed limits
sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
# Delete limitation profile
sudo tc qdisc del dev {DEV_NAME} root
</code></pre>
</div>
<aside>
<div class="section"><a href="https://codersherlock.github.io/tags/research" class="tag">research</a> <a href="https://codersherlock.github.io/tags/android" class="tag">android</a> </div>
<div class="section share">
<a href="http://www.facebook.com/sharer.php?src=bm&u=https%3a%2f%2fcodersherlock.github.io%2fpost%2fRsync_Experiment_Towards_X86_VS_ARM%2f&t=Rsync%20Experiment%20Towards%20X86%20VS%20ARM" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-facebook"></i></a>
<a href="http://twitter.com/intent/tweet?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fRsync_Experiment_Towards_X86_VS_ARM%2f&text=Rsync%20Experiment%20Towards%20X86%20VS%20ARM&tw_p=tweetbutton" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-twitter"></i></a>
<a href="https://plus.google.com/share?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fRsync_Experiment_Towards_X86_VS_ARM%2f" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-google-plus"></i></a>
<a href="http://getpocket.com/edit?url=https%3a%2f%2fcodersherlock.github.io%2fpost%2fRsync_Experiment_Towards_X86_VS_ARM%2f&title=Rsync%20Experiment%20Towards%20X86%20VS%20ARM" onclick="window.open(this.href, 'PCwindow', 'width=550, height=350, menubar=no, toolbar=no, scrollbars=yes'); return false;"><i class="fa fa-get-pocket"></i></a>
</div>
<div class="section">
<div id="disqus_thread"></div>
<script type="text/javascript">
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
var disqus_shortname = 'codersherlockblog';
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>
</aside>
</article>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-236
View File
@@ -1,236 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Posts - Mil años de solitario</title>
<meta property='og:title' content="Posts - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/post/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Posts</header>
<article class="li">
<header>
<div class="date">Sat, Aug 20, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">Rsync Experiment Towards X86 VS ARM</a></div>
</header>
<div class="body">Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc</div>
<footer>
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Mon, Aug 15, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">Cross Compile RSync ARM</a></div>
</header>
<div class="body">As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">Cross Compile Seafile to ARM</a></div>
</header>
<div class="body">Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-260
View File
@@ -1,260 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Posts on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/post/</link>
<description>Recent content in Posts on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 20 Aug 2016 01:44:59 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/post/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Rsync Experiment Towards X86 VS ARM</title>
<link>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</link>
<pubDate>Sat, 20 Aug 2016 01:44:59 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</guid>
<description>
&lt;p&gt;Partial content of this post won&amp;rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing&#34;&gt;Google Docs&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;used-command&#34;&gt;Used Command&lt;/h4&gt;
&lt;h5 id=&#34;solve-android-read-only-issue&#34;&gt;Solve Android Read_Only Issue&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;mount -o rw,remount /system
mount -o ro,remount /system
&lt;/code&gt;&lt;/pre&gt;
&lt;h5 id=&#34;using-tc-to-limit-bandwidth-on-host-server&#34;&gt;Using tc to limit bandwidth on host server&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;# Apply speed limits
sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
# Delete limitation profile
sudo tc qdisc del dev {DEV_NAME} root
&lt;/code&gt;&lt;/pre&gt;
</description>
</item>
<item>
<title>Cross Compile RSync ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</link>
<pubDate>Mon, 15 Aug 2016 15:44:05 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</guid>
<description>
&lt;p&gt;As always, feel free to ask. // Sherlock&lt;/p&gt;
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. &lt;a href=&#34;https://rsync.samba.org/&#34;&gt;Rsync&lt;/a&gt; is one of the most mature synchronization solution. So I made the decision on planting rsync to android.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in &lt;a href=&#34;https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/&#34;&gt;previews blog&lt;/a&gt;, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install &lt;a href=&#34;https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;amp;hl=en&#34;&gt;SSHDroid&lt;/a&gt; from Google Play Store.&lt;/p&gt;
&lt;h1 id=&#34;cross-compile-rsync&#34;&gt;Cross-Compile Rsync&lt;/h1&gt;
&lt;p&gt;Running following script to build rsync. It will generate a executable file named rsync in the root directory.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;push-rsync-to-android&#34;&gt;Push RSync to Android.&lt;/h1&gt;
&lt;p&gt;After installing SSHDroid, we can now push our arm-version-rsync to target machine.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;run-rsync-with-argument&#34;&gt;Run Rsync with argument&lt;/h1&gt;
&lt;p&gt;Now we can easily use rsync in android shell. Similar to what we use on PC.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./rsync -e &amp;quot;./ssh&amp;quot; {target-data} {target-location}:{target-directory}
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;references&#34;&gt;References&lt;/h1&gt;
&lt;p&gt;&lt;a href=&#34;http://stackoverflow.com/questions/8130889/build-rsync-for-android&#34;&gt;Build Rsync for Android&lt;/a&gt;&lt;/p&gt;
</description>
</item>
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
<item>
<title>Cross Compile Seafile to ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</link>
<pubDate>Sat, 30 Jul 2016 14:02:34 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</guid>
<description>
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;This project is working for delta sync from mobile to server. Currently, there&amp;rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&amp;rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Basically, I used the native android compilation tool-chains, &lt;a href=&#34;https://developer.android.com/ndk/downloads/index.html&#34;&gt;Android NDK&lt;/a&gt;, as working tools. Due to my working situation, I use a &lt;a href=&#34;https://shield.nvidia.com/tablet/k1&#34;&gt;Nvidia Shield Tablet&lt;/a&gt; as target device. As &lt;em&gt;Zengwen&lt;/em&gt; said in his &lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;blog&lt;/a&gt;, newest updated NDK might has some issue which can influence compilation progress. So you can find &lt;a href=&#34;http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk&#34;&gt;other version&lt;/a&gt; of NDK once you have some problems. Based on what &lt;em&gt;Zengwen&amp;rsquo;s&lt;/em&gt; blog mentioned, we can write following useful system environment and export in terminal.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;link-with-standalone-tool-chains&#34;&gt;Link with standalone tool-chains&lt;/h2&gt;
&lt;p&gt;In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;original-system-environment-configuration&#34;&gt;Original System Environment Configuration&lt;/h2&gt;
&lt;p&gt;[TODO]-&amp;gt; I will fix this part later.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don&#39;t mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&amp;quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&amp;quot;
export LIBS=&amp;quot;-lc -lstdc++ -ld&amp;quot;
export LDFLAGS=&amp;quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;compile-process&#34;&gt;Compile Process&lt;/h1&gt;
&lt;p&gt;To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.&lt;/p&gt;
&lt;h2 id=&#34;libsearpc&#34;&gt;libsearpc&lt;/h2&gt;
&lt;h3 id=&#34;glib&#34;&gt;glib&lt;/h3&gt;
&lt;h4 id=&#34;libiconv&#34;&gt;libiconv&lt;/h4&gt;
&lt;h4 id=&#34;libffi&#34;&gt;libffi&lt;/h4&gt;
&lt;h4 id=&#34;gettext&#34;&gt;gettext&lt;/h4&gt;
&lt;h3 id=&#34;libjasson&#34;&gt;libjasson&lt;/h3&gt;
&lt;h2 id=&#34;ccnet&#34;&gt;ccnet&lt;/h2&gt;
&lt;h3 id=&#34;libuuid&#34;&gt;libuuid&lt;/h3&gt;
&lt;h2 id=&#34;seafile&#34;&gt;seafile&lt;/h2&gt;
&lt;h1 id=&#34;preferences&#34;&gt;Preferences&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;zwyuan&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/post/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/post/" /></head></html>
-34
View File
@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://codersherlock.github.io/</loc>
<lastmod>2016-08-20T01:44:59-04:00</lastmod>
</url>
<url>
<loc>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</loc>
<lastmod>2016-08-20T01:44:59-04:00</lastmod>
</url>
<url>
<loc>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</loc>
<lastmod>2016-08-15T15:44:05-04:00</lastmod>
</url>
<url>
<loc>https://codersherlock.github.io/post/Pokemon-Go-Hack/</loc>
<lastmod>2016-07-30T18:10:20-04:00</lastmod>
</url>
<url>
<loc>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</loc>
<lastmod>2016-07-30T14:02:34-04:00</lastmod>
</url>
<url>
<loc>https://codersherlock.github.io/about/</loc>
<lastmod>1993-08-26T08:10:55-04:00</lastmod>
</url>
</urlset>
-220
View File
@@ -1,220 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Android - Mil años de solitario</title>
<meta property='og:title' content="Android - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/android/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Android</header>
<article class="li">
<header>
<div class="date">Sat, Aug 20, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">Rsync Experiment Towards X86 VS ARM</a></div>
</header>
<div class="body">Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc</div>
<footer>
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Mon, Aug 15, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">Cross Compile RSync ARM</a></div>
</header>
<div class="body">As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">Cross Compile Seafile to ARM</a></div>
</header>
<div class="body">Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-233
View File
@@ -1,233 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Android on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/tags/android/</link>
<description>Recent content in Android on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 20 Aug 2016 01:44:59 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/tags/android/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Rsync Experiment Towards X86 VS ARM</title>
<link>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</link>
<pubDate>Sat, 20 Aug 2016 01:44:59 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</guid>
<description>
&lt;p&gt;Partial content of this post won&amp;rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing&#34;&gt;Google Docs&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;used-command&#34;&gt;Used Command&lt;/h4&gt;
&lt;h5 id=&#34;solve-android-read-only-issue&#34;&gt;Solve Android Read_Only Issue&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;mount -o rw,remount /system
mount -o ro,remount /system
&lt;/code&gt;&lt;/pre&gt;
&lt;h5 id=&#34;using-tc-to-limit-bandwidth-on-host-server&#34;&gt;Using tc to limit bandwidth on host server&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;# Apply speed limits
sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
# Delete limitation profile
sudo tc qdisc del dev {DEV_NAME} root
&lt;/code&gt;&lt;/pre&gt;
</description>
</item>
<item>
<title>Cross Compile RSync ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</link>
<pubDate>Mon, 15 Aug 2016 15:44:05 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</guid>
<description>
&lt;p&gt;As always, feel free to ask. // Sherlock&lt;/p&gt;
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. &lt;a href=&#34;https://rsync.samba.org/&#34;&gt;Rsync&lt;/a&gt; is one of the most mature synchronization solution. So I made the decision on planting rsync to android.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in &lt;a href=&#34;https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/&#34;&gt;previews blog&lt;/a&gt;, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install &lt;a href=&#34;https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;amp;hl=en&#34;&gt;SSHDroid&lt;/a&gt; from Google Play Store.&lt;/p&gt;
&lt;h1 id=&#34;cross-compile-rsync&#34;&gt;Cross-Compile Rsync&lt;/h1&gt;
&lt;p&gt;Running following script to build rsync. It will generate a executable file named rsync in the root directory.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;push-rsync-to-android&#34;&gt;Push RSync to Android.&lt;/h1&gt;
&lt;p&gt;After installing SSHDroid, we can now push our arm-version-rsync to target machine.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;run-rsync-with-argument&#34;&gt;Run Rsync with argument&lt;/h1&gt;
&lt;p&gt;Now we can easily use rsync in android shell. Similar to what we use on PC.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./rsync -e &amp;quot;./ssh&amp;quot; {target-data} {target-location}:{target-directory}
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;references&#34;&gt;References&lt;/h1&gt;
&lt;p&gt;&lt;a href=&#34;http://stackoverflow.com/questions/8130889/build-rsync-for-android&#34;&gt;Build Rsync for Android&lt;/a&gt;&lt;/p&gt;
</description>
</item>
<item>
<title>Cross Compile Seafile to ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</link>
<pubDate>Sat, 30 Jul 2016 14:02:34 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</guid>
<description>
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;This project is working for delta sync from mobile to server. Currently, there&amp;rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&amp;rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Basically, I used the native android compilation tool-chains, &lt;a href=&#34;https://developer.android.com/ndk/downloads/index.html&#34;&gt;Android NDK&lt;/a&gt;, as working tools. Due to my working situation, I use a &lt;a href=&#34;https://shield.nvidia.com/tablet/k1&#34;&gt;Nvidia Shield Tablet&lt;/a&gt; as target device. As &lt;em&gt;Zengwen&lt;/em&gt; said in his &lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;blog&lt;/a&gt;, newest updated NDK might has some issue which can influence compilation progress. So you can find &lt;a href=&#34;http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk&#34;&gt;other version&lt;/a&gt; of NDK once you have some problems. Based on what &lt;em&gt;Zengwen&amp;rsquo;s&lt;/em&gt; blog mentioned, we can write following useful system environment and export in terminal.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;link-with-standalone-tool-chains&#34;&gt;Link with standalone tool-chains&lt;/h2&gt;
&lt;p&gt;In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;original-system-environment-configuration&#34;&gt;Original System Environment Configuration&lt;/h2&gt;
&lt;p&gt;[TODO]-&amp;gt; I will fix this part later.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don&#39;t mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&amp;quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&amp;quot;
export LIBS=&amp;quot;-lc -lstdc++ -ld&amp;quot;
export LDFLAGS=&amp;quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;compile-process&#34;&gt;Compile Process&lt;/h1&gt;
&lt;p&gt;To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.&lt;/p&gt;
&lt;h2 id=&#34;libsearpc&#34;&gt;libsearpc&lt;/h2&gt;
&lt;h3 id=&#34;glib&#34;&gt;glib&lt;/h3&gt;
&lt;h4 id=&#34;libiconv&#34;&gt;libiconv&lt;/h4&gt;
&lt;h4 id=&#34;libffi&#34;&gt;libffi&lt;/h4&gt;
&lt;h4 id=&#34;gettext&#34;&gt;gettext&lt;/h4&gt;
&lt;h3 id=&#34;libjasson&#34;&gt;libjasson&lt;/h3&gt;
&lt;h2 id=&#34;ccnet&#34;&gt;ccnet&lt;/h2&gt;
&lt;h3 id=&#34;libuuid&#34;&gt;libuuid&lt;/h3&gt;
&lt;h2 id=&#34;seafile&#34;&gt;seafile&lt;/h2&gt;
&lt;h1 id=&#34;preferences&#34;&gt;Preferences&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;zwyuan&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/tags/android/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/tags/android/" /></head></html>
-204
View File
@@ -1,204 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Arm - Mil años de solitario</title>
<meta property='og:title' content="Arm - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/arm/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Arm</header>
<article class="li">
<header>
<div class="date">Mon, Aug 15, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">Cross Compile RSync ARM</a></div>
</header>
<div class="body">As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">Cross Compile Seafile to ARM</a></div>
</header>
<div class="body">Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-200
View File
@@ -1,200 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Arm on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/tags/arm/</link>
<description>Recent content in Arm on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Mon, 15 Aug 2016 15:44:05 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/tags/arm/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Cross Compile RSync ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</link>
<pubDate>Mon, 15 Aug 2016 15:44:05 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</guid>
<description>
&lt;p&gt;As always, feel free to ask. // Sherlock&lt;/p&gt;
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. &lt;a href=&#34;https://rsync.samba.org/&#34;&gt;Rsync&lt;/a&gt; is one of the most mature synchronization solution. So I made the decision on planting rsync to android.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in &lt;a href=&#34;https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/&#34;&gt;previews blog&lt;/a&gt;, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install &lt;a href=&#34;https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;amp;hl=en&#34;&gt;SSHDroid&lt;/a&gt; from Google Play Store.&lt;/p&gt;
&lt;h1 id=&#34;cross-compile-rsync&#34;&gt;Cross-Compile Rsync&lt;/h1&gt;
&lt;p&gt;Running following script to build rsync. It will generate a executable file named rsync in the root directory.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;push-rsync-to-android&#34;&gt;Push RSync to Android.&lt;/h1&gt;
&lt;p&gt;After installing SSHDroid, we can now push our arm-version-rsync to target machine.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;run-rsync-with-argument&#34;&gt;Run Rsync with argument&lt;/h1&gt;
&lt;p&gt;Now we can easily use rsync in android shell. Similar to what we use on PC.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./rsync -e &amp;quot;./ssh&amp;quot; {target-data} {target-location}:{target-directory}
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;references&#34;&gt;References&lt;/h1&gt;
&lt;p&gt;&lt;a href=&#34;http://stackoverflow.com/questions/8130889/build-rsync-for-android&#34;&gt;Build Rsync for Android&lt;/a&gt;&lt;/p&gt;
</description>
</item>
<item>
<title>Cross Compile Seafile to ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</link>
<pubDate>Sat, 30 Jul 2016 14:02:34 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</guid>
<description>
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;This project is working for delta sync from mobile to server. Currently, there&amp;rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&amp;rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Basically, I used the native android compilation tool-chains, &lt;a href=&#34;https://developer.android.com/ndk/downloads/index.html&#34;&gt;Android NDK&lt;/a&gt;, as working tools. Due to my working situation, I use a &lt;a href=&#34;https://shield.nvidia.com/tablet/k1&#34;&gt;Nvidia Shield Tablet&lt;/a&gt; as target device. As &lt;em&gt;Zengwen&lt;/em&gt; said in his &lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;blog&lt;/a&gt;, newest updated NDK might has some issue which can influence compilation progress. So you can find &lt;a href=&#34;http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk&#34;&gt;other version&lt;/a&gt; of NDK once you have some problems. Based on what &lt;em&gt;Zengwen&amp;rsquo;s&lt;/em&gt; blog mentioned, we can write following useful system environment and export in terminal.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;link-with-standalone-tool-chains&#34;&gt;Link with standalone tool-chains&lt;/h2&gt;
&lt;p&gt;In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;original-system-environment-configuration&#34;&gt;Original System Environment Configuration&lt;/h2&gt;
&lt;p&gt;[TODO]-&amp;gt; I will fix this part later.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don&#39;t mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&amp;quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&amp;quot;
export LIBS=&amp;quot;-lc -lstdc++ -ld&amp;quot;
export LDFLAGS=&amp;quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;compile-process&#34;&gt;Compile Process&lt;/h1&gt;
&lt;p&gt;To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.&lt;/p&gt;
&lt;h2 id=&#34;libsearpc&#34;&gt;libsearpc&lt;/h2&gt;
&lt;h3 id=&#34;glib&#34;&gt;glib&lt;/h3&gt;
&lt;h4 id=&#34;libiconv&#34;&gt;libiconv&lt;/h4&gt;
&lt;h4 id=&#34;libffi&#34;&gt;libffi&lt;/h4&gt;
&lt;h4 id=&#34;gettext&#34;&gt;gettext&lt;/h4&gt;
&lt;h3 id=&#34;libjasson&#34;&gt;libjasson&lt;/h3&gt;
&lt;h2 id=&#34;ccnet&#34;&gt;ccnet&lt;/h2&gt;
&lt;h3 id=&#34;libuuid&#34;&gt;libuuid&lt;/h3&gt;
&lt;h2 id=&#34;seafile&#34;&gt;seafile&lt;/h2&gt;
&lt;h1 id=&#34;preferences&#34;&gt;Preferences&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;zwyuan&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/tags/arm/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/tags/arm/" /></head></html>
-188
View File
@@ -1,188 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Game - Mil años de solitario</title>
<meta property='og:title' content="Game - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/game/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Game</header>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-41
View File
@@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Game on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/tags/game/</link>
<description>Recent content in Game on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 30 Jul 2016 18:10:20 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/tags/game/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/tags/game/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/tags/game/" /></head></html>
-188
View File
@@ -1,188 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Github - Mil años de solitario</title>
<meta property='og:title' content="Github - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/github/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Github</header>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-41
View File
@@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Github on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/tags/github/</link>
<description>Recent content in Github on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 30 Jul 2016 18:10:20 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/tags/github/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/tags/github/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/tags/github/" /></head></html>
-188
View File
@@ -1,188 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Hack - Mil años de solitario</title>
<meta property='og:title' content="Hack - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/hack/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Hack</header>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/">Pokemon Go Hack</a></div>
</header>
<div class="body">Catch them all until bored Preface I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game.</div>
<footer>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-41
View File
@@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Hack on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/tags/hack/</link>
<description>Recent content in Hack on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 30 Jul 2016 18:10:20 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/tags/hack/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Pokemon Go Hack</title>
<link>https://codersherlock.github.io/post/Pokemon-Go-Hack/</link>
<pubDate>Sat, 30 Jul 2016 18:10:20 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Pokemon-Go-Hack/</guid>
<description>
&lt;h1 id=&#34;catch-them-all-until-bored&#34;&gt;Catch them all until bored&lt;/h1&gt;
&lt;h1 id=&#34;preface&#34;&gt;Preface&lt;/h1&gt;
&lt;p&gt;I never imagined that I will truly write something for hacking a game. Though I have to admit that Pokemon Go is a huge heat and different from other games, it still hard to believe that I took movement to make it better(or worse?). I was a big fun of ingress, and thanks to one of my best friends, Kevin, who was also a huge fan to ingress, recommended me this game. Due to some well known reasons, Ingress didn&amp;rsquo;t become popular at my country. But time flies, I break through the wall, and come to a free land which can play Niantic&amp;rsquo;s game. Unfortunately, this time, the only thing restrict me from playing LBS game is limitation of my spare time. Working in the Lab makes me exhausted &lt;strong&gt;EVERYDAY&lt;/strong&gt; and the place where I am now is so barren which even doesn&amp;rsquo;t have much insects and birds(I mean Weedle and Pidgey).
&lt;em&gt;afk I have to battle a nearby gym now&lt;/em&gt;
Anyway, after coming back, I think I write too much on useless words, so let me keep it straight forward. My imagination of this hacking project is very simple, which is making an auto bot helping me go through all experiences a Pokemon trainer will face. In first stage, my goal is making the bot smartly picking up a route to walk, catch all Pokemons and supply from PokeStops.&lt;/p&gt;
&lt;h1 id=&#34;todo-list&#34;&gt;TODO List&lt;/h1&gt;
&lt;p&gt;-[X] Test API
-[ ] Finish Walk Algorithm
-[ ] Finish other movement, etc. catch, hatch
-[ ] Smart Walking route
-[ ] Pokemon Predict (Thanks to Pokevision&amp;rsquo;s idea)
-[ ] Become a Pokemon Master&lt;/p&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/tags/hack/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/tags/hack/" /></head></html>
-183
View File
@@ -1,183 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Tags - Mil años de solitario</title>
<meta property='og:title' content="Tags - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list terms">
<div class="row">
<div class="col-md-8">
<header class="page-title">Tags</header>
<a href="https://CoderSherlock.github.io/tags/android/">android</a>
<a href="https://CoderSherlock.github.io/tags/arm/">arm</a>
<a href="https://CoderSherlock.github.io/tags/game/">game</a>
<a href="https://CoderSherlock.github.io/tags/github/">github</a>
<a href="https://CoderSherlock.github.io/tags/hack/">hack</a>
<a href="https://CoderSherlock.github.io/tags/research/">research</a>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-220
View File
@@ -1,220 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="Hugo 0.16" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<link rel='stylesheet' href='//fonts.googleapis.com/css?family=Open+Sans|Marcellus+SC'>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/styles/solarized_dark.min.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/styles.css">
<link rel="stylesheet" href="https://codersherlock.github.io/css/custom.css">
<link rel="alternate" type="application/rss+xml" title="RSS" href="https://codersherlock.github.io//index.xml">
<title>Research - Mil años de solitario</title>
<meta property='og:title' content="Research - Mil años de solitario">
<meta property="og:type" content="article">
<meta property="og:url" content="https://CoderSherlock.github.io/tags/research/">
</head>
<body>
<header class="site">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://codersherlock.github.io/">Mil años de solitario</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://CoderSherlock.github.io/about/">about me</a></li>
</ul>
</div>
</div>
</nav>
</header>
<div class="site">
<div class="container">
<div class="list">
<div class="row">
<div class="col-md-8">
<header class="page-title">Research</header>
<article class="li">
<header>
<div class="date">Sat, Aug 20, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/">Rsync Experiment Towards X86 VS ARM</a></div>
</header>
<div class="body">Partial content of this post won&rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments. Google Docs Used Command Solve Android Read_Only Issue mount -o rw,remount /system mount -o ro,remount /system Using tc</div>
<footer>
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Mon, Aug 15, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/">Cross Compile RSync ARM</a></div>
</header>
<div class="body">As always, feel free to ask. // Sherlock Motivation I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. Rsync is one of the most mature synchronization solution. So I made the decision on planting rsync to android. Pre-work Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
<article class="li">
<header>
<div class="date">Sat, Jul 30, 2016</div>
<div class="title"><a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/">Cross Compile Seafile to ARM</a></div>
</header>
<div class="body">Motivation This project is working for delta sync from mobile to server. Currently, there&rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.</div>
<footer>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="btn btn-default">Read More…</a>
</footer>
</article>
<hr>
</div>
<div class="col-md-4">
<aside class="site">
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">LatestPosts</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/" class="list-group-item">Rsync Experiment Towards X86 VS ARM</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/" class="list-group-item">Cross Compile RSync ARM</a>
<a href="https://codersherlock.github.io/post/Pokemon-Go-Hack/" class="list-group-item">Pokemon Go Hack</a>
<a href="https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/" class="list-group-item">Cross Compile Seafile to ARM</a>
<a href="https://codersherlock.github.io/about/" class="list-group-item">about me</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">category</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/categories/cross-compile" class="list-group-item">cross-compile</a>
<a href="https://codersherlock.github.io/categories/experiment" class="list-group-item">experiment</a>
<a href="https://codersherlock.github.io/categories/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/categories/hack" class="list-group-item">hack</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h2 class="panel-title">tag</h2>
</div>
<div class="list-group">
<a href="https://codersherlock.github.io/tags/android" class="list-group-item">android</a>
<a href="https://codersherlock.github.io/tags/research" class="list-group-item">research</a>
<a href="https://codersherlock.github.io/tags/arm" class="list-group-item">arm</a>
<a href="https://codersherlock.github.io/tags/game" class="list-group-item">game</a>
<a href="https://codersherlock.github.io/tags/github" class="list-group-item">github</a>
<a href="https://codersherlock.github.io/tags/hack" class="list-group-item">hack</a>
</div>
</div>
</aside>
</div>
</div>
</div>
</div>
</div>
<footer class="site">
<div class="container">
<p>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</p>
<p>Powered by <a href="http://gohugo.io" target="_blank" rel="nofollow">Hugo</a>, Theme <a href="https://github.com/dim0627/hugo_theme_beg" target="_blank" rel="nofollow">beg</a> designed by <a href="http://yet.unresolved.xyz" target="_blank" rel="nofollow">Daisuke Tsuji</a></p>
</div>
</footer>
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.4/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-82637164-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>
-233
View File
@@ -1,233 +0,0 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Research on Mil años de solitario</title>
<link>https://CoderSherlock.github.io/tags/research/</link>
<description>Recent content in Research on Mil años de solitario</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<copyright>Copyright (c) 2016 - 2016, Pengzhan Hao; all rights reserved.</copyright>
<lastBuildDate>Sat, 20 Aug 2016 01:44:59 -0400</lastBuildDate>
<atom:link href="https://CoderSherlock.github.io/tags/research/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Rsync Experiment Towards X86 VS ARM</title>
<link>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</link>
<pubDate>Sat, 20 Aug 2016 01:44:59 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Rsync_Experiment_Towards_X86_VS_ARM/</guid>
<description>
&lt;p&gt;Partial content of this post won&amp;rsquo;t be showed public on this blog. I will generally talking about how I organized my experiment and how I did such a work. As for data and observation, I will create a google docs for it. However, I will also give precise conclusion of my experiments.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.google.com/a/binghamton.edu/document/d/1sCjsC1pXcfgECp3do2oySsG9kW7UZ3BTEXvDlau1vIE/edit?usp=sharing&#34;&gt;Google Docs&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;used-command&#34;&gt;Used Command&lt;/h4&gt;
&lt;h5 id=&#34;solve-android-read-only-issue&#34;&gt;Solve Android Read_Only Issue&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;mount -o rw,remount /system
mount -o ro,remount /system
&lt;/code&gt;&lt;/pre&gt;
&lt;h5 id=&#34;using-tc-to-limit-bandwidth-on-host-server&#34;&gt;Using tc to limit bandwidth on host server&lt;/h5&gt;
&lt;pre&gt;&lt;code&gt;# Apply speed limits
sudo tc qdisc add dev {DEV_NAME} handle 1: root htb default 11
sudo tc class add dev {DEV_NAME} parent 1: classid 1:1 htb rate 1kbit
sudo tc class add dev {DEV_NAME} parent 1:1 classid 1:11 htb rate 1kbit
# Delete limitation profile
sudo tc qdisc del dev {DEV_NAME} root
&lt;/code&gt;&lt;/pre&gt;
</description>
</item>
<item>
<title>Cross Compile RSync ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</link>
<pubDate>Mon, 15 Aug 2016 15:44:05 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-RSync-ARM/</guid>
<description>
&lt;p&gt;As always, feel free to ask. // Sherlock&lt;/p&gt;
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;I got some issues about compile seafile to android, so instead of doing so, I start to figure out some other synchronize workflow. &lt;a href=&#34;https://rsync.samba.org/&#34;&gt;Rsync&lt;/a&gt; is one of the most mature synchronization solution. So I made the decision on planting rsync to android.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Rsync is a sync program with delta sync feature and based on SSH connection. So all we need to do is SSH support and cross compile tool-chain. Similar to what I mentioned in &lt;a href=&#34;https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/&#34;&gt;previews blog&lt;/a&gt;, Android NDK and environment export need to be done before compilation.
To enable normally use of compiled program, we need to make android support SSH. My solution is just install &lt;a href=&#34;https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid&amp;amp;hl=en&#34;&gt;SSHDroid&lt;/a&gt; from Google Play Store.&lt;/p&gt;
&lt;h1 id=&#34;cross-compile-rsync&#34;&gt;Cross-Compile Rsync&lt;/h1&gt;
&lt;p&gt;Running following script to build rsync. It will generate a executable file named rsync in the root directory.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./configure --build=${BUILD_SYS} --host=${TOOLCHAIN}
$ make
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;push-rsync-to-android&#34;&gt;Push RSync to Android.&lt;/h1&gt;
&lt;p&gt;After installing SSHDroid, we can now push our arm-version-rsync to target machine.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ adb push rsync /data/local/tmp
$ adb shell
$ cd /data/data/berserker.android.apps.sshdroid/dropbear
$ mv ../../../local/tmp/rsync .
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;run-rsync-with-argument&#34;&gt;Run Rsync with argument&lt;/h1&gt;
&lt;p&gt;Now we can easily use rsync in android shell. Similar to what we use on PC.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./rsync -e &amp;quot;./ssh&amp;quot; {target-data} {target-location}:{target-directory}
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;references&#34;&gt;References&lt;/h1&gt;
&lt;p&gt;&lt;a href=&#34;http://stackoverflow.com/questions/8130889/build-rsync-for-android&#34;&gt;Build Rsync for Android&lt;/a&gt;&lt;/p&gt;
</description>
</item>
<item>
<title>Cross Compile Seafile to ARM</title>
<link>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</link>
<pubDate>Sat, 30 Jul 2016 14:02:34 -0400</pubDate>
<guid>https://codersherlock.github.io/post/Cross-Compile-Seafile-2-ARM/</guid>
<description>
&lt;h1 id=&#34;motivation&#34;&gt;Motivation&lt;/h1&gt;
&lt;p&gt;This project is working for delta sync from mobile to server. Currently, there&amp;rsquo;s no mobile program/solution has supporting to delta sync(Include Dropbox/ Goggle Drive). But the truth is that almost every pc version sync program can work as delta sync properly or not. So in this article, I&amp;rsquo;ll provide a workbench for cross compilation and evaluation. And finally come up with a reason of how to port better incremental synchronize solution on mobile platform.&lt;/p&gt;
&lt;h1 id=&#34;pre-work&#34;&gt;Pre-work&lt;/h1&gt;
&lt;p&gt;Basically, I used the native android compilation tool-chains, &lt;a href=&#34;https://developer.android.com/ndk/downloads/index.html&#34;&gt;Android NDK&lt;/a&gt;, as working tools. Due to my working situation, I use a &lt;a href=&#34;https://shield.nvidia.com/tablet/k1&#34;&gt;Nvidia Shield Tablet&lt;/a&gt; as target device. As &lt;em&gt;Zengwen&lt;/em&gt; said in his &lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;blog&lt;/a&gt;, newest updated NDK might has some issue which can influence compilation progress. So you can find &lt;a href=&#34;http://stackoverflow.com/questions/6849981/where-do-i-find-old-versions-of-android-ndk&#34;&gt;other version&lt;/a&gt; of NDK once you have some problems. Based on what &lt;em&gt;Zengwen&amp;rsquo;s&lt;/em&gt; blog mentioned, we can write following useful system environment and export in terminal.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;$ sudo apt-get install build-essential
$ sudo apt-get install pkg-config automake autoconf libtool
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;link-with-standalone-tool-chains&#34;&gt;Link with standalone tool-chains&lt;/h2&gt;
&lt;p&gt;In order to build standalone tool-chains, we need first to export following system environment. After doing that, we can use following command to build a standalone tool-chains from downloaded NDK.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ${NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=arm-linux-androideabi-4.9 \
--stl=gnustl \
--arch=arm \
--ndk-dir=/home/moslab/Android/android-ndk-r12b \
--package-dir=/home/moslab/Android \
--install-dir=/home/moslab/Android/android-ndk-toolchain \
--platform=android-22
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;original-system-environment-configuration&#34;&gt;Original System Environment Configuration&lt;/h2&gt;
&lt;p&gt;[TODO]-&amp;gt; I will fix this part later.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Android NDK sources and standalone toolchain is put here
export DEV=~/Android/
# All the built binaries, libs and their header will be installed here
export PREFIX=/opt/android
# Don&#39;t mix up .pc files from your host and build target
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
# GCC for Android version to use
# 4.9 is the only available version since NDK r11!
export GCC_VER=4.9
# The building system we are using (Linux x86_64)
export BUILD_SYS=x86_64-linux-gnu
# Set Android target API level
export ANDROID_API=22
# Set Android target arch
export ANDROID_ARCH=arm
# Set Android target name, according to Table 2 in
# https://developer.android.com/ndk/guides/standalone_toolchain.html
export ANDROID_TARGET=armv7-none-linux-androideabi
# The cross-compile toolchain we use
export TOOLCHAIN=arm-linux-androideabi
# This is a symlink pointing to the real Android NDK r12b
export NDK=${DEV}/android-ndk
# The path of standalone NDK toolchain
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export NDK_TOOLCHAIN=${DEV}/android-ndk-toolchain
# this one is the absolute, prebuilt path
export SYSROOT=${NDK}/platforms/android-${ANDROID_API}/arch-${ANDROID_ARCH}
# this one is the absolute, prebuilt path
export CROSS_PREFIX=${NDK}/toolchains/${TOOLCHAIN}-${GCC_VER}/prebuilt/linux-x86_64/bin/${TOOLCHAIN}
# Non-exhaustive lists of compiler + binutils
export AR=${CROSS_PREFIX}-ar
export AS=${CROSS_PREFIX}-as
export LD=${CROSS_PREFIX}-ld
export NM=${CROSS_PREFIX}-nm
export CC=${CROSS_PREFIX}-gcc
export CXX=${CROSS_PREFIX}-g++
export CPP=${CROSS_PREFIX}-cpp
export CXXCPP=${CROSS_PREFIX}-cpp
export STRIP=${CROSS_PREFIX}-strip
export RANLIB=${CROSS_PREFIX}-ranlib
export STRINGS=${CROSS_PREFIX}-strings
# Set build flags
# Refer to https://developer.android.com/ndk/guides/standalone_toolchain.html
export PATH=$PATH:${PREFIX}/bin:${PREFIX}/lib
export CFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -fPIE -DANDROID -Wno-multichar&amp;quot;
export CXXFLAGS=${CFLAGS}
export CPPFLAGS=&amp;quot;--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${NDK_TOOLCHAIN}/include/c++/ -DANDROID -DNO_XMALLOC -mandroid&amp;quot;
export LIBS=&amp;quot;-lc -lstdc++ -ld&amp;quot;
export LDFLAGS=&amp;quot;-Wl,-rpath-link=-I${SYSROOT}/usr/lib -L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;h1 id=&#34;compile-process&#34;&gt;Compile Process&lt;/h1&gt;
&lt;p&gt;To compile seafile, we should compile ccnet and libsearpc first. As for these two projects, they all have their own dependencies, so we must follow some order to run the compilation.&lt;/p&gt;
&lt;h2 id=&#34;libsearpc&#34;&gt;libsearpc&lt;/h2&gt;
&lt;h3 id=&#34;glib&#34;&gt;glib&lt;/h3&gt;
&lt;h4 id=&#34;libiconv&#34;&gt;libiconv&lt;/h4&gt;
&lt;h4 id=&#34;libffi&#34;&gt;libffi&lt;/h4&gt;
&lt;h4 id=&#34;gettext&#34;&gt;gettext&lt;/h4&gt;
&lt;h3 id=&#34;libjasson&#34;&gt;libjasson&lt;/h3&gt;
&lt;h2 id=&#34;ccnet&#34;&gt;ccnet&lt;/h2&gt;
&lt;h3 id=&#34;libuuid&#34;&gt;libuuid&lt;/h3&gt;
&lt;h2 id=&#34;seafile&#34;&gt;seafile&lt;/h2&gt;
&lt;h1 id=&#34;preferences&#34;&gt;Preferences&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://zwyuan.github.io/2016/07/17/cross-compile-glib-for-android/&#34;&gt;zwyuan&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>
</channel>
</rss>
-1
View File
@@ -1 +0,0 @@
<!DOCTYPE html><html><head><link rel="canonical" href="https://CoderSherlock.github.io/tags/research/"/><meta http-equiv="content-type" content="text/html; charset=utf-8" /><meta http-equiv="refresh" content="0;url=https://CoderSherlock.github.io/tags/research/" /></head></html>