私たちのアプリケーションでは、いくつかの動的リンクライブラリを使用しています。私たちは最近、これらのライブラリの1つのバージョンを更新しました。そのライブラリの開発者は、この新しいバージョン(Hello Worldを印刷する以上のことは何もしていない)以来、主な方法を提供しています。C++のダイナミックリンクライブラリのmainメソッドを無視する方法
問題は、独自のメインメソッドを生成するGTestとGMockを使用していることです。テストバイナリを実行すると、単に "Hello World"が取得されるので、間違ったmainメソッドが実行されています。
テストの主な方法を強制するにはどうすればよいですか?
更新日:これはGMock/GTestの問題のようです。 mainメソッドは通常生成されますが、これはすでに既存のmainメソッドが見つかったためではありません。
私はあなたの声明に完全に同意します。開発者にlibを変更させるのは恐ろしいことです。私は、その主な方法を「無視する」ための迅速かつ汚れたトリックを望んでいました。 –
@ W.Goemanオープンソースライブラリの場合は、自分でやることはできますか?それが商用ライブラリの場合は、それを行うべきです。いずれにしても、共有ライブラリがmain()を定義するのは深刻な問題です。 –
私たちはそのライブラリから開発者に連絡を取り、修正を約束しました。ライブラリの主な方法は実際には深刻な問題であるようです:) –