[winegcc10] Search standard libraries last

Richard Cohen richard.cohen at virgin.net
Thu Sep 18 08:59:33 CDT 2003


Dimitrie O. Paun wrote:

>>   + Remove . from default library search path
> 
> This may break Winelib apps. Did you check that MinGW does not
> search . for libs?
Yes, of course I checked. If any winelib apps break, then they are 
broken and need fixing.

>>   + -lwine needs passed in -L paths
> 
> What do you mean by this?
When using winegcc to build bits of wine itself you cannot rely on the 
installed location to even exist yet. So you must tell winegcc/winewrap 
where to find libwine.so using -L. Here is the relevant bit in the patch:

@@ -376,7 +393,8 @@
      strarray_add(wspec_args, strmake("%s.exe", base_name));
      strarray_add(wspec_args, gui_mode ? "-mgui" : "-mcui");
      strarray_add(wspec_args, wrap_o_name);
-    strarray_add(wspec_args, "-L" DLLDIR);
+    for (i = 0; i < llib_paths->size; i++)
+	strarray_add(wspec_args, llib_paths->base[i]);
      strarray_add(wspec_args, "-lkernel32");
      strarray_add(wspec_args, NULL);

@@ -407,6 +425,8 @@
      strarray_add(wlink_args, strmake("%s.exe.so", base_file));
      strarray_add(wlink_args, wspec_o_name);
      strarray_add(wlink_args, wrap_o_name);
+    for (i = 0; i < llib_paths->size; i++)
+	strarray_add(wlink_args, llib_paths->base[i]);
      strarray_add(wlink_args, NULL);

> 
>>-        strarray_add(lib_files, strmake("-l%s", library));
>>+        /* Probably one of:
>>+        * .def - which winebuild won't find
>>+        * .so  - which winebuild doesn't support
>>+        * .a   - which gcc won't find
>>+        */
>>+        fprintf(stderr, "Ignoring library %s\n", library);
> 
> We need to pass .a files to gcc, otherwise Winelib apps break.
Yes of course.
 > What do you mean "won't find"?
This comment refers to the ones that couldn't be found in the library 
search path.  Maybe I should give up putting comments in ;-}

> And we should pass .so libs to gcc as well.
Sorry - s/winebuild/gcc/ - of course at the moment winegcc doesn't 
recognize them.

--
Richard




More information about the wine-devel mailing list