Though I’m not new to TADS 3, I am new to trying to compile it using frobtads (on Ubuntu). So far I can’t compile anything, even though the files worked just fine under Windows. Here is the command I’ve been using:
t3make -I /usr/local/share/frobtads/tads3/lib/adv3/en_us -I /usr/local/share/frobtads/tads3/lib/adv3 -I /usr/local/share/frobtads/tads3/lib second_project.t
This is the result:
compile /usr/local/share/frobtads/tads3/lib/_main.t -> _main.t3o
/usr/local/share/frobtads/tads3/lib/_main.t(115): error 11032: undefined symbol "main"
Any thoughts on what might be going on here?
What if you leave out the include parameters altogether and just try this?
t3make -f second_project
Assuming you have a second_project.t3m file in the same directory. Also if object files are going to an obj/ subdirectory, that may have to be created beforehand.
t3make uses your makefile. You do not need to supply any “-I” arguments. Either name your makefile “Makefile.t3m”, in which case you only need to call just:
and it will find it automatically, or use the “-f” argument to point it to your makefile:
t3make -f MyMakefile.t3m
You are setting the include paths with the -I options, but you need to specifically include the system and adv3 libraries using -lib options as well. It’s easiest to put all your command line options into a .t3m file and specify it on the command line with -f. So here’s a complete example that works on my system…
name = 't3make test'
initialPlayerChar = me
startRoom: Room 'Start Room' "This is the starting room. "
+ me: Actor
$ mkdir obj
$ t3make -f hello.t3m
Note I don’t have -I lines at all; you might or might not need them depending on where it’s looking for the libraries on your system.
Hope that helps.
Haha, looks like we got answer overload on this. Too bad I was the slow one.
Thank you for the abundance of replies, everyone. I’ve successfully compiled two of my sample projects. Now on to making more substantial games!