By the end of the day, my makeup is gone or smudged under my eyes
No matter how I apply in the morning, by the time I come home, you would never know I had any makeup on, except for the black pools of mascara that smudge without fail under my eyes.
As a high school student, I don't have chances to reapply throughout the day.
Are there ways to keep everything on longer? I have used a mineral primer, but it doesn't seem to help much.
I don't know your skin type, but if you have oily or combination skin you should try a foundation primer dedicated to controlling oiliness such as Givenchy "Mister Mat Mattifying Foundation Primer" which works great for me. As far as keeping your mascara in place, you should probably switch to a waterproof formula because it will hold up longer. You should also wear a mascara primer, such as Dior's "DiorShow Maximizer Lash Plumping Serum" which not only makes your mascara look much better but it has ingredients that help your lashes to grow longer and healthier at the same time. It's rather pricey, but it lasts for quite some time since you only need apply it once a day. You can find it on Sephora's website at: http://sephora.com/browse/product.jhtml?id=P266528
I hope this helps you.