Original bug ID: 4124 Reporter: necula Status: closed (set by @xavierleroy on 2006-10-17T12:38:41Z) Resolution: fixed Priority: normal Severity: minor Version: 3.09.3 Category: ~DO NOT USE (was: OCaml general) Monitored by: necula
Bug description
(This is for cygwin with ocaml 3.09.3)
I have a large project that I am trying to wrap inside a package. I use the
"-for-pack LibKettle" option on all compilations and "-pack -o libKettle.cmx" when linking.
If I look at the tmp/camlpackagexxx.s file I see lines like this:
_camlLibKettle__entry:
L100:
movl $_camlConfig_base, _camlLibKettle
movl $_camlPretty, _camlLibKettle + 4
movl $_camlInthash, _camlLibKettle + 8
movl $_camlIntmap, _camlLibKettle + 12
The labels should be _camlLibKettle__Config_base, _camlLibKettle__Pretty, etc (should be translated in the new scope). This eventually results in undefined symbols when linking.
I have tried to reproduce the problem in a simple project, and I could not (I get the correct behavior there).
Any ideas how to make progress debugging this?
Thanks,
George Necula.
The text was updated successfully, but these errors were encountered:
You should check that enough -I options are given (when -pack'ing) so that all the .cmx files can be found (even if you give their full path on the command line).
This requirement should really be fixed or documented!
Improved handling of .cmx during ocamlopt -pack. The .cmx given on the command line are now honored even if they cannot be found in the search path.
Also, added better link-time reporting of other corner cases involving -for-pack
and missing .cmx files.
Original bug ID: 4124
Reporter: necula
Status: closed (set by @xavierleroy on 2006-10-17T12:38:41Z)
Resolution: fixed
Priority: normal
Severity: minor
Version: 3.09.3
Category: ~DO NOT USE (was: OCaml general)
Monitored by: necula
Bug description
(This is for cygwin with ocaml 3.09.3)
I have a large project that I am trying to wrap inside a package. I use the
"-for-pack LibKettle" option on all compilations and "-pack -o libKettle.cmx" when linking.
If I look at the tmp/camlpackagexxx.s file I see lines like this:
_camlLibKettle__entry:
L100:
movl $_camlConfig_base, _camlLibKettle
movl $_camlPretty, _camlLibKettle + 4
movl $_camlInthash, _camlLibKettle + 8
movl $_camlIntmap, _camlLibKettle + 12
The labels should be _camlLibKettle__Config_base, _camlLibKettle__Pretty, etc (should be translated in the new scope). This eventually results in undefined symbols when linking.
I have tried to reproduce the problem in a simple project, and I could not (I get the correct behavior there).
Any ideas how to make progress debugging this?
Thanks,
George Necula.
The text was updated successfully, but these errors were encountered: