Signature on transactions with multiple inputs
In short words: yes, if you want to redeem two previous outputs in one transaction - you should sign twice.
The steps for creating such transaction are:


create "template" of transaction for redeeming first output 
hash it. this will be digest1. 
sign the digest1 with your privkey1. this will be signature1 
create "template" of transaction for redeeming second output 
hash it. this will be digest2 (not equal to digest1 !) 
sign the digest2 with your privkey2. this will be signature2 
create the transaction itself with {pubkey1, signature1, pubkey2, signature2}


note: steps 1,2,3 can be made by Alice who has privkey1. steps 4,5,6 can be made by another person, say Bob who holds privkey2. step 7 can be made by everyone