トップ 開発環境 g++

g++のsharedオプションを使用して、共有ライブラリ(.so)を作成する方法

このページでは、g++のsharedオプションを使用して、共有ライブラリ(.so)を作成する方法について紹介しています。

目次

この記事の目次です。

1. g++とは
2. 共有ライブラリ(.so)の作成方法
3. 共有ライブラリ(.so)の使用方法

更新履歴

1. g++とは

g++とは、GNUのGCCに含まれるC++のコンパイラのことをいいます。 UnixやWindowsでg++コマンドとして利用できます。

オプションの例

g++のオプションの例です。

Lオプション

g++のLオブションを使用して、ライブラリのディレクトリパスを指定方法について見ていきます。

-Lオプションの使用方法

-Lオプションを使用することで、リンクするライブラリ(-lオプション)を探すディレクトリができます。

g++ <c++ソースファイル> -I<ヘッダファイルディレクトリパス> -L<ライブラリディレクトリパス> -l<ライブラリ> -o <出力ファイル名>

※-Lの後にスペースは入れません。

2. 共有ライブラリ(.so)の作成方法

まず、ライブラリとして、以下のコードのhello.cppというソースを用意します。

#include <iostream>
using namespace std;

void hello(){
  cout << "Hello World !!" << endl;
}

共有ライブラリを作るには以下のコマンドでコンパイルします。

$ g++ -shared hello.cpp -o libhello.so

これで共有ライブラリlibhello.soができ上がります。

3. 共有ライブラリ(.so)の使用方法

テストのために、以下のように呼び出すプログラム(test.cpp)を作成してみます。

#include <iostream>
using namespace std;

int main(void) {
  hello();
  return 0;
}

これをコンパイルするには
g++ test.cpp -o test ./libhello.so
とします。

実行すると
$ ./test
Hello World !!
と表示されます。もしlibhello.soを削除したり移動したりするとエラーが出ます。

更新履歴

この記事の更新履歴です。

戻る

スポンサーリンク

サイト内のページ

言語
C・C++ /HTML /Java /JavaScript /PHP /シェルスクリプト

開発環境
Ant /Eclipse /gcc /gdb /Git /g++ /JDK /JUnit /ZAP

技術・仕様
Ajax /CORBA /Java EE(旧称J2EE) /JNI

ライブラリ/Framework/CMS
bootstrap /jQuery /Lucene /MyBatis /Spring /Struts /WordPress

Web API
Google Maps

ITインフラOSとミドルウェア
Linux /Windows /シェル
Apache/Tomcat /MySQL /Redis /Solr

ITインフラサーバー
Web公開サーバー

ITインフラネットワーク
プログラミング /構築

ITインフラセキュリティ
公開サーバーのセキュリティ

PC製品
ZOTAC

SI
ホームページの作り方 /小さな会社のISMS

その他
IT用語 /ITスキル体系

スポンサーリンク

関連サイト内検索ツール

zealseedsおよび関連サイト内のページが検索できます。

IPアドレス確認ツール

あなたのグローバルIPアドレスは以下です。

18.206.238.176

HTMLの表示色確認ツール

パスワード生成ツール

文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。

ここに生成されます。

スポンサーリンク