全てに対して「YES」です。
ですが、使用する言語や製品によって事情は様々ですから全てにおいて同じというわけではありません。
例えばですが、Micsosoft Visual C/C++はWindows用のコンパイラですが、ターゲットCPUはx86とx64くらいしかありません。ですがCPUには他にも種類があり拡張命令として x87, IA-32, P6, MMX, SSE, SSE2, 64, SSE3, SSSE3, SSE4, SSE5, AVXなど様々なものがあります。
これらのCPU拡張命令をネイティブに使用したい場合は別途Intelから出ているコンパイラが必要となります。
※かなり以前に調べた内容ですので現在どうなっているかはわかりません。
WindowsでしたらライブラリはDLLで提供されていたりします。
Visual StudioでそのDLLを使用するためには参照設定を行う必要があります。
開発環境によってはそれらの設定を正しく行っていればソースコードを入力しているときにリアルタイムで文法チェックまで行ってくれます。
無料版のVisual Studio Expressでそうですからね。
USB接続で使用するQRコードスキャナやwebカメラなども開発者向けに提供されているDLLがあったりします。
格納フォルダは物によって様々ですが、Visual Studioの場合はコンパイルして生成された実行ファイルと同じフォルダにDLLがコピーされる場合もあります。
別のケースとしては使用機器の専用ドライバーのインストールが別途必要でレジストリ経由の参照ライブラリというものもあったはずです。
Perlという元では専用のライブラリサイト(CPAN)がありコマンドを実行するとダウンロードとインストールが始まったりします。あとは、ソースコードの先頭で宣言すれば使用できます。
DLLのようなバイナリで提供されているライブラリの場合はC/C++のソースコートも配布されていたりします。
PerlのライブラリにはExcelわ操作するライブラリやTCP/IPのソケット通信をサポートするライブラリもあります。RDBMSのOracleやSQLServer、Microsoft Accessのデータベースも使えたりします。
お礼
結構むずかしいですね勉強もっとがんばります