Failed out of tree compile
I tried to build the latest version of LTP, cloned a couple of hours ago. But the build failed. I followed the instructions found in the INSTALL file for out of tree builds. But when executing the actual make command, the build fails. The command and the fail message is as follows:
$ make -f ../git/ltp-clean/Makefile top_srcdir=/homes/mlil/git/ltp-clean top_builddir=$(pwd)
...
configure: creating ./config.status
cd /homes/mlil/build && /bin/bash ./config.status Makefile depfiles
config.status: error: invalid argument: `Makefile' make[2]: *** [Makefile] Error 1
make[2]: Leaving directory `/homes/mlil/build/utils/ffsb-6.0-rc2' make[1]: *** [ffsb-6.0-rc2/ffsb] Error 2
make[1]: Leaving directory `/homes/mlil/build/utils'
make: *** [utils-all] Error 2
Am I doing something wrong here?
/Mats
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Hi!
Quoted 19 lines
I tried to build the latest version of LTP, cloned a couple of hours ago. But the build failed. I followed the instructions found in the INSTALL file for out of tree builds. But when executing the actual make command, the build fails. The command and the fail message is as follows:
$ make -f ../git/ltp-clean/Makefile top_srcdir=/homes/mlil/git/ltp-clean top_builddir=$(pwd)...
configure: creating ./config.status
cd /homes/mlil/build &&/bin/bash./config.statusMakefiledepfiles
config.status: error: invalid argument: `Makefile' make[2]: *** [Makefile] Error 1
make[2]: Leaving directory `/homes/mlil/build/utils/ffsb-6.0-rc2' make[1]: *** [ffsb-6.0-rc2/ffsb] Error 2
make[1]: Leaving directory `/homes/mlil/build/utils'
make: *** [utils-all] Error 2
Quoted 1 line
Am I doing something wrong here?
I'm getting the same error here.
The ffsb Makefile cannot cope with the fact that the configure is now called from the main configure and the files generated by it are stored in the out-of-tree build directory. It looks for them in the local directory and does something stupid. You can run configure by hand in the ffsb source directory which will workaround the problem.
From the long term perspective we need to support both out-of-tree build and cross compilation (which is the reason configure is called from the main configure script in order to pass parameters passed to the main script). The easiest solution would be to rip out the ffsb build system and use the LTP one.
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
A message that is not in the archive (sent off-list or not yet received): 20140922163759.068fcaf1@mats-desktop
Hi!
Quoted 6 lines
Ok, thanks for the workaround, I'll try that!
I haven't played much with autotools as a developer, but I recently dived into CMake. Seems like CMake scripts are easier to understand and maintain. Are there thoughts about switching to CMake, or is there some big disadvantage with CMake?
The usage of autotools in LTP is in fact quite limited. It's used only to create the configure script to check for various features, the rest uses hand written Makefile rules that are fine. The problem with ffsb in this case is that it's third party tool that came with the full autotools mess that tends to break...
In short I do not see any advantages to switing to CMake or any other build system. The only thing that needs to be done it this case is fixing build for single ffsb binary.
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
A message that is not in the archive (sent off-list or not yet received): 20140923102909.689d3b39@mats-desktop
Hi!
Quoted 13 lines
Quoted 6 lines
The ffsb
Makefilecannot cope with the fact that the configure is now called from the main configure and the files generated by it are stored in the out-of-tree build directory. It looks for them in the local directory and does something stupid. You can run configure by hand in the ffsb source directory which will workaround the problem.Quoted 6 lines
From the long term perspective we need to support both out-of-tree build and cross compilation (which is the reason configure is called from the main configure script in order to pass parameters passed to the main script). The easiest solution would be to rip out the ffsb build system and use the LTP one.
Quoted 2 lines
My attempt with building out-of-tree with your suggested work-around failed as well, now the ffsb complains about the "all" target...
Strange, it worked for me after doing out of tree configure and then configure in the ffsb directory...
Quoted 5 lines
Trying building in-tree instead and see whether that works better.
A question though: Why do you see a need for supporting builds in-tree? Can't we just concentrate on supporting out-of-tree and thereby cut down on the test matrix?
There are no technical obstacles to that but there are user expectations, 99% of software builds software in tree and being different is something that may hurt software adoption.
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
A message that is not in the archive (sent off-list or not yet received): 20140923111741.155ff484@mats-desktop
Hi!
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
My attempt with building out-of-tree with your suggested work-around failed as well, now the ffsb complains about the "all" target...
Strange, it worked for me after doing out of tree configure and then configure in the ffsb directory...
Maybe I didn't build a clean build as I thought, or did things the wrong way... Regardless, in-tree build works at least.
I've just pushed a fix that should work for all. Please test it.
There seems to be some build problems for out-of-tree build but only if you have tirpc devel installed (which triggers build for the network/rpc/rpc-tirpc testcases).
Quoted 6 lines
I guess you're right. The Linux kernel is probably one of the last bastions where in-tree builds actually works better than out-of-tree builds, which probably translate into an expectation that LTP works best with in-tree builds. It's just such a pain with all those derived files mixed with versioned ones, which I guess is why you want out-of-tree builds to work as well.
It has other uses too, you can build it for different configurations from one source tree, etc.
But given the fact that this setup is less tested it tends to break occasionally :(
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
A message that is not in the archive (sent off-list or not yet received): 20140923123704.275d7beb@mats-desktop
Hi!
Quoted 7 lines
Quoted 3 lines
But given the fact that this setup is less tested it tends to break occasionally :(
Using Gerrit and Jenkins this would be solvable, but then you need to find a host that supports this combination. Not use if gerrithub.io does this.
That sounds like an interesting idea. Maybe we just need a github jenkins plugin to have it start a build for each push and send an email to the mailing list if it failed. But I have not idea how to setup such system :(
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
A message that is not in the archive (sent off-list or not yet received): 20140923142234.746e3cf2@mats-desktop
Hi!
Quoted 10 lines
Quoted 9 lines
Quoted 3 lines
Using Gerrit and Jenkins this would be solvable, but then you need to find a host that supports this combination. Not use if gerrithub.io does this.
That sounds like an interesting idea. Maybe we just need a github jenkins plugin to have it start a build for each push and send an email to the mailing list if it failed. But I have not idea how to setup such system :(
Quoted 5 lines
The good thing with Gerrit is that it builds a commit queue, and you can say no to a commit in the commit queue. Either because the testing didn't pass, or because the review didn't pass. It also handles the case when you retry a commit, knowing that this is the new attempt for the same fix rather than a new unique commit.
I know how it works, but I do not like that it forces particular workflow. I think that doing automatic git rebuilds, while not ideal, should be enough for LTP. That way problems would be discovered in a matter of hours and fixed soon enough.
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
A message that is not in the archive (sent off-list or not yet received): [email protected]
Hi!
Quoted 5 lines
How about removing utils/ffsb-6.0-rc2 from LTP? Currently it seems that only 'ext4-new-features'
test suite use this tool, and 'utils/ffsb-6.0-rc2' maybe old, if user wants to run 'ext4-new-features', he should install ffsb himself for his linux distribution or from upstream code. Meanwhile I noticed that there were several reports about ffsb installing issues in the past, include this time, so removing this may reduce complexity :)
I think I've fixed for now (just pushed the fix). Let's see if that works or not and if it breaks again I would vote for removing it.
Signature · 13 lines
Cyril Hrubis [email protected] ------------------------------------------------------------------------------ Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list