PDA

View Full Version : Teensy 3.0 Beta12 Software



Paul
01-19-2013, 08:34 PM
Update: Teensyduino for Teensy 3.0 has been officially released (http://www.pjrc.com/teensy/td_download.html). These beta test copies will be removed.


Here is the latest "beta12" release for Teensy 3.0


Old beta download links removed. Please use the latest version:
https://www.pjrc.com/teensy/td_download.html



Beta12 is now an installer, which requires Arduino 1.0.3 (http://arduino.cc/en/Main/Software) to install.

For use without Arduino, see the sample makefile in hardware/teensy/cores/teensy3 after installing.

For first-time use on Linux (as a non-root user), this udev rule is required.

http://www.pjrc.com/teensy/49-teensy.rules

Beta12 adds USB Types RawHID and Flight Sim Controls. The Wire library has improvements and now should fully support slave mode. AVR emulation now supports SREG, for compatibility with more Arduino libraries. Numerous harmless but annoying (if using verbose from File > Preferences) compiler warnings have been fixed. Beta12 is the first version to support Teensy 3.0 from the installer, in preparation for the end of Teensy 3.0's "beta" status....

Please report any bugs. Always try to include a sample program that reproduces the problem!

HaaTa
01-19-2013, 11:14 PM
Is there any way to extract the installer without having a GUI?
I usually do not install X on my dev machines or VMs...

The installer just complains about not finding X, regardless of the command line flags I pass.

griotspeak
01-21-2013, 11:06 PM
I cannot install this. The 'Next' button doesn't work. :(

http://cl.ly/image/3z3A381P350E

sumotoy
01-22-2013, 12:03 AM
Hi Paul,
all the included libraries listed by installer are now working on Teensy 3?

Olson.dev
01-22-2013, 02:17 AM
I'm unable to install the driver. I've never installed any previous versions. I'm on Windows 8, using the Windows 7 installer (so obviously I expect it might not work). I ran the installer as Administrator.

The message I get is (I can't copy-paste it so I had to use Character Map; it may not be byte-accurate):



Driver Installation Failed.
An error occurred while installing an INF file:
C:\Users\Josh\AppData\Local\Temp\cdc_acm_class.inf
Windows error: E000022FF = "^Dt("


Any ideas? Should this theoretically just work? Thanks!

PaulStoffregen
01-22-2013, 02:33 AM
I cannot install this. The 'Next' button doesn't work. :(


Download and extract a fresh copy of Arduino 1.0.3. It will work on a freshly extracted Arduino 1.0.3.

PaulStoffregen
01-22-2013, 02:33 AM
all the included libraries listed by installer are now working on Teensy 3?

No, not yet. Some work, many are untested, some do not work...

f1apy
01-22-2013, 07:55 AM
Download and extract a fresh copy of Arduino 1.0.3. It will work on a freshly extracted Arduino 1.0.3.

Hi ,
I have downloaded lastest version, same problem, button next is not active
Regards,
Jacques

PaulStoffregen
01-22-2013, 10:25 AM
I have downloaded lastest version, same problem, button next is not active


Is this mac, linux or windows... and which version?

PaulStoffregen
01-22-2013, 10:28 AM
I'm on Windows 8

On Windows 8, the driver install is only possible if you reboot to a mode that allows unsigned drivers to be installed.

http://www.pjrc.com/teensy/windows8.txt

You can skip the driver install. Teensy will still work, but if Tools > USB Type is set to Serial, you can't auto-reboot (you'll have to push the button), and the serial monitor will not work. However, they do work if you select a non-serial type.

f1apy
01-22-2013, 10:36 AM
Is this mac, linux or windows... and which version?

Windows 7 x64 home edition
Jacques

pololevu
01-22-2013, 05:02 PM
I like the idea of applying the teensy stuff as an update to the stock arduino distribution, however I'm not sold on using a graphical installer. I just installed it on a Mac (OSX 10.8.2) which worked ok except that I needed to be root/administrator to install it which is a pain in the butt - I ended up figuring out the path to the mounted dmg and then running the installer using sudo from the command line. Not nice.

I'd personally prefer this as a zip file which is just unpacked from the same place as the stock arduino zip file. I realise that makes the add in libraries more difficult to select but the install would be easier and essentially the same process on all platforms.

PaulStoffregen
01-22-2013, 05:47 PM
I've added a command line option for the installer onto my to-do list. It'll take a single arg for the location of Arduino and run without any GUI, printing status to stdout or stderr.

The installer does more than simply copy files, so a zip file distribution is not practical.

Avenue33
01-22-2013, 09:53 PM
I downloaded beta12 and unfortunately, embedXcode (http://forum.pjrc.com/threads/169-embedXcode-Teensy-3-0-on-Xcode) no longer works fine.

I've investigated with beta11 and it seems that going from gcc 4.4.1 = beta10 to gcc 4.7.2 = beta11 is the reason.

With the very same default blinking sketch provided by the template, compiling and uploading it work on both releases, but with different sizes:

Binary sketch size: 6060 bytes (of a 131072 byte maximum)
and the LED blinks;


Binary sketch size: 1240 bytes (of a 131072 byte maximum)
and the LED no longer blinks.

I've changed -std=c++0x (beta10) for -std=gnu++0x (beta11), to no avail.

Based on comparisons with other ARM-based boards, it seems the initialisation code is no longer included in beta11.

With beta10, the initialisation code was done by _init_Teensyduino_internal_();. How to manage it on beta11?

• Hint 1
Replacing the /Applications/Arduino.app/Contents/Resources/Java/hardware/tools/arm-none-eabi folder of beta11 by the same folder from beta10 solves the problem. The LED blinks.

• Hint 2
I have no issue when using arm-none-eabi-gcc (GCC) 4.7.1 with Enegia for the ARM-based LaunchPad Stellaris.

:confused:

Any clue? Thank you!

e30Andrew
01-23-2013, 12:09 AM
I've been away from my teensy for a while, but decided to try getting it installed today.

I am on Windows 8, so I was able to reboot in advanced mode to disable driver signing enforcement, and the USB Driver was able to install successfully, however in the next step, im not sure what to choose here... is this the 'next button doesnt work' problem ive been reading in this thread?

http://img213.imageshack.us/img213/7196/teensyinstall.jpg

edit: lol nevermind, user error as always. if anyone else made the same mistake i did, no not actually go into the arduino folder....

http://img339.imageshack.us/img339/9639/teenseygood.jpg

CheapB
01-23-2013, 01:02 AM
Windows 7 x64 home edition
Jacques

Works great on Windows 7 x64 enterprise version. I did have previous betas installed if it makes a difference.

Ros
01-24-2013, 08:20 PM
Is this mac, linux or windows... and which version?

Cannot install too... latest version of Arduino 1.0.3 and beta 12, OSX 10.8.2.
Installer didn't find in "applications" the arduino1.0.3.app, so NEXT button is dimmed


Edit: Yes it works... my fault searching wrong path, windows old habits
Windows /users/username/application or program files/etc..
Mac /Applications/

PaulStoffregen
01-25-2013, 12:14 AM
The installer actually has some code which tries to look for a copy of Arduino in a couple logical places and automatically start the navigation at that location if it sees a copy of Arduino. On mac, it looks in /Applications.

If anyone has some feedback about where it should look on Windows, I could add more checks in the code. I don't personally use Windows much, so I'm not very familiar with the conventions most people follow on Windows.

Ros
01-25-2013, 07:40 AM
In windows you can check:

(Disk unit normally C)\
(Disk unit normally C)\Program Files\
(Disk unit normally C)\Program Files (x86)\arduino-1.0.3
(Disk unit normally C)\Users\(UserName)\

In my case on the windows machine I moved the location of Arduino app to a different location, such as:

F:\_Arduino\arduino-1.0.3

ploveday
01-25-2013, 08:28 AM
The normal way to do this kind of thing is to use the SHGetFolderPath() function (from shell32.dll - #include <shlobj.h> ) to retrieve various paths, as they can change between windows versions, or installs.

You pass in a constant as to what system path you want to retrieve, such as:

CSIDL_PROGRAM_FILES ("native" apps on win32 or win64)
CSIDL_PROGRAM_FILESX86 (32 bit apps on win64)

and many others... (see http://msdn.microsoft.com/en-us/library/windows/desktop/bb762494(v=vs.85).aspx)

e.g.:

char buf[MAX_PATH] = { 0 };
SHGetFolderPath(NULL, CSIDL_COMMON_APPDATA, NULL, SHGFP_TYPE_CURRENT, buf);

- Peter

griotspeak
01-25-2013, 06:52 PM
It seems that I was unclear about what I was selecting. Once I understood that I needed to select the Arduino bundle it made more sense. I know that user experience is a fickle art maybe instruct the user to select the 'Arduino application' (instead of 'folder') or just drag the application into a window.

MichaelMeissner
01-26-2013, 11:09 PM
I've changed -std=c++0x (beta10) for -std=gnu++0x (beta11), to no avail.


Given you are going from 4.4.x to 4.7.x, I could try either

-std=c++98 (or)
-std=gnu++98 (or)
-std=c++11 (or)
-std=gnu++11


To try other versions of the C++ standard. You might check out: http://gcc.gnu.org/gcc-4.7/changes.html

PaulStoffregen
01-27-2013, 04:11 PM
maybe instruct the user to select the 'Arduino application' (instead of 'folder')

I've added this to my to-do list, for next time I work on the installer.

I'm also going to try applying the detection algorithm to all the files when the list is shown (currently it only checks when you click).... if it's not too slow to render the list, maybe some sort of visual cue about which ones are detected to be valid copies of Arduino might make using that screen easier?


or just drag the application into a window.

How would that work?

I'm hoping to officially end Teensy 3.0's "beta" period soon. There's still many important Arduino libraries to port, but once more of those are done, I'd really like to put more work into usability improvements.

mednovo
01-27-2013, 09:41 PM
Hi,
I tried to use the previous beta releases and after untar on Linux I couldn't run the IDE. I guess this is due to the platform I am using (Cubieboard running linaro linux). The same happens if I use the latest Arduino-1.0.3 from arduino.cc. I manage to get a running Arduino IDE 1.0 by using the "apt-get install Arduino" on the terminal. Then I downloaded the Teensyduino.32bit and followed the instructions: "chmod 755 teensyduino.32bit" followed by "./teensyduino.32bit" but I get the message: "bash: ./teensyduino.32bit: cannot execute binary file".

(My experience on Linux is still reduced and I don't know how much the platform I am using might difficult the task)

How could I set the Arduino IDE with Teensyduino to program my Teensy 3.0 on this platform?

Thank you,
Pedro



Here is the latest "beta12" release for Teensy 3.0

http://www.pjrc.com/teensy/beta/beta12/teensyduino.32bit
http://www.pjrc.com/teensy/beta/beta12/teensyduino.64bit
http://www.pjrc.com/teensy/beta/beta12/teensyduino.dmg
http://www.pjrc.com/teensy/beta/beta12/teensyduino.exe

Beta12 is now an installer, which requires Arduino 1.0.3 (http://arduino.cc/en/Main/Software) to install.

For use without Arduino, see the sample makefile in hardware/teensy/cores/teensy3 after installing.

For first-time use on Linux (as a non-root user), this udev rule is required.

http://www.pjrc.com/teensy/49-teensy.rules

Beta12 adds USB Types RawHID and Flight Sim Controls. The Wire library has improvements and now should fully support slave mode. AVR emulation now supports SREG, for compatibility with more Arduino libraries. Numerous harmless but annoying (if using verbose from File > Preferences) compiler warnings have been fixed. Beta12 is the first version to support Teensy 3.0 from the installer, in preparation for the end of Teensy 3.0's "beta" status....

Please report any bugs. Always try to include a sample program that reproduces the problem!

PaulStoffregen
01-27-2013, 10:50 PM
I guess this is due to the platform I am using (Cubieboard running linaro linux).

Teensyduino does not (yet) support ARM-based Linux.

mednovo
01-28-2013, 08:46 AM
Will it be available in the future? Any prevision?

Thanks


Teensyduino does not (yet) support ARM-based Linux.

Avenue33
01-28-2013, 02:27 PM
Given you are going from 4.4.x to 4.7.x, I could try either

-std=c++98 (or)
-std=gnu++98 (or)
-std=c++11 (or)
-std=gnu++11


To try other versions of the C++ standard. You might check out: http://gcc.gnu.org/gcc-4.7/changes.html

I've already tried all those parameters, to no avail.

I suspect some default parameter for size optimisation.

Here is the comparison between gcc 4.4.1 and gcc 4.7.2:


File Size in Bytesgcc 4.4.1gcc 4.7.2Difference
embeddedcomputing.elf15911435863-123251
embeddedcomputing.hex170603507-13553
IPAddress.o1702013640-3380
main.o2267621848-828
HardwareSerial2.o2411223396-716
HardwareSerial3.o2411223396-716
HardwareSerial1.o1956819280-288
yield.o22242096-128
usb_desc.o43484272-76
usb_inst.o2144421372-72
keylayouts.o23522348-4
embeddedcomputing.eep13130
eeprom.o8332836836
serial2.o9864993672
serial3.o9864993672
touch.o44004516116
usb_joystick.o22162388172
usb_keyboard.o22162388172
usb_midi.o21882360172
usb_mouse.o22122388176
usb_seremu.o21922368176
LocalLibrary.o43164556240
usb_mem.o70967356260
analog.o85208908388
usb_serial.o1110811516408
nonstd.o48565320464
serial1.o1312813756628
mk20dx128.o1100411640636
WMath.o62966964668
usb_dev.o20872222961424
WString.o73856754961640
Print.o21180235922412
Stream.o28468310002532
pins_teensy.o27560315964036
embeddedcomputing.a40271441355410840

f1apy
01-29-2013, 06:00 AM
HI all,

SOLVED ! :cool:
just expand arduino 1.0.3 in good directory : program filesx86
and enjoy
button next is active.
Regards,
Jacques

Avenue33
02-01-2013, 08:50 PM
Update on the unexpected size of the hex with latest release of Teensyduino featuring gcc 4.7.2

Standard procedure, working on both 4.4.1 and 4.7.2

../tools/arm-none-eabi/bin/arm-none-eabi-gcc -mcpu=cortex-m4 -lm -Wl,--gc-sections -Os -Tmk20dx128.ld -mthumb -o embeddedcomputing.elf analog.o eeprom.o keylayouts.o mk20dx128.o nonstd.o pins_teensy.o serial1.o serial2.o serial3.o touch.o usb_desc.o usb_dev.o usb_joystick.o usb_keyboard.o usb_mem.o usb_midi.o usb_mouse.o usb_rawhid.o usb_seremu.o usb_serial.o yield.o HardwareSerial1.o HardwareSerial2.o HardwareSerial3.o IPAddress.o Print.o Stream.o WMath.o WString.o usb_flightsim.o usb_inst.o LocalLibrary.o main.o -lc -L.

Optimised procedure, with archive and then link, works on 4.4.1...

../tools/arm-none-eabi/bin/arm-none-eabi-ar vrcs embeddedcomputing.a analog.o eeprom.o keylayouts.o mk20dx128.o nonstd.o pins_teensy.o serial1.o serial2.o serial3.o touch.o usb_desc.o usb_dev.o usb_joystick.o usb_keyboard.o usb_mem.o usb_midi.o usb_mouse.o usb_rawhid.o usb_seremu.o usb_serial.o yield.o HardwareSerial1.o HardwareSerial2.o HardwareSerial3.o IPAddress.o Print.o Stream.o WMath.o WString.o usb_flightsim.o usb_inst.o


../tools/arm-none-eabi/bin/arm-none-eabi-gcc -mcpu=cortex-m4 -lm -Wl,--gc-sections,-verbose -Os -Tmk20dx128.ld -mthumb -o embeddedcomputing.elf embeddedcomputing.a LocalLibrary.o main.o -lc -L.

...but doesn't work on 4.7.2

../tools/arm-none-eabi/bin/arm-none-eabi-ar vrcs embeddedcomputing.a analog.o eeprom.o keylayouts.o mk20dx128.o nonstd.o pins_teensy.o serial1.o serial2.o serial3.o touch.o usb_desc.o usb_dev.o usb_joystick.o usb_keyboard.o usb_mem.o usb_midi.o usb_mouse.o usb_rawhid.o usb_seremu.o usb_serial.o yield.o HardwareSerial1.o HardwareSerial2.o HardwareSerial3.o IPAddress.o Print.o Stream.o WMath.o WString.o usb_flightsim.o usb_inst.o


../tools/arm-none-eabi/bin/arm-none-eabi-gcc -mcpu=cortex-m4 -lm -Wl,--gc-sections,-verbose -Os -Tmk20dx128.ld -mthumb -o embeddedcomputing.elf embeddedcomputing.a LocalLibrary.o main.o -lc -L.

Any idea?

neep
02-01-2013, 10:54 PM
Not sure if this has been reported yet, but every so often I get a temporary directory not found, resulting in an "Error communicating with Teensy loader".


Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 24988 bytes, 19% used
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x321321].cc.arduino.Arduino.teensyduino[13303]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build5708963839413317469.tmp
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build5708963839413317469.tmp/"
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 24988 bytes, 19% used
Feb 2 00:49:32 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed

I am not removing anything... When I hit apple-U again it usually resolves by itself. I think I had this in beta 10 as well, but only lately. Could be a problem on my Mac, but have no idea what could be causing it.

ZTiK.nl
02-01-2013, 11:33 PM
Not sure if this has been reported yet, but every so often I get a temporary directory not found, resulting in an "Error communicating with Teensy loader".

I don't think it is a problem on your Mac, I'm running Win7 x64 Home Premium edition and I have noticed this too.

It happened 3 maybe 4 times so far and when it happens, it appears to be after trying to compile a sketch the first time after opening teensyduino.
Because of that I assumed the compiler wasnt 'ready' yet, after retrying I don't get this error anymore.
Just tried to trigger it, but not happening within 15 restarts...

neep
02-02-2013, 09:35 AM
Same thing happening in 1.11, and it seems to be getting worse. Sometimes I have to repeat the compile shortcut many times before it "takes"


Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26560 bytes, 20% used
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26560 bytes, 20% used
Feb 2 11:27:03 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:29:28 pauls-MacBook-Pro-2 mDNSResponder[72]: Double NAT (external NAT gateway address 192.168.1.254 is also a private RFC 1918 address)
Feb 2 11:31:42 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:42 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:42 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:42 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader error responding to comment
Feb 2 11:31:42 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:43 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:45 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:47 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:31:50 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:50 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:50 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:50 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:50 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:31:50 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:31:51 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:31:51 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:51 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:31:52 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:52 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:52 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:52 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:52 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:31:52 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:31:53 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:31:53 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:53 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:54 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build8794368102834605621.tmp/"
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:31:59 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed
Feb 2 11:32:01 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 11:32:01 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 11:32:01 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 26592 bytes, 20% used
Feb 2 11:32:01 pauls-MacBook-Pro-2 [0x0-0x33b33b].cc.arduino.Arduino.teensyduino[14676]: Teensy Loader error responding to comment
Feb 2 11:32:01 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.11 - MACOSX"
Feb 2 11:32:01 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed

Is it possible to just set a fixed tmp dir in the config somewhere?

PaulStoffregen
02-02-2013, 10:53 AM
Is it possible to just set a fixed tmp dir in the config somewhere?

Well, that may be possible, but would it solve this problem? Without truly understanding what's really going on, I simply don't know yet. My gut feeling is there's probably something else wrong that's merely manifesting as this error.

The temporary directory is created by the Arduino IDE. The compiler is run on at least 1 file using this directory for output. Lots of other stuff happens too, before the final step where communication happens between Arduino and Teensy Loader. If the directory didn't actually exist, those earlier steps would fail.

These logs are really helpful, but they're half of the story. The other half is inside Teensy Loader's "Verbose Info". Next time you see this error, could you grab both the console log and the Teensy Loader verbose info? Also, if you could open up a terminal and use "ls -la /var/folders/dir..." to look at the actual directory. That way you can confirm if the directory actually does exist. Maybe there will be some obvious problem like permissions?

But I suspect there's some other subtle problem here. I honestly don't know what it could be. This doesn't happen on my mac... or at least not in the testing I've done, but I primarily use Linux and test only occasionally on Mac and Windows. If there's anything I could do to try reproducing the problem here, please let me know.

neep
02-02-2013, 11:33 AM
BTW, when I go look to see if the dir is there, it exists:

pauls-MacBook-Pro-2$ ls -ld /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build6870987674787699379.tmp
drwxr-xr-x 74 paul staff 2516 Feb 2 13:32 /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build6870987674787699379.tmp

neep
02-02-2013, 11:35 AM
Whoops I only now see you responded, Paul.

Where can I find the Teensy Loader's Verbose Info?

Sorry, still very new to all this...

ZTiK.nl
02-02-2013, 12:30 PM
Where can I find the Teensy Loader's Verbose Info?

It should be in the Teensyduino preferences under the file menu.
'Show verbose output during: compilation and/or upload'

(I still havent been able to trigger this error under Windows)

neep
02-02-2013, 12:41 PM
So Teensyduino here is actually just the installer. On the Mac it's called just "teensy", and then it's under "Window" -> "Verbose Information".

I just fired up my beta 12 app copy again, and now the error is more different: an immediate open/close, and also more persistent. I do eventually get to upload new code again, but it takes a number of tries. This is from the loader's Verbose Information window:


14:38:34: remote connection opened
14:38:34: file changed
14:38:34: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:38:34: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:38:35: remote connection closed
14:38:47: remote connection opened
14:38:48: file changed
14:38:48: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:38:48: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:38:48: remote connection closed
14:38:54: remote connection opened
14:38:54: file changed
14:38:54: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:38:54: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:38:54: remote connection closed
14:38:59: remote connection opened
14:38:59: file changed
14:38:59: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:38:59: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:38:59: remote connection closed
14:39:02: remote connection opened
14:39:02: file changed
14:39:02: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:39:02: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:39:02: remote connection closed
14:39:05: remote connection opened
14:39:05: file changed
14:39:05: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:39:05: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:39:06: remote connection closed
14:39:08: remote connection opened
14:39:08: file changed
14:39:08: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:39:08: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:39:09: remote connection closed
14:39:10: remote connection opened
14:39:10: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:39:10: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp/"
14:39:10: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
14:39:10: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:39:10: remote cmd: "status"
14:39:11: status data sent
14:39:11: remote connection opened
14:39:11: remote connection closed
14:39:11: remote cmd: "status"
14:39:11: status data sent
14:39:11: remote cmd: "status"
14:39:11: status data sent
14:39:11: remote cmd: "status"
14:39:11: status data sent
14:39:11: remote cmd: "status"
14:39:11: status data sent
14:39:12: remote cmd: "status"
14:39:12: status data sent
14:39:12: remote cmd: "status"
14:39:12: status data sent
14:39:12: Device came online, code_size = 131072
14:39:12: Board is: Teensy 3.0 (MK20DX128)
14:39:12: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:39:12: File "staff_mpu_fastspi_sd.cpp.hex". 28740 bytes, 22% used
14:39:12: found elf file
14:39:13: Code size from .elf file = 0
14:39:13: begin operation
14:39:13: remote cmd: "status"
14:39:13: status data sent
14:39:13: remote connection closed
14:39:13: flash, block=0, bs=1024, auto=1
14:39:13: HID/macos: waiting for device
14:39:13: flash, block=1, bs=1024, auto=1
14:39:13: flash, block=2, bs=1024, auto=1
14:39:13: flash, block=3, bs=1024, auto=1
14:39:13: flash, block=4, bs=1024, auto=1
14:39:14: flash, block=5, bs=1024, auto=1
14:39:14: flash, block=6, bs=1024, auto=1
14:39:14: HID/macos: waiting for device
14:39:14: flash, block=7, bs=1024, auto=1
14:39:14: flash, block=8, bs=1024, auto=1
14:39:14: flash, block=9, bs=1024, auto=1
14:39:14: flash, block=10, bs=1024, auto=1
14:39:14: flash, block=11, bs=1024, auto=1
14:39:14: flash, block=12, bs=1024, auto=1
14:39:14: HID/macos: waiting for device
14:39:14: flash, block=13, bs=1024, auto=1
14:39:15: flash, block=14, bs=1024, auto=1
14:39:15: flash, block=15, bs=1024, auto=1
14:39:15: flash, block=16, bs=1024, auto=1
14:39:15: flash, block=17, bs=1024, auto=1
14:39:15: flash, block=18, bs=1024, auto=1
14:39:15: flash, block=19, bs=1024, auto=1
14:39:15: flash, block=20, bs=1024, auto=1
14:39:15: flash, block=21, bs=1024, auto=1
14:39:15: flash, block=22, bs=1024, auto=1
14:39:15: HID/macos: waiting for device
14:39:15: flash, block=23, bs=1024, auto=1
14:39:16: flash, block=24, bs=1024, auto=1
14:39:16: flash, block=25, bs=1024, auto=1
14:39:16: flash, block=26, bs=1024, auto=1
14:39:16: flash, block=27, bs=1024, auto=1
14:39:16: flash, block=28, bs=1024, auto=1
14:39:16: HID/macos: waiting for device
14:39:16: sending reboot
14:39:16: begin wait_until_offline
14:39:16: HID/macos: status: ok
14:39:16: offline, waited 2
14:39:17: end operation
14:39:17: redraw timer set, image 14 to show for 1200 ms
14:39:17: HID/macos: number of devices found = 0
14:39:17: HID/macos: no devices found (empty set)
14:39:18: redraw, image 9

neep
02-02-2013, 12:51 PM
And this is what I get for the earlier error, in the Verbose Information window:


14:50:10: remote connection opened
14:50:10: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
14:50:10: file changed
14:50:10: File "staff_mpu_fastspi_sd.cpp.hex". 28764 bytes, 22% used
14:50:10: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp/"
14:50:10: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
14:50:10: File "staff_mpu_fastspi_sd.cpp.hex". 28764 bytes, 22% used
14:50:11: remote connection closed

And this in my Mac's system.log:


Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection opened
Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "comment: Teensyduino 1.12-beta12 - MACOSX"
Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: file changed
Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 28764 bytes, 22% used
Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x356356].cc.arduino.Arduino.teensyduino[16091]: Teensy Loader could not find the directory /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp
Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "dir:/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp/"
Feb 2 14:50:10 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote cmd: "file:staff_mpu_fastspi_sd.cpp.hex"
Feb 2 14:50:11 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: File "staff_mpu_fastspi_sd.cpp.hex". 28764 bytes, 22% used
Feb 2 14:50:11 pauls-MacBook-Pro-2 [0x0-0x1c01c].com.pjrc.teensy[221]: remote connection closed


Not much extra in the Verbose log I have to say. Do I need to switch on anything to have it get more verbose?

neep
02-02-2013, 12:52 PM
And here is the directory at that time:



pauls-MacBook-Pro-2:Applications paul$ ls -la /var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp
total 2680
drwxr-xr-x 78 paul staff 2652 Feb 2 14:50 .
drwx------ 21 paul staff 714 Feb 2 14:50 ..
drwxr-xr-x 5 paul staff 170 Feb 2 14:37 FastSPI_LED
-rw-r--r-- 1 paul staff 1088 Feb 2 14:37 HardwareSerial1.cpp.d
-rw-r--r-- 1 paul staff 19284 Feb 2 14:37 HardwareSerial1.cpp.o
-rw-r--r-- 1 paul staff 1088 Feb 2 14:37 HardwareSerial2.cpp.d
-rw-r--r-- 1 paul staff 23400 Feb 2 14:37 HardwareSerial2.cpp.o
-rw-r--r-- 1 paul staff 1088 Feb 2 14:37 HardwareSerial3.cpp.d
-rw-r--r-- 1 paul staff 23400 Feb 2 14:37 HardwareSerial3.cpp.o
drwxr-xr-x 5 paul staff 170 Feb 2 14:37 I2Cdev
-rw-r--r-- 1 paul staff 3387 Feb 2 14:37 IPAddress.cpp.d
-rw-r--r-- 1 paul staff 13644 Feb 2 14:37 IPAddress.cpp.o
drwxr-xr-x 5 paul staff 170 Feb 2 14:37 MPU6050
-rw-r--r-- 1 paul staff 739 Feb 2 14:37 Print.cpp.d
-rw-r--r-- 1 paul staff 23596 Feb 2 14:37 Print.cpp.o
drwxr-xr-x 7 paul staff 238 Feb 2 14:37 SD
-rw-r--r-- 1 paul staff 3163 Feb 2 14:37 Stream.cpp.d
-rw-r--r-- 1 paul staff 31004 Feb 2 14:37 Stream.cpp.o
-rw-r--r-- 1 paul staff 198 Feb 2 14:37 WMath.cpp.d
-rw-r--r-- 1 paul staff 7004 Feb 2 14:37 WMath.cpp.o
-rw-r--r-- 1 paul staff 422 Feb 2 14:37 WString.cpp.d
-rw-r--r-- 1 paul staff 75548 Feb 2 14:37 WString.cpp.o
drwxr-xr-x 5 paul staff 170 Feb 2 14:37 Wire
-rw-r--r-- 1 paul staff 526 Feb 2 14:37 analog.c.d
-rw-r--r-- 1 paul staff 8944 Feb 2 14:37 analog.c.o
-rw-r--r-- 1 paul staff 305 Feb 2 14:37 eeprom.c.d
-rw-r--r-- 1 paul staff 8404 Feb 2 14:37 eeprom.c.o
-rw-r--r-- 1 paul staff 426 Feb 2 14:37 keylayouts.c.d
-rw-r--r-- 1 paul staff 2388 Feb 2 14:37 keylayouts.c.o
-rw-r--r-- 1 paul staff 3159 Feb 2 14:37 main.cpp.d
-rw-r--r-- 1 paul staff 3892 Feb 2 14:37 main.cpp.o
-rw-r--r-- 1 paul staff 311 Feb 2 14:37 mk20dx128.c.d
-rw-r--r-- 1 paul staff 11676 Feb 2 14:37 mk20dx128.c.o
-rw-r--r-- 1 paul staff 309 Feb 2 14:37 nonstd.c.d
-rw-r--r-- 1 paul staff 5372 Feb 2 14:37 nonstd.c.o
-rw-r--r-- 1 paul staff 650 Feb 2 14:37 pins_teensy.c.d
-rw-r--r-- 1 paul staff 31628 Feb 2 14:37 pins_teensy.c.o
-rw-r--r-- 1 paul staff 642 Feb 2 14:37 serial1.c.d
-rw-r--r-- 1 paul staff 13796 Feb 2 14:37 serial1.c.o
-rw-r--r-- 1 paul staff 642 Feb 2 14:37 serial2.c.d
-rw-r--r-- 1 paul staff 9976 Feb 2 14:37 serial2.c.o
-rw-r--r-- 1 paul staff 642 Feb 2 14:37 serial3.c.d
-rw-r--r-- 1 paul staff 9976 Feb 2 14:37 serial3.c.o
-rw-r--r-- 1 paul staff 5444 Feb 2 14:50 staff.h
-rw-r--r-- 1 paul staff 23448 Feb 2 14:50 staff_mpu_fastspi_sd.cpp
-rw-r--r-- 1 paul staff 4545 Feb 2 14:50 staff_mpu_fastspi_sd.cpp.d
-rw-r--r-- 1 paul staff 13 Feb 2 14:50 staff_mpu_fastspi_sd.cpp.eep
-rwxr-xr-x 1 paul staff 527111 Feb 2 14:50 staff_mpu_fastspi_sd.cpp.elf
-rw-r--r-- 1 paul staff 80928 Feb 2 14:50 staff_mpu_fastspi_sd.cpp.hex
-rw-r--r-- 1 paul staff 107656 Feb 2 14:50 staff_mpu_fastspi_sd.cpp.o
-rw-r--r-- 1 paul staff 524 Feb 2 14:37 touch.c.d
-rw-r--r-- 1 paul staff 4548 Feb 2 14:37 touch.c.o
-rw-r--r-- 1 paul staff 308 Feb 2 14:37 usb_desc.c.d
-rw-r--r-- 1 paul staff 4308 Feb 2 14:37 usb_desc.c.o
-rw-r--r-- 1 paul staff 629 Feb 2 14:37 usb_dev.c.d
-rw-r--r-- 1 paul staff 22400 Feb 2 14:37 usb_dev.c.o
-rw-r--r-- 1 paul staff 979 Feb 2 14:37 usb_flightsim.cpp.d
-rw-r--r-- 1 paul staff 2452 Feb 2 14:37 usb_flightsim.cpp.o
-rw-r--r-- 1 paul staff 3167 Feb 2 14:37 usb_inst.cpp.d
-rw-r--r-- 1 paul staff 21376 Feb 2 14:37 usb_inst.cpp.o
-rw-r--r-- 1 paul staff 1086 Feb 2 14:37 usb_joystick.c.d
-rw-r--r-- 1 paul staff 2428 Feb 2 14:37 usb_joystick.c.o
-rw-r--r-- 1 paul staff 1194 Feb 2 14:37 usb_keyboard.c.d
-rw-r--r-- 1 paul staff 2428 Feb 2 14:37 usb_keyboard.c.o
-rw-r--r-- 1 paul staff 629 Feb 2 14:37 usb_mem.c.d
-rw-r--r-- 1 paul staff 7396 Feb 2 14:37 usb_mem.c.o
-rw-r--r-- 1 paul staff 1074 Feb 2 14:37 usb_midi.c.d
-rw-r--r-- 1 paul staff 2400 Feb 2 14:37 usb_midi.c.o
-rw-r--r-- 1 paul staff 1077 Feb 2 14:37 usb_mouse.c.d
-rw-r--r-- 1 paul staff 2424 Feb 2 14:37 usb_mouse.c.o
-rw-r--r-- 1 paul staff 966 Feb 2 14:37 usb_rawhid.c.d
-rw-r--r-- 1 paul staff 2428 Feb 2 14:37 usb_rawhid.c.o
-rw-r--r-- 1 paul staff 966 Feb 2 14:37 usb_seremu.c.d
-rw-r--r-- 1 paul staff 2408 Feb 2 14:37 usb_seremu.c.o
-rw-r--r-- 1 paul staff 966 Feb 2 14:37 usb_serial.c.d
-rw-r--r-- 1 paul staff 11552 Feb 2 14:37 usb_serial.c.o
-rw-r--r-- 1 paul staff 194 Feb 2 14:37 yield.c.d
-rw-r--r-- 1 paul staff 2120 Feb 2 14:37 yield.c.o
pauls-MacBook-Pro-2:Applications paul$

neep
02-02-2013, 01:00 PM
I killed the teensyloader and also some runaway processes:



pauls-MacBook-Pro-2:Arduino paul$ ps auxww|grep teensy
paul 16525 67.1 0.0 599640 364 ?? R 2:53PM 2:42.06 /Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/teensy_post_compile -board=teensy3 -tools=/Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/ -path=/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp -file=staff_mpu_fastspi_sd.cpp
paul 16578 65.7 0.0 599640 368 ?? R 2:53PM 2:45.48 /Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/teensy_post_compile -board=teensy3 -tools=/Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/ -path=/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp -file=staff_mpu_fastspi_sd.cpp
paul 16579 65.4 0.0 599640 364 ?? R 2:53PM 2:54.94 /Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/teensy_post_compile -board=teensy3 -tools=/Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/ -path=/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp -file=staff_mpu_fastspi_sd.cpp
paul 16586 65.3 0.0 599640 368 ?? R 2:53PM 2:47.73 /Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/teensy_post_compile -board=teensy3 -tools=/Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/ -path=/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp -file=staff_mpu_fastspi_sd.cpp
paul 16555 64.9 0.0 599640 364 ?? R 2:53PM 2:54.25 /Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/teensy_post_compile -board=teensy3 -tools=/Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/ -path=/var/folders/p6/n8_p41b974qf8dzx7r_8nb2m0000gn/T/build7158115397884075246.tmp -file=staff_mpu_fastspi_sd.cpp
paul 16743 0.1 0.4 742800 15092 ?? S 2:54PM 0:02.43 /Applications/Arduino-1.0.3-teensy-1.12/Contents/Resources/Java/hardware/tools/teensy.app/Contents/MacOS/teensy -psn_0_3548002


And now the problem isn't occurring. I also notice loading is going much faster again. Let's see how this goes...

Avenue33
02-03-2013, 01:23 PM
No one interested in helping me on the arm-none-eabi-ar archive issue (http://forum.pjrc.com/threads/16349-Teensy-3-0-Beta12-Software?p=21407&viewfull=1#post21407)?

PaulStoffregen
02-04-2013, 05:58 PM
No one interested in helping me on the arm-none-eabi-ar archive issue (http://forum.pjrc.com/threads/16349-Teensy-3-0-Beta12-Software?p=21407&viewfull=1#post21407)?

Making better use of ar and reducing unnecessary memory use are on my TO-DO list. I worked on this a few months ago and ran into trouble, so as a temporary "fix", I just set the build process to link every .o file. That seems to be working very well, even though it causes the final file size to be a little larger than it probably would be otherwise.

Also an issue I want to investigate it how to get the linker to *not* link interrupt routines if no other functions from that same file are used. The AVR compiler does this somehow. I just haven't investigated deeply how it accomplishes that feat.

To be realistic, at the moment I have several much more urgent tasks on that TO-DO list. Improving the website documentation for Teensy 3.0, particularly the getting started and documenting new functions really needs to be done. I also have a WS2811 LED library that's been in beta testing for 1 week... I plan to release that within the next few days. I also have about 10 Arduino libraries to port. They're all easy, and most I already have hardware, but each will take 1-2 days to test and document. Less urgent, but becoming a problem, is how PJRC handles postal mail shipping (many manual steps). I really need to spend a little time making that process more automated.

But this linker stuff is on my TO-DO list. I won't forget about it. But as long as simply linking all the .o files works and the only downside is a little more memory usage, investigating this is really a lower priority than all other other things.

MichaelMeissner
02-04-2013, 07:13 PM
Making better use of ar and reducing unnecessary memory use are on my TO-DO list. I worked on this a few months ago and ran into trouble, so as a temporary "fix", I just set the build process to link every .o file. That seems to be working very well, even though it causes the final file size to be a little larger than it probably would be otherwise.

Also an issue I want to investigate it how to get the linker to *not* link interrupt routines if no other functions from that same file are used. The AVR compiler does this somehow. I just haven't investigated deeply how it accomplishes that feat.


If you compile all modules with -ffunction-sections (and optionally -fdata-sections), and then pass -Wl,--gc-sections to the linker (or just --gc-sections if you are calling the linker directly). It should enable the linker to garbage collect sections that aren't used. You may need to investigate weak references to avoid pulling in some things. Also, creating a linker map with cross references can be handy (-Wl,-Map=foo.out,--cref)

Now, doing a grep of an arduino 1.0.3 tree with teensy 1.12 overlaid, I see the following files set -ffunction-sections and/or --gc-sections:



./src/Compiler.java: "-Wl,--gc-sections"+optRelax,
./src/Compiler.java: "-ffunction-sections", // place each function in its own section
./src/Compiler.java: "-ffunction-sections", // place each function in its own section
./libraries/OneWire/OneWire.h:// and -ffunction-sections when compiling, and Wl,--gc-sections
./hardware/teensy/cores/teensy3/Makefile:LDFLAGS = -Os -Wl,--gc-sections -mcpu=cortex-m4 -mthumb -Tmk20dx128.ld
./hardware/arduino/bootloaders/optiboot/Makefile:override LDFLAGS = $(LDSECTIONS) -Wl,--relax -Wl,--gc-sections -nostartfiles -nostdlib
./hardware/arduino/bootloaders/caterina/Makefile:CFLAGS += -ffunction-sections
./hardware/arduino/bootloaders/caterina/Makefile:LDFLAGS += -Wl,--gc-sections
./hardware/arduino/bootloaders/caterina-LilyPadUSB/Makefile:CFLAGS += -ffunction-sections
./hardware/arduino/bootloaders/caterina-LilyPadUSB/Makefile:LDFLAGS += -Wl,--gc-sections
./hardware/arduino/firmwares/atmegaxxu2/arduino-usbserial/makefile:CFLAGS += -ffunction-sections
./hardware/arduino/firmwares/atmegaxxu2/arduino-usbserial/makefile:LDFLAGS += -Wl,--gc-sections
./hardware/arduino/firmwares/atmegaxxu2/arduino-usbdfu/makefile:CFLAGS += -ffunction-sections
./hardware/arduino/firmwares/atmegaxxu2/arduino-usbdfu/makefile:LDFLAGS += -Wl,--gc-sections
./hardware/arduino/firmwares/wifishield/wifi_dnld/.cproject:<option id="gnu.c.link.option.ldflags.1902664612" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/>
./hardware/arduino/firmwares/wifishield/wifi_dnld/.cproject:<option id="gnu.c.link.option.ldflags.183335601" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/>
./hardware/arduino/firmwares/wifishield/wifiHD/.cproject:<option id="gnu.c.compiler.option.optimization.flags.136231706 8" name="Other optimization flags" superClass="gnu.c.compiler.option.optimization.flags" value="-fdata-sections -ffunction-sections" valueType="string"/>
./hardware/arduino/firmwares/wifishield/wifiHD/.cproject:<option id="gnu.c.link.option.ldflags.569230699" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/>
./hardware/arduino/firmwares/wifishield/wifiHD/.cproject:<option id="gnu.c.link.option.ldflags.870159720" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections -Wl,-e,_trampoline -T../src/SOFTWARE_FRAMEWORK/UTILS/LINKER_SCRIPTS/AT32UC3A/1256/GCC/link_uc3a1256.lds" valueType="string"/>
./hardware/arduino/firmwares/wifishield/wifiHD/.cproject:<option id="gnu.c.link.option.ldflags.87118628" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections" valueType="string"/>
./hardware/arduino/firmwares/wifishield/wifiHD/.cproject:<option id="gnu.c.link.option.ldflags.1722356522" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-Wl,--gc-sections" valueType="string"/>
./hardware/tools/arm-none-eabi/lib/gcc/arm-none-eabi/4.7.2/plugin/include/tree.h: compiler via -ffunction-sections. */
./hardware/tools/arm-none-eabi/lib/gcc/arm-none-eabi/4.7.2/plugin/include/options.h: OPT_ffunction_cse = 586, /* -ffunction-cse */
./hardware/tools/arm-none-eabi/lib/gcc/arm-none-eabi/4.7.2/plugin/include/options.h: OPT_ffunction_sections = 587, /* -ffunction-sections */


(the last three are just artifacts from the compiler switch support for plugins). :cool: (hmm, we really need the :nerd: smilies that some other forums have)



To be realistic, at the moment I have several much more urgent tasks on that TO-DO list. Improving the website documentation for Teensy 3.0, particularly the getting started and documenting new functions really needs to be done. I also have a WS2811 LED library that's been in beta testing for 1 week... I plan to release that within the next few days. I also have about 10 Arduino libraries to port. They're all easy, and most I already have hardware, but each will take 1-2 days to test and document. Less urgent, but becoming a problem, is how PJRC handles postal mail shipping (many manual steps). I really need to spend a little time making that process more automated.

But this linker stuff is on my TO-DO list. I won't forget about it. But as long as simply linking all the .o files works and the only downside is a little more memory usage, investigating this is really a lower priority than all other other things.
Yes, it would be nice to have better documentation, including things in teensy that aren't in Arduino (or things that don't yet work).

Jp3141
02-05-2013, 08:29 PM
Update on the unexpected size of the hex with latest release of Teensyduino featuring gcc 4.7.2

Standard procedure, working on both 4.4.1 and 4.7.2

../tools/arm-none-eabi/bin/arm-none-eabi-gcc -mcpu=cortex-m4 -lm -Wl,--gc-sections -Os -Tmk20dx128.ld -mthumb -o embeddedcomputing.elf analog.o eeprom.o keylayouts.o mk20dx128.o nonstd.o pins_teensy.o serial1.o serial2.o serial3.o touch.o usb_desc.o usb_dev.o usb_joystick.o usb_keyboard.o usb_mem.o usb_midi.o usb_mouse.o usb_rawhid.o usb_seremu.o usb_serial.o yield.o HardwareSerial1.o HardwareSerial2.o HardwareSerial3.o IPAddress.o Print.o Stream.o WMath.o WString.o usb_flightsim.o usb_inst.o LocalLibrary.o main.o -lc -L.

Optimised procedure, with archive and then link, works on 4.4.1...

../tools/arm-none-eabi/bin/arm-none-eabi-ar vrcs embeddedcomputing.a analog.o eeprom.o keylayouts.o mk20dx128.o nonstd.o pins_teensy.o serial1.o serial2.o serial3.o touch.o usb_desc.o usb_dev.o usb_joystick.o usb_keyboard.o usb_mem.o usb_midi.o usb_mouse.o usb_rawhid.o usb_seremu.o usb_serial.o yield.o HardwareSerial1.o HardwareSerial2.o HardwareSerial3.o IPAddress.o Print.o Stream.o WMath.o WString.o usb_flightsim.o usb_inst.o


../tools/arm-none-eabi/bin/arm-none-eabi-gcc -mcpu=cortex-m4 -lm -Wl,--gc-sections,-verbose -Os -Tmk20dx128.ld -mthumb -o embeddedcomputing.elf embeddedcomputing.a LocalLibrary.o main.o -lc -L.

...but doesn't work on 4.7.2

../tools/arm-none-eabi/bin/arm-none-eabi-ar vrcs embeddedcomputing.a analog.o eeprom.o keylayouts.o mk20dx128.o nonstd.o pins_teensy.o serial1.o serial2.o serial3.o touch.o usb_desc.o usb_dev.o usb_joystick.o usb_keyboard.o usb_mem.o usb_midi.o usb_mouse.o usb_rawhid.o usb_seremu.o usb_serial.o yield.o HardwareSerial1.o HardwareSerial2.o HardwareSerial3.o IPAddress.o Print.o Stream.o WMath.o WString.o usb_flightsim.o usb_inst.o


../tools/arm-none-eabi/bin/arm-none-eabi-gcc -mcpu=cortex-m4 -lm -Wl,--gc-sections,-verbose -Os -Tmk20dx128.ld -mthumb -o embeddedcomputing.elf embeddedcomputing.a LocalLibrary.o main.o -lc -L.

Any idea?

While I don't understand all these command options, sometimes (when I want gcc to generate assembler output), I want to change them. The way I do this now is cut the (verbose mode) command from the Arduino window. Is there a better way ? Is the command line in a script somewhere where I can modify it ?

MichaelMeissner
02-05-2013, 09:29 PM
At a guess, it is in src/Compiler.java, but I haven't done a deep dive on what the Arduino IDE does behind your back.

ploveday
02-05-2013, 09:58 PM
> Also an issue I want to investigate it how to get the linker to *not*
> link interrupt routines if no other functions from that same file are used.
> The AVR compiler does this somehow. I just haven't investigated deeply
> how it accomplishes that feat.

Wouldn't the normal way to do this kind of thing be to put the standard libs/modules into a static library, rather than a bunch of object files?

I suppose the arduino environment may not be capable of that.

PaulStoffregen
02-05-2013, 10:54 PM
I suppose the arduino environment may not be capable of that.

Well, all Arduino does is run the toolchain (*), so the question is whether the toolchain can do it, and if Arduino is running the tools with the proper command and options.

I tried this briefly, twice, but when it didn't work I just reverted to linking all the .o files. Eventually I'll investigate, but it's a lower priority than several other issues. If you or anyone else investigates in detail, or submits a patch, I'll be happy to accept it, or at least read carefully whatever you find when I do work on this. But please understand I have to prioritize tasks, and currently several other things are much more urgent.

MichaelMeissner
02-05-2013, 11:10 PM
> Also an issue I want to investigate it how to get the linker to *not*
> link interrupt routines if no other functions from that same file are used.
> The AVR compiler does this somehow. I just haven't investigated deeply
> how it accomplishes that feat.

Wouldn't the normal way to do this kind of thing be to put the standard libs/modules into a static library, rather than a bunch of object files?

I suppose the arduino environment may not be capable of that.
Not necessarily. If you have two modules a.o and b.o, that are part in separate libraries liba.a and libb.a. If a.o references a function in b.o and b.o reference a function in a.o, you will get a linker error, if you just use -la -lb on your command line, and the user's program references the function in b.o but not a.o. There is a linker option to group libraries together (bracketing the -l options with --start-group and --end-group).

The real problem is the libraries are not written with each function in a separate file. Then libraries have a chance of working. Otherwise, without using the compiler option -ffunctions-section and the linker option --gc-sections, every function compiled in a file is brought in from a library if there is any reference to any of its symbols.

Avenue33
02-06-2013, 09:57 PM
Making better use of ar and reducing unnecessary memory use are on my TO-DO list. I worked on this a few months ago and ran into trouble, so as a temporary "fix", I just set the build process to link every .o file. That seems to be working very well, even though it causes the final file size to be a little larger than it probably would be otherwise.

Paul, thank you for your answer. I fully understand the priority!

This bug came with gcc release 4.7.2 but I've found a turn-around so Teensy 3.0 owners can enjoy embedXcode!

Good luck with the documentation!

hpyle
02-06-2013, 10:20 PM
For what it's worth, you can *add* compiler options, by editing hardware/teensy/boards.txt & restarting Arduino, to add (e.g.)
teensy3.build.cppoption2=-O3
teensy3.build.cppoption3=-ffunctions-section
etc, (just increment the number for each option you add). For example I've found it useful to dump an assembler output instead of actually compiling, by
teensy3.build.cppoption<N>=-S

MichaelMeissner
02-06-2013, 11:52 PM
For what it's worth, you can *add* compiler options, by editing hardware/teensy/boards.txt & restarting Arduino, to add (e.g.)
teensy3.build.cppoption2=-O3
teensy3.build.cppoption3=-ffunctions-section
etc, (just increment the number for each option you add). For example I've found it useful to dump an assembler output instead of actually compiling, by
teensy3.build.cppoption<N>=-S
If the Arduino IDE leaves the objects around, you can use the -save-temps option that leaves a .ii and .s file in the directory the build was done, but it still does the compile (.ii is the output after the pre-processing has been done, .s is the assembler input file). Using teensy 3.0 build 1.12 you can use -save-temps=obj (-save-temps has a problem if you have the same name being compiled in different subdirectories, while -save-temps=obj leaves the .ii/.s files in the output directory, and not the current directory, but honestly most of the Arduino/teensy stuff I've seen does not do things like use -j<n> with several builds each with different -o <dir>/<file>.o at the same time). Unfortunately, if you are using the AVR compiler, you probably can't use -save-temps=obj, at least until the Arduino folk decide to upgrade compilers.

jimmayhugh
02-09-2013, 03:53 PM
I get these, I guess they're warnings, when I compile my program for the Teensy3.0



/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/ld: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/ld)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy)


When I compile the same code for the Mega2560, it compiles with no warnings. Also these warnings popped up when I moved to arduino1.0.3/teensy-beta-12, I did not have these warnings with arduino1.0.1/teensy-beta-11. Any ideas?

MichaelMeissner
02-09-2013, 07:09 PM
The error message is that it is looking for libz, which is a library for doing compression and decompression, which is not supplied by the arm toolchain, so it decided to pick up /lib/libz.so.1 from your host OS. Unless you are running on a native arm system, it is extremely unlikely that using the host library will work. You need to find and remove any -lz from the link line.

jimmayhugh
02-10-2013, 02:02 AM
I'm using the arduino IDE, what link line are you referring to?

MichaelMeissner
02-10-2013, 03:47 AM
I was referring to the error messages in your last post, where you were using the Arm toolchain and were getting errors on: /lib/libz.so.1: no version information available. I was telling you what the error meant (that the linker was trying to read host libraries for something intended for an Arm microprocessor).

jimmayhugh
02-10-2013, 01:22 PM
I'm referring to your last sentence:

"You need to find and remove any -lz from the link line"

Again, I don't know what "link line" you are referring to. I use the Arduino IDE to compile and upload, not the command line.

PaulStoffregen
02-10-2013, 01:39 PM
Which Linux distro are you using, and which version?

jimmayhugh
02-10-2013, 01:42 PM
Centos 6.3 both 32 and 64 bit.

jimmayhugh
02-14-2013, 02:24 PM
OK, I went back and compiled my program with the arduino-1.0.3/beta-10 IDE combination, and it compiled with no errors or warnings, with a sketch size of 18,452 and estimated memory use of 7,460.

With arduino-1.03/beta11 the warnings show up:


/home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/ld: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/ld)
/home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy)
/home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3-beta11/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy)
Opening Teensy Loader...
Binary sketch size: 18,460 bytes (of a 131,072 byte maximum)
Estimated memory use: 7,648 bytes (of a 16,384 byte maximum)


The same program under arduino-1.0.3/beta-12 IDE:


/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/as)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/ld: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/bin/ld)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy)
/home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy: /lib/libz.so.1: no version information available (required by /home/teensypi/arduino-1.0.3/hardware/tools/arm-none-eabi/bin/arm-none-eabi-objcopy)
Opening Teensy Loader...
Binary sketch size: 18,452 bytes (of a 131,072 byte maximum)
Estimated memory use: 7,460 bytes (of a 16,384 byte maximum)
.

Both sets of warnings have been considerably shortened to meet character length requirements for the post.

All versions "appear" to be running properly.

Any other thoughts / suggestions?

PaulStoffregen
02-14-2013, 08:04 PM
Could you try the same thing on a different linux distro, like a recent Ubuntu?

My best guess is there's some minor and harmless issue with Centos's libz.so not being quite as expected. Maybe?

jimmayhugh
02-15-2013, 05:15 AM
Centos 6.3 is the only distro I have running at this time, I'll try setting up an old laptop later this week.

jimmayhugh
03-14-2013, 10:50 PM
Just an FYI, I updated to CentOS 6.4, which included an updated zlib, and the errors (warnings?) no longer appear. It also works fine with 1.0.4/Teensyduino1.13