IRC Log Viewer » #firebreath » 2013-07-16

IRC Nick Time (GMT-7) Message
cologneGuy 04:07 Still "unresolved external symbols" when building a fresh version of firebreath using Visual Studio 2012 Express. Have installed the Windows 8 Driver kit. Could it be that the MFC lib is missing. I get a warnin "!! WARNING: Could not find MFC, this might or might not be a problem." when running the prep2012 script. is this a problem?
cologneGuy 06:07 After some investigtions: there is "[email protected]" missing from wsock32.lib in the projects "UnitTests_ActivexCore" and "UnitTest_ScriptingCore", and "[email protected]" from psapi.lib in the "MyCoolPlugin" project. Where is the best place to add these references?
xiaoguo 07:07 I was successfully putting one webbrowser control into the plugin using WebView library.But how can I be able to run more webbrowsers at the same time?
Because I want the plugin to be able to loign into many different websites at the same time. I have to have many webbrowser controls.
taxilian 08:07 cologneGuy just add them using target_link_libraries. See "Using Libraries" on the firebreath website for details
cologneGuy 09:07 @taxilian After adding the missing libs to projectdef.cmake and cmakelists.txt compiling and linking went through successfully! Thank you.
taxilian 10:07 yw
cologneGuy 10:07 just one observation (don't know if this is relevant): in the Project Folder Explorer (Visual Studion 2012), Project "FireBreath_CMake" the Mac.cmake file was sorted into the Windows folder and the Win.cmake and the wix.cmake were sorted under the Mac folder.
taxilian 10:07 that's kinda weird
you should totally fix that and submit a pull request =]
cologneGuy 10:07 OK, will try and submit a request :-)
mrts 11:07 hi firebreathers! first - thanks for fb, I've looked around only for an hour or so and it looks awesome :)
a question regarding event handlers in the template as generated by fbgen - can I remove them if I don't need them?
can I even entirely omit BEGIN/END_PLUGIN_EVENT_MAP?
taxilian 11:07 mrts yes you can
hmm
actually BEGIN/END plugin event map probably provides a needed virtual function
so you might not be able to entirely omit that
I don't remember
mrts 12:07 ok, thanks - yep, verified that BEGIN/END_PLUGIN_EVENT_MAP is required
Shibs 12:07 Hey, so I'm developing on windows currently and instaleld wix which has worked without issue until today. Now, when I compile it appears that wix is giving me an error. Here is the pastebin of the output I'm getting. http://pastebin.com/pkct9ZYQ
taxilian 12:07 try deleting your build/ directory and rerunning prep
Shibs 12:07 kk, will do
dingbatfoo 13:07 what's the best way to include static library ../libfoo that I want to build with CMake as well in CMakeLists.txt?
unfortunately http://www.firebreath.org/display/documentation/Using+Libraries doesn't answer this
(I'll update the latter if we figure it out)
should I perhaps just ADD_LIBRARY(hello ../libfoo/src/foo.c) - although I'd prefer adding a CMakeList.txt to ../libfoo
?
s/hello/foo/ above
Shibs 14:07 Deleting the build directory and rerunning the prep command didn't change anything, still getting the same error.
taxilian 14:07 Shibs: looking again it looks like you're somehow running the wix install step wtihout building the plugin first
the error is saying that your plugin dll isn't there
Shibs 14:07 I noticed that too. Currently ttrying to figure out if my .cpp has an error in it somewhere which is stopping the dll from being created.
taxilian 14:07 build just that target
Shibs 14:07 Yup, it was an issue in my .cpp. Alright so that leads to another question. The reason why my .cpp was having an error was because it was calling functions in a library that wasn't being linked correctly. I guess I'm not sure of the correct way to link a custom library not in the firebreath directory.
I have a library at c:\foo\foo.lib. I tried adding "target_link_libraries(fooplugin c:\foo\foo.lib) to my projectDef.cmake but I guess that doesn't work.
taxilian 14:07 you probably need a / in cmake
but you'd be better off learning to use find_library instead of using an absolute path
Shibs 14:07 I thought find library was for "well-known" libraries. This library was created by me.
taxilian 14:07 http://www.cmake.org/cmake/help/v2.8.8/cmake.html#command:find_library
if you give it a list of paths, you can easily support several basic developer machine configurations instead of being specific to one machine
you can also have it search paths that are relative to the plugin directory (which is ${CMAKE_CURRENT_SOURCE_DIR} )
Shibs 14:07 I'll look into using that, but as far as troubleshooting concerns I'd like to make sure adding this library is all I need. So if I give it the direct path (using / not \) it should still link correctly, right?
dingbatfoo 15:07 file(GLOB ...); INCLUDE_DIRECTORIES(...); ADD_LIBRARY(...); TARGET_LINK_LIBRARIES(...) did the trick for me
Shibs, you had problems with linking a static lib?
taxilian 15:07 dingbatfoo: btw, your issue with adding another project is a cmake issue, not a firebreath one
but the correct way to do it is to use add_subdirectory(...) and put a CMakeLists.txt file in that other dir
dingbatfoo 15:07 thanks!
dingbatfoo 15:07 taxilian, I'm a bit unsure about how the CMake tree structure works... if you don't have time, let it be, but I guess it would make sense to update the wiki page with this specific case - google search gives many questions and Shibs was probably stuck with the same thing
so, assume the following basic structure:
http://pastebin.com/ErPFJ1Bv
where would I specify INCLUDE_DIRECTORIES?
and TARGET_LINK_LIBRARIES?
taxilian 15:07 dingbatfoo again, this isn't a firebreath question; it's a cmake question. you can add it to the wiki if you want, but it would be better to find existing cmake documentation explaining how that works
dingbatfoo 15:07 have googled around a bit, but haven't found anything nice so far
taxilian 15:07 http://techminded.net/blog/modular-c-projects-with-cmake.html explains some of it
dingbatfoo 15:07 yes, I fully acknowledge that this is not a fb question
taxilian 15:07 and that's why I still help people with cmake questions, because the web resources are kinda sad and hard to find
basically include_directories will apply to the current level and to anything added from the current level after the include_directories call
if I'm not mistaken
target_link_libraries only applies to the target that you specify (you add / define a target with add_library)
you can generally access variables from your current scope or parent scope
but variables defined in a child scope will not be visible to the parent scope unless explicitly passed back up with a set call that uses PARENT_SCOPE at the end
does that help?
dingbatfoo 15:07 yes, that makes sense
Shibs 16:07 what happened? o.0
taxilian 16:07 that's called a netsplikt
netsplit
it's what happens when one or more of the servers that make up the irc freenode network (in our case) lose communication with each other
for a brief time, usually