{"description":"perl\u306exs\u3068\u6bd4\u8f03\u3059\u308b\u3068\u3001\u304b\u306a\u308a\u7c21\u5358\u306a\u6c17\u304c\u3057\u307e\u3059 step1 - C\u30bd\u30fc\u30b9\u3092\u4f5c\u6210 $ vi HelloCtypes.c #include <stdio.h> void hello_ctypes() { printf(\"HELLO CTYPES\\n\"); } step2 - C\u30bd\u30fc\u30b9\u3092\u30b3\u30f3\u30d1\u30a4\u30eb $ gcc -shared -fPIC -o HelloCtypes.so HelloCtypes.c step3 - python script\u3092\u4f5c\u6210 $ vi call_ctypes.py from ctypes import * def main(): so = cdll.LoadLibrary\u2026","author_url":"https://blog.hatena.ne.jp/end0tknr/","provider_url":"https://hatena.blog","type":"rich","width":"100%","title":"python\u306ectypes\u3067\u3001so (Shared Object)\u306e\u95a2\u6570\u3092\u5229\u7528\u3059\u308b","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fend0tknr.hateblo.jp%2Fentry%2F20151205%2F1449315930\" title=\"python\u306ectypes\u3067\u3001so (Shared Object)\u306e\u95a2\u6570\u3092\u5229\u7528\u3059\u308b - end0tknr&#39;s kipple - web\u5199\u7d4c\u958b\u767a\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","published":"2015-12-05 20:45:30","blog_url":"https://end0tknr.hateblo.jp/","provider_name":"Hatena Blog","blog_title":"end0tknr's kipple - web\u5199\u7d4c\u958b\u767a","author_name":"end0tknr","height":"190","url":"https://end0tknr.hateblo.jp/entry/20151205/1449315930","version":"1.0","image_url":null,"categories":[]}