{"action":"created","issue":{"url":"https://api.github.com/repos/lwfinger/rtl8188eu/issues/99","labels_url":"https://api.github.com/repos/lwfinger/rtl8188eu/issues/99/labels{/name}","comments_url":"https://api.github.com/repos/lwfinger/rtl8188eu/issues/99/comments","events_url":"https://api.github.com/repos/lwfinger/rtl8188eu/issues/99/events","html_url":"https://github.com/lwfinger/rtl8188eu/issues/99","id":57046325,"number":99,"title":"Cross compilation for ARM target (kernel 3.6.3)","user":{"login":"ssinfod","id":10925073,"avatar_url":"https://avatars.githubusercontent.com/u/10925073?v=3","gravatar_id":"","url":"https://api.github.com/users/ssinfod","html_url":"https://github.com/ssinfod","followers_url":"https://api.github.com/users/ssinfod/followers","following_url":"https://api.github.com/users/ssinfod/following{/other_user}","gists_url":"https://api.github.com/users/ssinfod/gists{/gist_id}","starred_url":"https://api.github.com/users/ssinfod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ssinfod/subscriptions","organizations_url":"https://api.github.com/users/ssinfod/orgs","repos_url":"https://api.github.com/users/ssinfod/repos","events_url":"https://api.github.com/users/ssinfod/events{/privacy}","received_events_url":"https://api.github.com/users/ssinfod/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-02-09T15:37:34Z","updated_at":"2015-02-10T04:50:54Z","closed_at":null,"body":"Hello, \r\nmy goal is to build the rtl8188eu module for an embedded ARM target.\r\nThe target is the phidget SBC3 board (CPU: Freescale i.mx28).\r\nhttp://www.phidgets.com/products.php?product_id=1073\r\n\r\nIt is running a custom kernel (3.6.3) from a debian distro.\r\n\r\nI have some knowledge about linux but I don't know much about driver.\r\n\r\nFirst, I thought to compile the 8188eu driver directly on the host but it does not have the kernel-headers because the kernel is custom. (ie: patch RT_PREEMPT and some other customization)\r\n\r\nThe people from phidget told me it would be better to cross compile it.\r\nTherefore, I installed the gcc arm compiler (arm-linux-gnueabi).\r\n\r\nI also downloaded the kernel 3.6.3 from kernel.org and apply the phidget patch to it.\r\nThen, I tried to compile the 8188eu driver and I have the following output:\r\n Building modules, stage 2.\r\n MODPOST 0 modules\r\n\r\nI don't understand why I have this message. I tried to change the configuration of the 3.6.3 kernel but I don't see the 8188eu driver under \"Device Driver\"  (network) nor \"Staging Driver\".\r\n\r\nHere are my quesitons:\r\nQ1) Do I need a more recent kernel to cross compile the 8188eu driver ?\r\nQ2) Can I compile the driver with another kernel (more recent) and use it with my older 3.6.3 kernel ?\r\nQ3) Can I use directly the binary file 8188eu.ko from another person. (does It have to be compiled for the exact same kernel?)\r\nQ4) Does the kernel needs to have the driver selected as a module (M) to use it ? \r\nDoes the kernel needs to have the driver selected as a module to build it ? (It is not clear to me why I must change the kernel configuration to build the module)\r\n\r\nI found some good reference on the following linux-sunxi website. I was able to follow these instructions and cross-compile the driver for the sunxi (allwinner) target. However, it is not working for my target. \r\n\r\nReference1, 8188eu driver for sunxi:\r\nhttp://linux-sunxi.org/Wifi\r\nReference2, patch for phidget sbc: \r\nhttp://www.phidgets.com/docs/OS_-_Phidget_SBC#Quick_Downloads\r\n\r\nAny help with my issue would be very appreciated.\r\nThanks,\r\nssinfod"},"comment":{"url":"https://api.github.com/repos/lwfinger/rtl8188eu/issues/comments/73644080","html_url":"https://github.com/lwfinger/rtl8188eu/issues/99#issuecomment-73644080","issue_url":"https://api.github.com/repos/lwfinger/rtl8188eu/issues/99","id":73644080,"user":{"login":"ssinfod","id":10925073,"avatar_url":"https://avatars.githubusercontent.com/u/10925073?v=3","gravatar_id":"","url":"https://api.github.com/users/ssinfod","html_url":"https://github.com/ssinfod","followers_url":"https://api.github.com/users/ssinfod/followers","following_url":"https://api.github.com/users/ssinfod/following{/other_user}","gists_url":"https://api.github.com/users/ssinfod/gists{/gist_id}","starred_url":"https://api.github.com/users/ssinfod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ssinfod/subscriptions","organizations_url":"https://api.github.com/users/ssinfod/orgs","repos_url":"https://api.github.com/users/ssinfod/repos","events_url":"https://api.github.com/users/ssinfod/events{/privacy}","received_events_url":"https://api.github.com/users/ssinfod/received_events","type":"User","site_admin":false},"created_at":"2015-02-10T04:50:54Z","updated_at":"2015-02-10T04:50:54Z","body":"Thanks, the cross-compilation worked !\r\nIt seems I was only missing the KSRC variable. \r\n\r\nIt would be great if the driver exists in 32 bits or 64 bits flavor for x86, ARM and other architecture.\r\nI don't understand all the internals but I find it strange that linux drivers are incompatible between kernel versions. What is the reason behind this ?\r\n\r\nI don't mind to do this kind of operations but that is less accessible for general public.\r\n\r\nAnyway, thanks a lot for your help.\r\nssinfod\r\n"}}