Does anyone working in Linux and Windows boxes have some tips for working with TADS in Linux?
A little background:
I’m currently in the process of transferring most of my WIPs (including the non-IF ones) into a Lubuntu 11.04 box to help me learn more about managing/supporting Linux machines.
I already have tadsc and frobtads set up. When I compile a sample source code file called “test.t” inside Lubuntu, I get the “TADS-334: invalid property value” error message. I have no problems compiling this file inside Windows.
Checking the file using the cat command, in Cream/gVim, and in Geany for any extra unnecessary characters produces nothing. The line it points to is just a list:
locationList = [startroom secondroom]
;I’m guessing this has something to do with file encodings, since Cream shows the file is in UTF-8. Anything else I should look out for?
Thanks. I’ll try to post that in a bit, but just to let you know, the Frobtads version of the T2 compiler in Windows works fine on the test.t file without modifying anything in the file.
EDIT: Please see the attached file “test2.t” - it’s the most minimal version I can reduce it to. Please pay no attention to most of the “story text” there - I whipped it up to test something I was working on before. test.zip (683 Bytes)
Ah, you got hit by TADS2’s inconsistent class name capitalization. It’s not “fixedItem”, it’s “fixeditem”. With a lowercase “i”.
It’s weird that it works in Windows though. Maybe case sensitivity is disabled there? To disable it, you can use the “-case” option of tadsc: “-case+” enables case sensitivity, “-case-” disables it.
Btw, what do you mean with “Frobtads version of the T2 compiler in Windows”? Did you build frobtads for Windows?
It’s a 64-bit issue after all. As a workaround, you should build it as a 32-bit app. You can do this by adding “-m32” to CFLAGS, CXXFLAGS and LDFLAGS. Like:
I’m getting the following when I do that:isxek@ubuntu:~/Downloads/frobtads-1.0$ ./configure CFLAGS="-m32 -O2" CXXFLAGS="-m32 -O2 -fno-strict-aliasing" LDFLAGS="-m32"
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for g++... g++
checking whether the C++ compiler works... no
configure: error: in `/home/arnel/Downloads/frobtads-1.0':
configure: error: C++ compiler cannot create executables
See `config.log' for more details
Looking at the config log, I got a bunch of:/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/libstdc++.so when searching for -lstdc++
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/libstdc++.a when searching for -lstdc++
/usr/bin/ld: cannot find -lstdc++
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/../../../libm.so when searching for -lm
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/../../../libm.a when searching for -lm
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/libm.so when searching for -lm
<snip>I’ve attached the complete config.log file if you need to take a look, but it looks like my safest bet would be to set up an x86 Lubuntu Linux VM somewhere and compile both Frobtads and the T2 compiler there.
I’ll post back if I get any errors. Thanks for the help. config.log (9.75 KB)
You’re probably missing the 32-bit compatibility packages. There are packages like “ia32-libs” and “g+±multilib” that need to be installed for the -m32 option to work (name might depend on the Ubuntu version).