{"id":1039,"date":"2014-08-18T21:19:30","date_gmt":"2014-08-18T12:19:30","guid":{"rendered":"http:\/\/43.203.250.216\/?p=1039"},"modified":"2020-12-30T17:01:05","modified_gmt":"2020-12-30T08:01:05","slug":"cygwin%ec%97%90%ec%84%9c-android-systrace-%ec%8b%a4%ed%96%89-%eb%ac%b8%ec%a0%9c","status":"publish","type":"post","link":"https:\/\/litcoder.com\/?p=1039","title":{"rendered":"Cygwin\uc5d0\uc11c Android systrace \uc2e4\ud589 \ubb38\uc81c"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">2014\ub144 8\uc6d4 \ud604\uc7ac, Cygwin\uc73c\ub85c systrace\ub97c \uc0ac\uc6a9\ud558\ub824\uace0 \ud558\uba74 zlib \uad00\ub828\ud55c error\uac00 \ub098\uba74\uc11c \ub3d9\uc791\ud558\uc9c0 \uc54a\ub294\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ python systrace.py -o output.html gfx input view wm am video hal dalvik\ncapturing trace... done\ndownloading trace... done\n\nTraceback (most recent call last):\n  File \"systrace.py\", line 286, in &lt;module>\n    main()\n  File \"systrace.py\", line 231, in main\n    decoded_chunk = dec.decompress(chunk)\nzlib.error: Error -3 while decompressing: incorrect header check<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">AOSP project\uc758 \uc774 <a href=\"https:\/\/android-review.googlesource.com\/#\/c\/55170\/\">\ub9c1\ud06c<\/a>\uc5d0 \ubcf4\uba74 \ubb38\uc81c\ub97c \ud574\uacb0\ud558\uae30 \uc704\ud55c patch\uac00 \uc62c\ub824\uc838 \uc788\ub294\ub370 comment\ub97c \ubcf4\ub2c8 \ud55c\ub3d9\uc548 \ubc1b\uc544\ub4e4\uc5ec \uc9c0\uc9c0 \uc54a\ub2e4\uac00 \ud604\uc7ac source\uc640 \ub2ec\ub77c\uc838\uc11c \uc801\uc6a9\ud560 \uc218 \uc5c6\uac8c \ub41c \ubaa8\uc591\uc774\ub2e4. \uac19\uc740 \ub3d9\uc791\uc744 \ud558\ub3c4\ub85d \uc57d\uac04\ub9cc \uc218\uc815\ud574\uc11c \uc774\ub807\uac8c \uace0\uccd0 \ubcf4\ub2c8 \uc880 \uc9c0\uc800\ubd84\ud558\uae34 \ud574\ub3c4 zlib error \uc5c6\uc774 Cygwin\uc5d0\uc11c systrace\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc5c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"diff\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">diff --git a\/systrace.py b\/systrace.py\nindex 387f413..0d3be25 100644\n--- a\/systrace.py\n+++ b\/systrace.py\n@@ -205,8 +205,12 @@ def main():\n       data = ''.join(data)\n\n       # Collapse CRLFs that are added by adb shell.\n-      if data.startswith('\\r\\n'):\n-        data = data.replace('\\r\\n', '\\n')\n+      if sys.platform == 'cygwin':\n+        if data.startswith('\\r\\r\\n'):\n+          data = data.replace('\\r\\r\\n', '\\n')\n+      else:\n+        if data.startswith('\\r\\n'):\n+          data = data.replace('\\r\\n', '\\n')\n\n       # Skip the initial newline.\n       data = data[1:]\n\ufeff<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>2014\ub144 8\uc6d4 \ud604\uc7ac, Cygwin\uc73c\ub85c systrace\ub97c \uc0ac\uc6a9\ud558\ub824\uace0 \ud558\uba74 zlib \uad00\ub828\ud55c error\uac00 \ub098\uba74\uc11c \ub3d9\uc791\ud558\uc9c0 \uc54a\ub294\ub2e4. AOSP project\uc758 \uc774 \ub9c1\ud06c\uc5d0 \ubcf4\uba74 \ubb38\uc81c\ub97c \ud574\uacb0\ud558\uae30 \uc704\ud55c patch\uac00 \uc62c\ub824\uc838 \uc788\ub294\ub370 comment\ub97c \ubcf4\ub2c8 \ud55c\ub3d9\uc548 \ubc1b\uc544\ub4e4\uc5ec \uc9c0\uc9c0 \uc54a\ub2e4\uac00 \ud604\uc7ac source\uc640 \ub2ec\ub77c\uc838\uc11c \uc801\uc6a9\ud560 \uc218 \uc5c6\uac8c \ub41c \ubaa8\uc591\uc774\ub2e4. \uac19\uc740 \ub3d9\uc791\uc744 \ud558\ub3c4\ub85d \uc57d\uac04\ub9cc \uc218\uc815\ud574\uc11c \uc774\ub807\uac8c \uace0\uccd0 \ubcf4\ub2c8 \uc880 \uc9c0\uc800\ubd84\ud558\uae34 \ud574\ub3c4 zlib error \uc5c6\uc774 Cygwin\uc5d0\uc11c systrace\ub97c \uc0ac\uc6a9\ud560 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[2],"tags":[11,32,121],"class_list":["post-1039","post","type-post","status-publish","format-standard","hentry","category-android","tag-android","tag-cygwin","tag-systrace"],"jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":710,"url":"https:\/\/litcoder.com\/?p=710","url_meta":{"origin":1039,"position":0},"title":"Mac\uc6a9 AndroidStudio\uc5d0\uc11c \uc0c8\ub85c\uc6b4 \ud504\ub85c\uc81d\ud2b8\ub97c \ub9cc\ub4e4\uc9c0 \ubabb\ud558\ub294 \ubb38\uc81c","author":"litcoder","date":"2013\ub144 8\uc6d4 14\uc77c","format":false,"excerpt":"Mac\uc6a9 AndroidStudio v0.2.3\uc744 \uc124\uce58\ud558\uace0 \ucc98\uc74c\uc73c\ub85c 'New Project'\ub97c \ub9cc\ub4dc\ub294\ub370 \ub9c8\uc9c0\ub9c9 \ub2e8\uacc4\uc5d0\uc11c \"Failed to import Gradle project:\" error popup\uc774 \ub728\uba74\uc11c \uc81c\ub300\ub85c \ub418\uc9c0 \uc54a\ub294\ub2e4. \uc2e4\uc81c\ub85c\ub294 project directory\uc640 file\ub4e4\ub3c4 \ubaa8\ub450 \uc0dd\uae30\ub294\ub370 project\uac00 \ub4f1\ub85d\ub418\uc9c0 \uc54a\ub294\ub2e4. Error log\ub85c \ubd10\uc11c\ub294 build\uc640 \uad00\ub828\uc774 \uc788\ub294 Gradle\uc774 \uc81c\ub300\ub85c\u00a0\ub3d9\uc791\ud558\uc9c0 \ubabb\ud55c \ubb38\uc81c\uc778\uac83 \uac19\ub2e4. Log\ub294 \"~\/Library\/Logs\/AndroidStudioPreview\/idea.log\"\uc5d0\uc11c \ubcfc \uc218 \uc788\ub2e4. Failed to import Gradle\u2026","rel":"","context":"&quot;Android&quot;\uc5d0\uc11c","block_context":{"text":"Android","link":"https:\/\/litcoder.com\/?cat=2"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_mac_home_permission.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_mac_home_permission.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_mac_home_permission.png?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":864,"url":"https:\/\/litcoder.com\/?p=864","url_meta":{"origin":1039,"position":1},"title":"Jinja2\uc758 UnicodeDecodeError","author":"litcoder","date":"2013\ub144 11\uc6d4 4\uc77c","format":false,"excerpt":"App engine\uc744 \uc774\uc6a9\ud558\ub294 project \uc911\uc5d0 Jinja2 template \ubd80\ubd84\uc5d0\uc11c \ub2e4\uc74c\uacfc \uac19\uc774 UnicodeDecodeError\uac00 \ubc1c\uc0dd\ud558\ub294 \ubb38\uc81c\uac00 \uc0dd\uacbc\ub2e4. Traceback (most recent call last): File \"<<APP_ENGINE>>\/lib\/webapp2-2.5.2\/webapp2.py\", line 1535, in __call__ rv = self.handle_exception(request, response, e) File \"<<APP_ENGINE>>\/lib\/webapp2-2.5.2\/webapp2.py\", line 1529, in __call__ rv = self.router.dispatch(request, response) File \"<<APP_ENGINE>>\/lib\/webapp2-2.5.2\/webapp2.py\", line 1278, in default_dispatcher return route.handler_adapter(request, response)J File\u2026","rel":"","context":"&quot;Programming&quot;\uc5d0\uc11c","block_context":{"text":"Programming","link":"https:\/\/litcoder.com\/?cat=5"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":4146,"url":"https:\/\/litcoder.com\/?p=4146","url_meta":{"origin":1039,"position":2},"title":"Lightsail \uc2a4\ub0c5\uc0f7\uc73c\ub85c \ud558\uc704 \uc778\uc2a4\ud134\uc2a4\ub97c \uc0dd\uc131\ud560 \uc218 \uc5c6\ub2e4","author":"litcoder","date":"2026\ub144 3\uc6d4 4\uc77c","format":false,"excerpt":"Lightsail\uc758 WordPress \uc778\uc2a4\ud134\uc2a4\ub97c AL2023\uc73c\ub85c \uc804\ud658 \ud560 \ub54c, All-in-One Migration utility\ub85c import\ub97c \uc2dc\ub3c4\ud558\ub294\ub370 \uc774\uc804\uc5d0 \ubcf8 \uc801\uc774 \uc5c6\ub358 internal error\uac00 \ubc1c\uc0dd\ud588\ub2e4. \ubd84\uba85 \uc5c5\ub85c\ub4dc \uac00\ub2a5\ud55c \ud30c\uc77c \ud06c\uae30\ub3c4 import\ud558\ub294 \uc555\ucd95 \ud30c\uc77c \ubcf4\ub2e4 \ud06c\uac8c \uc124\uc815\ud574 \uc8fc\uc5c8\uace0 \ub2e4\ub978 \uc124\uc815\ub4e4\ub3c4 \ubaa8\ub450 \ub9c8\ucce4\uc74c\uc5d0\ub3c4 \uacc4\uc18d\ud574\uc11c \uc2e4\ud328\ud558\ub294 \uac83\uc774\ub2e4. YYYY\/MM\/DD HH:MM:SS [error] 32777#32777: *4 FastCGI sent in stderr: \"PHP message: PHP\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2026\/02\/lightsail_instance_from_snapshot-2.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2026\/02\/lightsail_instance_from_snapshot-2.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2026\/02\/lightsail_instance_from_snapshot-2.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2026\/02\/lightsail_instance_from_snapshot-2.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":970,"url":"https:\/\/litcoder.com\/?p=970","url_meta":{"origin":1039,"position":3},"title":"[Tip] PyDev plugin \uc124\uce58\ud6c4 \ub3d9\uc791\ud558\uc9c0 \uc54a\uc744 \ub54c","author":"litcoder","date":"2014\ub144 1\uc6d4 23\uc77c","format":false,"excerpt":"Ubuntu\uc6a9 Eclipse\uc5d0 PyDev\ub97c \uc124\uce58\ud558\uace0 program\uc744 \uc7ac\uc2e4\ud589 \ud588\ub294\ub370\ub3c4 *.py \ud655\uc7a5\uc790\uac00 \uc778\uc2dd\ub418\uc9c0 \uc54a\uace0 \uc2e4\ud589\uacfc \ub514\ubc84\uae45 \uba54\ub274\uc5d0\ub3c4 \u00a0Python \ud56d\ubaa9\uc774 \ub098\ud0c0\ub098\uc9c0 \uc54a\ub294 \uac83\uc740 PyDev\uac00 3.0 \ubc84\uc804 \ubd80\ud130\ub294 Java7\ub97c \uc694\uad6c\ud558\uae30 \ub54c\ubb38\uc774\uc5c8\ub2e4. (\ucc38\uc870 \uae30\uc0ac) \uac19\uc740 \uc11c\ubc84\uc5d0\uc11c Android\ub97c build\ud558\uace0 \uc788\uc5b4\uc11c Oracle JDK version\uc744 \uc62c\ub9b4 \uc218\ub294 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc606\uc5d0\uc11c \ub180\uace0 \uc788\ub358 Open JDK\uc758 version\uc744 7\ub85c \uc62c\ub824\uc11c \uc124\uc815\ud558\uae30\ub85c \ud588\ub2e4.\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1337,"url":"https:\/\/litcoder.com\/?p=1337","url_meta":{"origin":1039,"position":4},"title":"MinnowboardMAX\uc5d0 Android \uc62c\ub824 \ubcf8 \ub0b4\uc6a9 \uc815\ub9ac","author":"litcoder","date":"2015\ub144 9\uc6d4 19\uc77c","format":false,"excerpt":"Android \/ Chromium OS \/ Windows\ub97c \uc62c\ub824 \ubcfc \uc218 \uc788\ub294 Intel Baytrail \uae30\ubc18\uc758 \uac1c\ubc1c\ubcf4\ub4dc\uc778 MinnowboardMAX\uc5d0 Android 5.1\uc744 install\ud558\ub294 \uacfc\uc815\uc744 \uc124\uba85\ud55c\ub2e4. \ud544\uc694\ud55c \uac83 \ub4e4 Minnowboard MAX - \ud310\ub9e4\ud558\ub294 \uacf3, 2015\ub144 9\uc6d4 \ud604\uc7ac \uad6d\ub0b4\uc5d0\uc11c \ud310\ub9e4\ud558\ub294 \uacf3\uc740 \uc5c6\ub294\uac83 \uac19\ub2e4. FTDI cable - Serial \ucd9c\ub825\uc744 PC\uc5d0\uc11c \ubc1b\uae30 \uc704\ud574 guide \ubb38\uc11c\uc5d0\ub294 TTL-232R\uc744 \uc0ac\uc6a9\ud558\ub77c\uace0 \u00a0\ub098\uc640 \uc788\ub294\ub370\u2026","rel":"","context":"&quot;Android&quot;\uc5d0\uc11c","block_context":{"text":"Android","link":"https:\/\/litcoder.com\/?cat=2"},"img":{"alt_text":"minnowboardMAX_connection","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2015\/09\/minnowboardMAX_connection.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1489,"url":"https:\/\/litcoder.com\/?p=1489","url_meta":{"origin":1039,"position":5},"title":"Android Studio\uc5d0\uc11c Googletest \uc0ac\uc6a9\uc744 \uc704\ud55c \uc124\uc815","author":"litcoder","date":"2016\ub144 7\uc6d4 1\uc77c","format":false,"excerpt":"Android Studio\ub294 \ub0b4 PC\uc5d0\uc11c \uc880 \ub290\ub9ac\uae34 \ud558\uc9c0\ub9cc, \ub2e4\ub978 IDE\ub4e4\uc5d0 \ube44\ud574\uc11c\ub294 Emacs key binding\uc774 \ube44\uad50\uc801 \uc798\ub418\uc5b4 \uc788\uc5b4\uc11c \ub9cc\uc871 \ud558\uba74\uc11c \uc870\uae08\uc529 \ubc30\uc6cc\uac00\uace0 \uc788\ub2e4. NDK\ub85c JNI\uc5d0\uc11c \ubd88\ub7ec\ub2e4 \uc4f8 native code\ub97c \uad6c\ud604\ud558\ub2e4 \ubcf4\ub2c8 Googletest\ub97c \uc0ac\uc6a9\ud558\uae30 \uc704\ud574 \ub9e4\ubc88 device\ub85c push \ud558\uace0 \uc2e4\ud589\ud558\ub294 \uacfc\uc815\uc774 \uaf64\ub098 \ubc88\uac70\ub85c\uc640\uc11c script\ub85c \ub9cc\ub4e4\uc5b4 \ubcf4\uc558\ub2e4. \uc774 \uae00\uc5d0\uc11c\ub294 Android Studio\uc5d0\uc11c Googletest\ub97c \uc0ac\uc6a9\ud558\uae30 \uc704\ud55c\u2026","rel":"","context":"&quot;Android&quot;\uc5d0\uc11c","block_context":{"text":"Android","link":"https:\/\/litcoder.com\/?cat=2"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2016\/07\/androidstudio_edittool.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2016\/07\/androidstudio_edittool.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2016\/07\/androidstudio_edittool.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2016\/07\/androidstudio_edittool.png?resize=700%2C400&ssl=1 2x"},"classes":[]}],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/1039","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1039"}],"version-history":[{"count":1,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/1039\/revisions"}],"predecessor-version":[{"id":2747,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/1039\/revisions\/2747"}],"wp:attachment":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1039"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1039"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1039"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}