@Alt0216 For this to work you will need to copy the content of the empty_world.launch file from gazebo_ros package since you will need to ajust your extra args for the gazebo client.
In the line 51, the gazebo client is launched and it is where you need to add your extra arguments, so you can:
<group if="$(arg gui)">
<node name="gazebo_gui" pkg="gazebo_ros" type="gzclient" respawn="false" output="$(arg output)" args="$(arg command_arg3) --verbose -g yourlib.so"
required="$(arg gui_required)"/>
</group>
Furthermore, take into account that you can change this to be more clean like adding and extra launch param like:
<arg name="extra_gazebo_client_args" default="--verbose -g yourlib.so"/>
<group if="$(arg gui)">
<node name="gazebo_gui" pkg="gazebo_ros" type="gzclient" respawn="false" output="$(arg output)" args="$(arg command_arg3) $(arg extra_gazebo_client_args)" required="$(arg gui_required)"/>
</group>
But this is depending on what you want. Also remember to add properly your plugin path to GAZEBO_PLUGIN_PATH
enviroment variable.
Hope this solve your problem.
Regards.