Attached is a new ebuild for NQC (Not Quite C) version 3.1-r1. NQC is a compiler which produces code to be executed on the Lego Mindstorms RCX systems. This ebuild superceeds Bug #36578 Reproducible: Always Steps to Reproduce:
Created attachment 56419 [details] Proposed ebuild for NQC 3.1-r1
*** Bug 36578 has been marked as a duplicate of this bug. ***
I have been working on this ebuild for a while and finally have a working ebuild for the latest version that supports usb.
Created attachment 66819 [details] nqc-3.1_p2.ebuild I believe it is correct to use _p for patchlevels then -r. I may be wrong. This ebuild depends on dev-libs/legousbtower.
Created attachment 66820 [details, diff] nqc-3.1_p2.patch This is the patch for nqc. A couple lines are unneeded.
Created attachment 66822 [details] legousbtower-0.5.4.ebuild This is the ebuild needed for usb IR tower support. If the kernel is 2.6 then only the header is needed.
Created attachment 66823 [details] 20-lego.rules This is a udev rules file required to work around the fact that nqc looks for /dev/usb/lego0 and the kernel gives it /dev/usb/legousbtower0. This may be fixable with a patch to either nqc or legousbtower.h, but I don't know how to do that.
Created attachment 67107 [details] 20-lego.rules An updated rule with proper permissions
Created attachment 67108 [details] nqc-3.1_p2.ebuild Fixed if statements, usb use flag now works correctly.
Version 3.1-r3 is the current one. I have successfully installed it from source. Can someone make an ebuild for this version? Please add an usb useflag as I don't need USB-support for it (I have an old serial version of the tower). For me NQC uses /dev/ttyS0.
I tested and my ebuild works on the new tarball without modification. Here is how to get it working: In your overlay create the dirs dev-lang/nqc/files and dev-libs/nqc/files Place nqc-3.1_p2.ebuild in dev-lang/nqc and rename it to nqc-3.1_p4.ebuild Place nqc-3.1_p2.patch in dev-lang/nqc/files and rename it to nqc-3.1_p4.ebuild Place legousbtower-0.5.4.ebuild in dev-libs/legousbtower Place 20-lego.rules dev-libs/legousbtower/files run ebuild dev-libs/legousbtower-0.5.4.ebuild digest run ebuild dev-lang/nqc-3.1_p4.ebuild digest The ebuild has a usb use flag so if it is disabled you will not have usb support. I use _p instead of -r because -r is a gentoo patch level. I may be wrong, but I would need a dev's decision.
I test this ebuild this weekend when I have access to an RCX and add it into portage next week. Thanks for your contributions so far!
(In reply to comment #12) > I test this ebuild this weekend when I have access to an RCX and add it into > portage next week. Thanks for your contributions so far! > An even newer version is available: NQC 3.1 r4
I have updated the nqc and legousbtower ebuilds and patches. I fixed some bugs I noticed and got rid of the need for the 20-lego.rules hack. NQC now uses the default dev path. There is a fix for cases where usb is not used or wanted.
Created attachment 84391 [details] nqc-3.1_p4.ebuild
Created attachment 84392 [details, diff] nqc-3.1_p4-usb.patch
Created attachment 84393 [details] legousbtower-0.5.4.ebuild
Created attachment 86410 [details, diff] Patch to make nqc work on AMD64 I made a patch to make nqc work on AMD64. I have not tried to add this patch to the ebuild (only tried it compiling manually).
Created attachment 86411 [details] Updated nqc-3.1_p4.ebuild that supports AMD64 And here is a ebuild that patches for AMD64. I tested it and nqc can comunicate with the RCX (using USB tower).
Finally, legousbtower and nqc-3.1_p4 are in portage now. Thanks for your contribution!