pedrosgali 8 Posted June 6, 2014 Share Posted June 6, 2014 MOD NOTE: The information in this thread is for OC 1.2 which is now unsupported. Okay, I don't know if anyone else has found this or if I'm just a being a noob but I had real trouble loading an API that I wrote for my networking program. After a bit of head scratching I found a solution that worked and thought I'd post it here to hopefully save someone else that time. I traditionally store APIs in a folder of the same name, and when calling them I found 2 things that you should know. 1) The API should always be suffixed with .lua in the filesystem so my path would read: c/API/myAPI.lua 2) When you call the API you should drop that suffix eg: myAPI = require("c/API/myAPI") As I said, I may be just a noob but that is the one major problem I have run into so far. I hope this saves someone some time. Link to post Share on other sites
Programmdude 0 Posted June 11, 2014 Share Posted June 11, 2014 If you store your libraries in a standard location, such as /lib or /usr/lib (and probably /home/lib), they get loaded with a require("libraryName"), without the path. To do this for /lib or /usr/lib, you will need to mount your own drive as root, since the default root file system is the rom which is read only. Link to post Share on other sites
Kodos 3 Posted June 14, 2014 Share Posted June 14, 2014 If you store your libraries in a standard location, such as /lib or /usr/lib (and probably /home/lib), they get loaded with a require("libraryName"), without the path. To do this for /lib or /usr/lib, you will need to mount your own drive as root, since the default root file system is the rom which is read only. I should point out that in OC 1.3, the OS is mounted at root, but is installed on the HDD and is therefore fully editable =) Link to post Share on other sites
ingie 6 Posted September 16, 2014 Share Posted September 16, 2014 If you store your libraries in a standard location, such as /lib or /usr/lib (and probably /home/lib), they get loaded with a require("libraryName"), without the path. absolutely this. as a standard, i say it's best to use /home/lib as your storage for any custom libraries, it does - as you suggest - allow the short-form loading, and ensures that your own libraries are separate from any you may download using oppm - which get put into /usr/lib - or from an OS reinstall, which could overwrite your /lib similarly, putting all your own programs [i.e. non libraries] into /home/bin allows shell.execute(path) to find your files without qualification Link to post Share on other sites
pedrosgali 8 Posted September 16, 2014 Author Share Posted September 16, 2014 Yeah, I wrote this before openOS was installable. It was OC 1.2 or something, the /lib folder was read only. *Edit: Can a moderator delete this thread as it is out of date and may cause confusion to some. Link to post Share on other sites
ingie 6 Posted September 16, 2014 Share Posted September 16, 2014 Yeah, I wrote this before openOS was installable. It was OC 1.2 or something, the /lib folder was read only. *Edit: Can a moderator delete this thread as it is out of date and may cause confusion to some. sorry, i wasn't commenting on your post really, i was adding to the previous 2 posts it's a fair enough tip, you could edit the first post and just say pre 1.3, post 1.3 for some of it... better to have the tip, than get rid all together Link to post Share on other sites
Lizzian 46 Posted September 16, 2014 Share Posted September 16, 2014 Locking as it's for an older, unsupported version of OC. If anyone is still on 1.2 then I suggest upgrading Link to post Share on other sites