@jcdammeyer:
SocketCAN was never meant to be used with older FPC like 3.0.4. Even newer 3.2.x does not have needed constants. I use it with trunk since there is a plan for SocketCAN to end up in FPC 3.4 or 4.0, whichever comes first. Lazarus version should not matter at all, but it did since I used Lazarus trunk which introduced new LPI format. I fixed that in latest can.zip so use that instead.
While constants like AF_CAN, PF_CAN and PF_RDS can be added manually, whole units like termio certainly can't, so I wouldn't bother with such old FPC. Sorry, I do not provide support for that.
When I see that you still have members.pas in your LPI file, that tells me that you did not use latest can.zip where I fixed that (fixlp is also not needed with this latest archive). Btw, not having members.pas file in directory does not stop compilation at all. It just notifies you that it could not be found, and since it was not used at all - it didn't matter anyway.
I'm glad you somehow managed to compile at all, even with old FPC.