質問編集履歴

1

追記1

2019/09/27 02:35

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -191,3 +191,57 @@
191
191
  ライブラリをコンパイルするために使ったもの: Gnupack (gnupack-pretest_devel-2018.11.25)
192
192
 
193
193
  使いたいライブラリ: cryptopp
194
+
195
+
196
+
197
+ ---
198
+
199
+
200
+
201
+ [追記1]
202
+
203
+
204
+
205
+
206
+
207
+ 外出先からだったので、帰宅後、試してみました。
208
+
209
+
210
+
211
+ y_waiwaiさんのおっしゃるように、ar -t <ライブラリ> でチェックしてみました。
212
+
213
+ 一応、必要なものは入っていました。
214
+
215
+ しかし、それでも...ということで、「GNUPackでsample.exeにしてみたらどうだろうか」
216
+
217
+ と思い、ほぼ同じコマンドライン引数でコンパイルしたところ、
218
+
219
+ うまくいきました。(コンパイルエラー,リンケージエラー、共に無し)
220
+
221
+
222
+
223
+ libcryptopp.a を DLLにリンクして サンプルコードのmain関数を別の関数として
224
+
225
+ (適当な名前でrunEx関数とした)やって、動的リンクを行いました。
226
+
227
+
228
+
229
+ DLLはGNUPackで、実行ファイルはMinGWでやってみたところ、DLL内の関数にアクセスできず。
230
+
231
+
232
+
233
+ 実行ファイルもGNUPackでコンパイルしたところ、うまくいきました。(文字化けはするが、
234
+
235
+ それは別の問題なのでスルー)
236
+
237
+
238
+
239
+ VC++でDLLを作り、MinGWで実行ファイルを作ったときのように、マングリング? が違うのかなぁと。
240
+
241
+
242
+
243
+ どうにかGNUPackとMinGW で使えないかなぁと...
244
+
245
+
246
+
247
+ できれば、基本はMinGWでやりたいのですが...