Ok, that gets me past the missing collection exception. Now it crashes inside libracket3m_8bh1a8.dll. Here's the callstack... this is the stock 5.3 distribution so a stock map file may help:
> libracket3m_8bh1a8.dll!0f548983() [Frames below may be incorrect and/or missing, no symbols loaded for libracket3m_8bh1a8.dll] libracket3m_8bh1a8.dll!0f549ad1() libracket3m_8bh1a8.dll!0f6c5a34() libracket3m_8bh1a8.dll!0f6c5ab0() libracket3m_8bh1a8.dll!0f751e2f() libracket3m_8bh1a8.dll!0f751f6a() libracket3m_8bh1a8.dll!0f6e5675() libracket3m_8bh1a8.dll!0f5bea15() libracket3m_8bh1a8.dll!0f6bfd95() libracket3m_8bh1a8.dll!0f5c0028() libracket3m_8bh1a8.dll!0f5c03fe() libracket3m_8bh1a8.dll!0f5cb32e() libracket3m_8bh1a8.dll!0f66095f() libracket3m_8bh1a8.dll!0f660c4e() libracket3m_8bh1a8.dll!0f66cd83() libracket3m_8bh1a8.dll!0f66d146() libracket3m_8bh1a8.dll!0f642566() libracket3m_8bh1a8.dll!0f657a93() libracket3m_8bh1a8.dll!0f666cc9() libracket3m_8bh1a8.dll!0f66a2a7() libracket3m_8bh1a8.dll!0f66affd() libracket3m_8bh1a8.dll!0f66b0d2() dctest.exe!run(Scheme_Env * e, int argc, char * * argv) Line 48 + 0xc bytes C++ libracket3m_8bh1a8.dll!0f55baa3() libracket3m_8bh1a8.dll!0f55d9a5() libracket3m_8bh1a8.dll!0f55da46() libracket3m_8bh1a8.dll!0f55df3a() dctest.exe!main(int argc, char * * argv) Line 58 + 0x17 bytes C++ dctest.exe!__tmainCRTStartup() Line 555 + 0x19 bytes C dctest.exe!mainCRTStartup() Line 371 C kernel32.dll!75b1339a() ntdll.dll!771d9ef2() ntdll.dll!771d9ec5() I changed the code to register all Scheme_Objects in the collector, but same result... Thanks, Dan On Sat, Sep 22, 2012 at 6:04 AM, Matthew Flatt <[email protected]> wrote: > The "%RACKETDIR%" in scheme_make_path() isn't going to get expanded as > an environment variable. You'll have to use getenv() directly: > > a[0] = scheme_make_path(getenv("RACKETDIR")); > a[1] = scheme_make_path("collects"); > Scheme_Object * collectPath = scheme_build_path(2, a); > Scheme_Object * collectPathList = scheme_build_list(1, &collectPath); > scheme_init_collection_paths(e, collectPathList); > > > At Fri, 21 Sep 2012 16:42:23 -0700, Dan Liebgold wrote: > > I'm having a terrible time trying to embed Racket 5.3 in a C++ program. > > Please take a look at https://gist.github.com/3764529 and tell me where > I'm > > going wrong. > > > > This is the output I get: > > > > racket/base: standard-module-name-resolver: collection not found > > collection: "racket" > > in collection directories: > > C:\Users\danl\AppData\Roaming\Racket\5.3\collects > > in: racket/base > > context...: > > standard-module-name-resolver > > > > > > RACKETDIR environment variable is defined properly (and not to the path > in > > the output.) Any ideas? > > > > -- > > Dan Liebgold [[email protected]] > > _________________________ > > Racket Developers list: > > http://lists.racket-lang.org/dev > -- Dan Liebgold [[email protected]]
_________________________ Racket Developers list: http://lists.racket-lang.org/dev

