User forums > Help

Put all the .o files in an "obj" subdirectory

<< < (2/2)

jank9201:

--- Quote from: cacb on July 11, 2012, 02:16:55 pm ---
--- Quote from: jank9201 on July 11, 2012, 12:29:38 pm ---Can anybody help me?

--- End quote ---

See attached.

Select the project in C::B, riight-click and choose "Properties ...", then select the Build targets tab. You can then set the output dir for each target to anything you want. I chose to collect all under a "hidden" .cmp folder, and then have subdirs for different compilers (some of my projects can use different compilers on the same platform).

it is also possible to edit the .cbp project file for things like this (if you know what you are doing), here is a snippet

--- Code: ---                 ...
<Build>
<Target title="MSVC_Debug">
<Option output=".cmp\msvc\bin\Debug\cf_xmld" prefix_auto="1" extension_auto="1" />
<Option object_output=".cmp\msvc\obj\Debug\" />
<Option type="3" />
<Option compiler="msvc" />
--- End code ---
                               ...

--- End quote ---
Thanks a lot, maybe I didn't make it clear, my intention is:
for example, in a project, there are more than one files in two directory, the directory  structure of the project  is as follows:

    
                                |-----main( directory which has files main.cpp and main.h)
                                |
                                |
 project( directory)---  |-----test( directory which has files test.h and test.cpp)
                                |
                                |
                                |------debug( directory for object files)

 Currently, after being built, the object files in debug directory are as follows,

                            |-----test (directroy which has object file- test.o)
                            |
debug (directroy)--- |
                            |--main.o
                                                                                


                                                                                                     |---main.o
my intention is all object files in debug directory like this( debug directory--|                   ) and no subdirectory test is created.
                                                                                                     |---test.o,


BTW, I currently built a large dll with a lot of cpp files and it seems
the paremters of g++ contains too many characters and the linker stopped the creation of the DLL.

so if anybody can give me another solution to solve the problem, I'm also appreciated.

Jenna:
Check "Settings -> Compiler [and debugger] -> Global compiler options -> the_compiler_you_use -> Other settings -> Advanced options -> Others -> Use Flat objects".

But this setting is used for all projects, that use this compiler.
... and for larger projects, which might have source files with the same name in different subdirectories, the setting breaks your build.
Be warned !

jank9201:

--- Quote from: jens on July 12, 2012, 12:31:25 pm ---Check "Settings -> Compiler [and debugger] -> Global compiler options -> the_compiler_you_use -> Other settings -> Advanced options -> Others -> Use Flat objects".

But this setting is used for all projects, that use this compiler.
... and for larger projects, which might have source files with the same name in different subdirectories, the setting breaks your build.
Be warned !

--- End quote ---

Great!!!, I test it with a small project, it does works, thanks a lot!
I'll test it with my dll project, again, thank you very much!!!

Navigation

[0] Message Index

[*] Previous page

Go to full version