If upon attempting to upload a GPS file you see an error message telling you that your file is "Empty," this means that unfortunately your file is incompatible for upload to Strava.
This error is generated when there is no GPS data in the file you are attempting to upload. This happens primarily for two reasons.
Most often, if you receive this error when attempting to upload a .TCX file, it is because your Garmin has overwritten an older activity with a more recent one. When certain Garmin models run out of storage capacity to save new rides, they overwrite the oldest data leaving behind what is essentially the empty shell of the affected activities; their metadata. This often happens with the Garmin Forerunner 305 or similar models because they have a fairly small storage capacity. Under certain recording settings, a Forerunner 305 can exhaust its storage space after only three to four hours of recording. If you've already uploaded your activities to Garmin Connect or Garmin Training Center, you should be able to export a .TCX file from there which can then be uploaded to Strava - as long as the original activity shows your actual mapped route - not just time and distance totals.
If you receive this error when attempting to upload a .FIT file, it is likely caused by some corruption in the file itself - chances are that if you look at the file itself it will be extremely small - often just 72 bytes.
Unfortunately in both of these cases, the files are unable to be repaired to make them compatible for upload to Strava. The best options to account for the activity that is failing to upload are to either ask a riding/running partner to send you their .GPX file for you to upload, or to create a manual activity.
As always, if you have any additional questions please feel free to create a support ticket.
Thanks very much!
Strava Support Team